![Very Happy :D](./images/smilies/icon_biggrin.gif)
above 1MB in real mode
-
- Member
- Posts: 97
- Joined: Thu Mar 15, 2007 2:27 pm
above 1MB in real mode
In real mode, what is stopping you from getting up to 1MB? Is it the 16 bit addressing? Could you work around this by mergin registers or something?
![Very Happy :D](./images/smilies/icon_biggrin.gif)
![Very Happy :D](./images/smilies/icon_biggrin.gif)
The real mode addressing works like this: multiply the segment regiser by 0x10 and then add the offset.
The size of the segment registers is 16 bits and the offset size is also 16 bits.You can address 0xFFFF different segments the maximum offset is 0xFFFF.The address of the last byte is calculated as follows: (0xFFFF*0x10+0xFFFF)=0x10FFEF.This is 65519 bytes above the first MB.
The size of the segment registers is 16 bits and the offset size is also 16 bits.You can address 0xFFFF different segments the maximum offset is 0xFFFF.The address of the last byte is calculated as follows: (0xFFFF*0x10+0xFFFF)=0x10FFEF.This is 65519 bytes above the first MB.