Memory 手动将虚拟地址转换为物理地址

Memory 手动将虚拟地址转换为物理地址,memory,architecture,operating-system,virtual-memory,Memory,Architecture,Operating System,Virtual Memory,我在查找某些虚拟地址的相应物理地址时遇到一些问题。我试图遵循一个类似于我在网上看到的过程,但遇到了一些问题。以下是一些信息: 该体系结构具有32位虚拟地址、1KB页面和20位物理地址。每个页表都是一维数组,因此索引是虚拟页码,内容是相应的物理页码。(并非所有值都将被使用) 索引->值 0 一, 2->2 三, 四, 5->3 六, 7->9 八, 9->1 十, 十一, 12->0 这是一个虚拟地址(二进制),我正试图将其转换为物理地址(十进制) 11101010 我遇到的问题是,我的解释是,因

我在查找某些虚拟地址的相应物理地址时遇到一些问题。我试图遵循一个类似于我在网上看到的过程,但遇到了一些问题。以下是一些信息:

该体系结构具有32位虚拟地址、1KB页面和20位物理地址。每个页表都是一维数组,因此索引是虚拟页码,内容是相应的物理页码。(并非所有值都将被使用)

索引->值

0

一,

2->2

三,

四,

5->3

六,

7->9

八,

9->1

十,

十一,

12->0

这是一个虚拟地址(二进制),我正试图将其转换为物理地址(十进制)

11101010


我遇到的问题是,我的解释是,因为虚拟地址是32位的,所以我应该在左边附加大量的前导零,但这似乎没有任何前导,因为我们没有为0指定索引。也许我只是不明白这个过程,但我花了好几个小时试图弄清楚该怎么处理这个案子,但似乎弄不明白。如果您无法键入完整的解决方案,我至少希望您能提示一下我做错了什么。

Page table entry=地址/页面大小; 页面偏移量=地址修改页面大小

您需要知道页面表的结构(未提供信息),才能在条目中找到物理页面框架。乘以页面大小