能力值:
(RANK:210 )
|
-
-
2 楼
看的是8086汇编语言程序设计?呵呵
要是不明白建议楼主看看<微机原理>类似的书籍.
8086和8088中,物理地址是20位的,是1M的存储空间,但是寄存器是16位,只能寻址64KB,所以才会用段.物理地址=段的基址+相对于段基址的偏移地址
这样来算,2的20次方个存储空间,最多只能分成2的16次方个段.所以规定每个 段的基址必须要是16字节的倍数,所以任何段的基址后四位总是0.注意上面我加亮的字,段的基址,并不是段寄存器中保存的数字,既然后四位都是0,这四个0还用得着保存吗,段寄存器并不保存段基址的后面四位.这样以来段基址实际上就等于段寄存器*16,也就是把段寄存器中的数字左移四位.
386的实模式下,寻址方式和上面一样的.知道段基址和偏移地址,能得出物理地址,但是从物理地址不能直接推出段基址和偏移地址.
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
谢谢 终于搞明白了
|
|
|