【发布时间】:2015-05-12 04:08:18
【问题描述】:
“地址由 16 位组成,页面大小为 8KB。因此,页表由保存在快速寄存器中的八个条目组成。” 我们如何获得页表中的总条目为 8?
根据计算应该是1。
页表中的总条目= ((2^16)/(2^3*2^10*2^3))=1。 (第一个 2^3 用于 8KB 中的 8,第二个用于字节到位的转换,2^10 用于 8KB 中的“千”。)
谢谢
【问题讨论】:
“地址由 16 位组成,页面大小为 8KB。因此,页表由保存在快速寄存器中的八个条目组成。” 我们如何获得页表中的总条目为 8?
根据计算应该是1。
页表中的总条目= ((2^16)/(2^3*2^10*2^3))=1。 (第一个 2^3 用于 8KB 中的 8,第二个用于字节到位的转换,2^10 用于 8KB 中的“千”。)
谢谢
【问题讨论】:
内存是字节可寻址的,因此您不需要除以 2^3 来进行字节到位的转换。
进一步解释,16 位地址意味着处理器将生成长度为 16 位的内存地址,这些地址将用于寻址开始(或结束)存在的字节或半字或字 - 取决于机)在那个 16 位的值。
现在,页面大小是页面的总大小(以位为单位),在这种情况下为 2^16 位。但由于内存是字节可寻址的,因此一页中的处理器地址数将为 2^16/2^3,即 2^13 个地址。
因此页表条目数为 2^16/2^13 = 8。
【讨论】: