Memory 逻辑地址&;页码

Memory 逻辑地址&;页码,memory,memory-management,operating-system,Memory,Memory Management,Operating System,我刚开始学习内存管理,对页面、帧、虚拟内存等有了概念,但我不理解将逻辑地址更改为相应页码的过程 下面是一个场景- 页面大小=100字/8000位 进程生成此逻辑地址: 101110417073309185245246434458364 流程占用两个页面帧,并且当流程开始执行时,其所有页面帧都不是驻留的(在页面帧中) 确定每个逻辑地址对应的页码,并将其填入一行12列的表中 我知道答案是: 01 01 03 12 4 4 3 但有人能解释一下这是怎么做到的吗?有一个等式或什么吗?我记得看到一些有表格

我刚开始学习内存管理,对页面、帧、虚拟内存等有了概念,但我不理解将逻辑地址更改为相应页码的过程

下面是一个场景- 页面大小=100字/8000位

进程生成此逻辑地址: 101110417073309185245246434458364

流程占用两个页面帧,并且当流程开始执行时,其所有页面帧都不是驻留的(在页面帧中)

确定每个逻辑地址对应的页码,并将其填入一行12列的表中

我知道答案是: 01 01 03 12 4 4 3


但有人能解释一下这是怎么做到的吗?有一个等式或什么吗?我记得看到一些有表格的东西,把它们改成二进制,然后像第1页的00100一样放在页面表格中,但我不是很确定。如果能用图形表示这一点,我们将不胜感激。谢谢

这不就是
逻辑地址/100
其中
/
表示“整数除法”吗?如果您确保每个逻辑地址至少有3位数字,然后只删除最后2位,您应该会看到模式:
010 011 104 170 073 309 185 245 246 434 458 364
-->
0xx 0xx 1xx 1xx 1xx 0xx 1xx 2xx 4xx 3xx
0 1 0 3 1 2 4 3
。你说每页100字。非常感谢,我不知道这么简单。两个问题,在把0放在首位并进行除法后,会有小数,为什么我们要把2个数字放在分数后面,最后是100的单词大小如何相关,并使答案从0xx->0和1xx->1更改?非常简单,只需要完全理解fwiw,通常我们使用十六进制(或二进制)值来表示地址。页面大小始终为2的幂。