浅析如何把逻辑地址转换为物理地址

   日期:2020-07-01     浏览:181    评论:0    
核心提示:本文只讲逻辑地址转换为物理地址的计算方法_求程序逻辑地址 0001 0000 0101 1010b、3840、1f01h、8292的物理地址

摘要:微信搜索【三桥君】
本文只讲逻辑地址转换为物理地址的计算方法

一、依据

逻辑地址=页号+页内地址
物理地址=块号+页内地址

【解析】
逻辑地址转换为物理地址其实就是页号转换为块号。

他们之间的页内地址是一样的。

然后,我们要搞清楚页号、块号、页内地址怎么求的,然后通过公式带进去就可以求出逻辑/物理地址。

页内地址的表达方式是2进制的,所以不管给的逻辑地址、物理地址都先转换为2进制。具体页内地址取几位,通过题目给的去求,如“每页为1KB”。

二、例题

1、十六进制

设某用户的编程空间共32个页面,每页为1KB,内存容量为16KB。假定用户程序的页表如下所示。请计算逻辑地址0A5CH所对应的物理地址。(要写出计算过程)

【分析】
逻辑地址为0A5CH;
页内地址的位数通过“每页为1KB”转换成2的n次幂去求解,n次幂=位数。
页号的位数通过逻辑地址的位数减去页内地址的位数,即16-页内地址的位数。

【解答】
因为 逻辑地址为0A5CH,
所以 逻辑地址转换为2进制为 0000 1010 0101 1100;
因为 1KB=2^10B,
所以 页内地址的位数=10;
所以 页内地址为10 0101 1100;即页号为0000 10。
因为 页号转换为10进制为2,
所以 对应的块号为4;
所以 块号的2进制为000100。
因此,物理地址= 000100 10 0101 1100,即0001 0010 0101 1100。
转换为16进制为125CH。

【说明】
其实这题逻辑地址转换为物理地址的做法就是:
把逻辑地址的页号部分:0000 1010 0101 1100
转换成对应物理地址的块号:0001 0010 0101 1100
这样就完成了转换。

2、非十六进制

在采用分页存储管理的系统中,某作业J的逻辑地址空间为4页(每页2KB),且已知该作业的页面映像表(即页表)如下:试借助地址变换图求出有效逻辑地址4865所对应的物理地址。(要写出计算过程)


【分析】
页号P=逻辑地址/页面大小字节=取整数
页内地址W=逻辑地址%页面大小字节=取余数

【解答】
页号P=4865/2K=4865/2048(转为10进制)=2,
页内地址W=4865 % 2048=769;
则通过查找页表,可知第2页放于第6块中,
因此逻辑地址4865所对应的物理地址为:
6*2048+769=13057

文章整理不易,有帮助请点赞关注支持,谢谢!微信搜索【三桥君 】,回复【关注】有我准备的一份资源大礼包,后续持续更新。

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服