2.3 x86 Memory Management
1 In protected mode, which register references the descriptor for the stack segment?(在保护模式下,哪个寄存器引用堆栈段的描述符?)
答 :SS register.
2 In real-address mode, convert the following hexadecimal segment-offset address to a linear address: 0950:0100.(在实地址模式下,将以下十六进制分段偏移地址转换为线性地址:0950:0100。)
答 :09600h.(09500h + 0100h = 09600h)
3 What is the range of addressable memory in protected mode?
答 :4 GB ( 0 to FFFFFFFFh).
4 What is the range of addressable memory in real-address mode?
答 :1 MB (0 to FFFFFh).
5 In MASM’s flat segmentation model, how many bits hold the address of an instruction or variable?(在MASM的平面分段模型中,使用多少数据位保存一条指令的地址或变量?)
答 :32 bits.
6 Can you think of a reason why MS-DOS was not designed to support protectedmode programming?(您能想到为什么MS-DOS不被设计为支持保护模式编程的原因吗?)
答 :This is an open-ended question, of course. It is a fact that MS-DOS first had to run on the 8086/8088 processors, which only supported Real-address mode. When later processors came out which supported Protected mode, my guess is that Microsoft wanted MS-DOS to continue to run on the older processors. Otherwise, customers with older computers would refuse to upgrade to new versions of MS-DOS.(当然,这是一个开放式问题。 事实上,MS-DOS首先必须在8086/8088处理器上运行,该处理器仅支持实地址模式。 当后来出现支持保护模式的处理器时,我猜测微软希望MS-DOS继续在较旧的处理器上运行。 否则,使用旧计算机的客户将拒绝升级到新版本的MS-DOS。)
7 In real-address mode, demonstrate two segment-offset addresses that point to the same linear address.(在实地址模式下,演示两个指向相同线性地址的段偏移地址。)
答 :For example, the address 8000:0250 points to the linear address 80250h. The address 8020:0050 also points to the same linear address 80250h.