lkp1115 发表于 2019-7-16 18:01:31

关于8086地址加法器的疑问

萌新求助。8086地址由段地址左移4位与偏移地址合成 , 可以寻址1MB 。那么如果把段地址左移8位 再相加 是不是也是可行的? 还可以寻址更多的内存。有点疑惑为什么只是左移了4位.

迷雾少年 发表于 2019-7-16 19:07:34

因为8086只有20条地址线,左移4位已经够了

yjcoke 发表于 2019-7-16 19:16:30

你只要知道加法器是怎么工作的即可,至于他为什么要这样工作,那就不是我们纠结的了。
物理地址是段地址乘以16加偏移地址,那么段地址乘以16自然是二进制左移四位,除非他们加法器把寻址功能改了,比如物理地址是段地址乘以32加偏移地址,那么就是你说的二进制左移八位了。

lkp1115 发表于 2019-7-16 19:42:46

迷雾少年 发表于 2019-7-16 19:07
因为8086只有20条地址线,左移4位已经够了

谢谢 ,理解了。内部16条地址线 ,外部20条 因此只需要左移4位 ,左移更多是没有意义的。

lkp1115 发表于 2019-7-16 19:43:49

yjcoke 发表于 2019-7-16 19:16
你只要知道加法器是怎么工作的即可,至于他为什么要这样工作,那就不是我们纠结的了。
物理地址是段地址乘 ...

好的,谢谢您。
页: [1]
查看完整版本: 关于8086地址加法器的疑问