【发布时间】:2011-05-11 09:00:05
【问题描述】:
在 8086 架构中,内存空间大小为 1 MiB,并被划分为每个最多 64 KiB 的逻辑段。
即它有 20 个地址行,因此使用以下方法:
即数据段寄存器左移4位,然后加到偏移寄存器中
我的问题是:虽然所有寄存器都只有 16 位,但我们如何进行移位操作
【问题讨论】:
-
不是一个真正的编程问题——这只是 CPU 架构(大约 1980 年代中期)——“移位”由 CPU 硬件处理——你不必担心。
-
嗯,这是一道编程题,但前提是错误的。
-
@Paul:你说得对,但我研究了 CPU 硬件,没有看到任何 20 位寄存器
-
你不需要 20 位寄存器 - 内存接口逻辑处理 20 位物理地址的生成
-
我可以断定这是内存接口问题
标签: x86-16 memory-address microprocessors