段超越前缀 ,MOV DI,ES:[SI+3] ,这个物理地址是如何计算的?

学习 时间:2026-04-07 20:06:54 阅读:1458
段超越前缀 ,MOV DI,ES:[SI+3] ,这个物理地址是如何计算的?DI等于多少?

最佳回答

冷傲的柚子

会撒娇的萝莉

2026-04-07 20:06:54

物理地址=ES*10H+SI+3DI是附加段ES中偏移量为SI+3单元的内容,具体的值只能是假设的 再问: 还 是没明白 ,为什么要ES*10H ? 再答: 8086的物理地址是20位的,而段寄存器只有16位,在合成物理地址时需要先将段寄存器中16位的段地址左移四位得到一个20位的段地址,也就是在段地址低位补四个0,相当于乘了16进制的10,这就是ES*10H 。再问: SI是一个存储器指针,位移量为3,目的操作数显式指定的段寄存器为ES。 所以目的操作数的物理地址PA = ES * 16d(10h)+ SI + 3,DI的值为该地址单元中存放的字类型数据。 有个人告诉我是这样的??? 再答: 这个描述很正确

最新回答共有2条回答

  • 细腻的石头
    回复
    2026-04-07 20:06:54

    物理地址=ES*10H+SI+3DI是附加段ES中偏移量为SI+3单元的内容,具体的值只能是假设的 再问: 还 是没明白 ,为什么要ES*10H ? 再答: 8086的物理地址是20位的,而段寄存器只有16位,在合成物理地址时需要先将段寄存器中16位的段地址左移四位得到一个20位的段地址,也就是在段地址低位补四个0,相当于乘了16进制的10,这就是ES*10H 。再问: SI是一个存储器指针,位移量为3,目的操作数显式指定的段寄存器为ES。 所以目的操作数的物理地址PA = ES * 16d(10h)+ SI + 3,DI的值为该地址单元中存放的字类型数据。 有个人告诉我是这样的??? 再答: 这个描述很正确

上一篇 中国登山队员登珠穆朗玛峰成功给我们哪些启示

下一篇 已知{1+cosx-siny+sinxsiny=0,1-cosx-cosy+sinxcosy=0,求sinx的值.