It is a 64KB memory between 1024KB and 1088KB, called the high memory area, its address is 100000H～1OFFEFH or above, and the CPU uses Segment:OFFSET in real address mode (Segment address: offset), the maximum logical memory space that can be addressed is (FFFF: FFFF), that is, 10FFEFH, which has exceeded the upper limit of 1MB that can be addressed by 20 lines of 8088 CPU, so There are 24 address lines of the 286CPU. As long as the "logic gate" of the A20 address signal line is opened, the memory in the 64KB range can be used. This memory is in real address mode. Generally speaking, HMA is 64KB, in fact, it refers to the vast space above 1MB to 4GB that our CPU can address. They are all called high-end memory area (HMA). How to open the memory above the A20 address line (A20Gate, logic gate) , As long as the extended memory driver is used in DOS5.0 or above, the operation is as follows:
Set the driver in CONFIG:
◎286 Above computer and 1MB or above RAM.
◎DOS 5.0 or above.
◎Device=c:\DOS\HIMEM.SYS (extended memory XMS driver).
◎Open the A20 address line, A20Gate (logic gate)=1, you can address the space above 1MB of memory.
◎A20 address line is not open, A20 Gate=O, can not address the space above 1MB memory.
◎The A20 Gate signal is generated by the software-driven keyboard BIOS 8042 or chipset.