
逻辑地址到物理地址的转换
发布日期:2021-05-14 16:16:59
浏览次数:23
分类:精选文章
本文共 821 字,大约阅读时间需要 2 分钟。
逻辑地址到物理地址转换:以一个实际案例为例
本文将从逻辑地址到物理地址的转换过程谈起,结合实际案例详细阐述转换机制和计算方法。
在计算机系统中,逻辑地址与物理地址的转换过程涉及多个层次的映射关系。以下将通过具体案例,详细解释逻辑地址0A5C(H)对应的物理地址是多少,以及整个转换过程的关键计算步骤。
1. 分析逻辑地址结构
前期调研表明,当前虚拟存储系统的编程空间划分方案如下:
- 用户编程空间:共有32个页面。
- 页面大小:每页为1KB。
- 内存空间:总规模为16KB。
从这两个指标可以直接推导出页号和内页地址的长度:
- 页号位数:32=2^5,故页号部分占用5位。
- 页内地址位数:1KB=2^10,因此内页地址占10位。
将逻辑地址0A5C(H)按位分解:
- 0A5C(H)=000010010101011100
- 其中,其后10位为页内地址,即Damage bits部分: 010101011100
2. 解码逻辑地址
将逻辑地址分解为页号和页内地址两部分:
- 页号:000010010101
- 页内地址:1011 0101100
3. 寻找对应的物理块号
根据对照表:
页号 | 物理块号(二进制)0 | 00011 | 00102 | 01013 | 0110
从对照数据可知,页号为2对应的物理块号为0101,即十进制的11(二进制)。
4. 计算物理地址
物理地址的计算公式为:
物理地址 = (块号 × 块长) + 页内地址
其中:
- 块长=4KB=16B
- 页内地址=101110100(二进制)
将块号11转换为十进制:
块号11(二进制)= 十进制数1
因此:
物理地址 =(1 × 16B) + 52B = 68B
将68B转换为十六进制:
十六进制:0x44字义:44
最终得出结论,逻辑地址0A5C对应的物理地址为0x44(十六进制)。
通过以上步骤,可以清晰地看到逻辑地址到物理地址转换的实际运算过程。
发表评论
最新留言
逛到本站,mark一下
[***.202.152.39]2025年04月28日 18时23分26秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Scala中的包
2019-03-11
他来了他来了,他带着云栖大会的免费门票走来了
2019-03-11
获取linux 主机cpu类型
2019-03-11
限流的算法有哪些?
2019-03-11
Android Studio updating indices 一直刷新和闪烁
2019-03-11
个人购买服务器问题?
2019-03-11
pwntools编写技巧
2019-03-11
How2Heap笔记(三)
2019-03-11
go--microSocket服务端 php客户端
2019-03-11
小程序提交新数据后如何返回上一页并刷新数据?
2019-03-11
qt c++实现的ai贪吃蛇吃满屏幕,超详细!(二)ai的具体实现
2019-03-11
linux 查看log日志相关命令
2019-03-11
IDEA 2019 安装 mybatis-plus插件
2019-03-11
div 实现光标悬停变成手型
2019-03-11
layer.confirm 无效
2019-03-11
Java 回调机制
2019-03-11
7、回归和特征选择
2019-03-11
pycharm使用(新建工程、字体修改、调试)
2019-03-11
什么是Numpy、Numpy教程
2019-03-11