逻辑地址转换成物理地址的计算题

假设页长为1KB(1024字节),逻辑地址为2500,请利用页表把逻辑地址转换成物理地址。

页表可以实现从页号到物理块号的地址映射。通过逻辑地址的页号来寻找页表,从而获得物理块号;在将页内地址直接送入物理地址寄存器的块内地址字段中。将块号和块内地址拼接成实际访问地址,即可得到物理地址。

物理地址的计算公式为:物理地址=块的大小(即页的大小L)* 块号f+页内地址d

代入本题解答:

页号=int(2500/1024)=2;页内位移=2500mod1024=452;假设页号2对应块号1,则物理地址为:

物理地址=1024*1+452=1476

扩展资料:

逻辑地址(LogicalAddress)即通过电脑程序产生的与段相关的偏移地址部分,也叫做相对地址;

物理地址,即计算机中每一个字节单元的唯一存储地址,也叫做实际地址或绝对地址。

利用所给的逻辑地址首先找到在页表中的那一页,即页号,再者利用所给的逻辑地址计算出在页表的页偏移量,从而利用页表所对应的物理块计算出块号,再利用块号的基础上计算出所给的偏移量。(一般只针对于动态重定位的变化使用)

参考资料:物理地址-百度百科 逻辑地址-百度百科

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-09-13
题目及解答如下:
某虚拟存储器的用户编程空间共32个页面,每页为1KB,内存为16KB。假定某时刻一用户页表中已调入内存的页面的页号和物理块号的对照表如下:

页号 物理块号
0 3
1 7
2 11
3 8

则逻辑地址0A5C(H)所对应的物理地址是什么?要求:写出主要计算过程。
解题过程:
首先要知道页式存储管理的逻辑地址分为两部分:页号和页内地址。物理地址分为两部分:
关系为:逻辑地址= 页号+页内地址
物理地址= 块号+页内地址;
分析题:已知:用户编程空间共32个页面,2ˆ5 = 32 得知页号部分占5位,由“每页为1KB”,1K=210,可知内页地址占10位。
由“内存为16KB”,2^4=16得知块号占4位。
逻辑地址0A5C(H)所对应的二进制表示形式是:0000101001011100,后十位1001011100是页内地址,
00010为为页号,页号化为十进制是2,在对照表中找到2对应的物理块号是11,11转换二进制是1011,即可求出物理地址为10111001011100,化成十六进制为2E5C;
即则逻辑地址0A5C(H)所对应的物理地址是2E5C;本回答被网友采纳
第2个回答  2013-08-01
  页表的作用是实现从页号到物理块号的地址映射。以逻辑地址的页号检索页表,得到该页的物理块号;同时将页内地址d直接送入物理地址寄存器的块内地址字段中。这样物理块号和块内地址拼接成了实际访问内存的地址,从而完成了从逻辑地址到物理地址的转换。
  所以物理地址的计算公式为:
  物理地址=块的大小(即页的大小L)′块号f+页内地址d
  解本题中,为了描述方便,设页号为p,页内位移为d,则:
p=int(2500/1024)=2 d=2500mod1024=452 假设页号2 对应 块号 1
那么物理地址=1024*1+452=1476
第3个回答  2019-12-22
这样的计算题是非常复杂的,没有专业的知识是不会知道怎么计算的,你需要请教你的专业老师