虚地址转化为内存地址_转换法与转化法

虚地址转化为内存地址_转换法与转化法页式地址变换虚地址结构虚地址是用户程序中的逻辑地址,它包括页号和页内地址(页内位移)区分页号和页内地址的依据是页的大小,页内地址占虚地址的低位部分,页号占虚地址的高位部分。假设页面大小为1024字节,虚地址占用2个字节(16位)虚地址转换为内存地址计算如果,虚地址(逻辑地址、程序地址)以十六进制、八进制、二进制的形式给出第一步,将虚地址转换成二进制的数;第二步,按页的大…

页式地址变换

虚地址结构

虚地址是用户程序中的逻辑地址,它包括页号和页内地址(页内位移)

区分页号和页内地址的依据是页的大小,页内地址占虚地址的低位部分,页号占虚地址的高位部分。

  • 假设页面大小为1024字节,虚地址占用2个字节(16位)
    虚地址转化为内存地址_转换法与转化法

虚地址转换为内存地址计算

  • 如果,虚地址(逻辑地址、程序地址)以十六进制、八进制、二进制的形式给出
  • 第一步,将虚地址转换成二进制的数;
  • 第二步,按页的大小分离出页号和位移量(低位部分是位移量,高位部分是页号);
  • 第三步,根据题意产生页表,将位移量直接复制到内存地址寄存器的低位部分;
  • 第四步,以页号查页表,得到对应页装入内存的块号,并将块号转换成二进制数填入地址寄存器的高位部分,从而形成内存地址。

举例说明:
1.有一系统采用页式存储管理,有一作业大小是8KB,页大小为2KB,依次装入内存的第7、9、A、5块,试将虚地址0AFEH,1ADDH转换成内存地址。
解:
|页号|块号 |
| 0 | 7 |
| 1 | 9 |
| 2 | A |
| 3 | 5 |
虚地址0AFEH转化为二进制数:0000 1010 1111 1110
已知页大小是2kb,所以低位部分是11位,所以,w=010 1111 1110, p=0000 1=1
根据页号与块号的排列 p=1时,块号为9,9的二进制数为1001,表首地址为0
所以,MR=(首0)0100 1010 1111 1110(二进制)=4AFEH(16进制)

同理可计算出1ADDH,大家动手试一试吧。答案会放在在评论区里。

  • 如果,虚地址以十进制数给出,那么就用公式进行计算。
  • 页 号(整除)=虚地址 / 页大小
    位移量(取模)=虚地址 mod 页大小
    根据题意产生页表;
    以页号查页表,得到对应页装入内存的块号
    内存地址=块号×页大小+位移量
同样我们举例说明
  1. 有一系统采用页式存储管理,有一作业大小是8KB,页大小为2KB,依次装入内存的第7、9、10、5块,试将虚地址7145,3412转换成内存地址。
    解:
    |页号|块号 |
    | 0 | 7 |
    | 1 | 9 |
    | 2 | A |
    | 3 | 5 |
    首先,已知虚地址7415,页大小为2kb
    计算 P=7145/2048=3
    W=7145mod2048=1001
    MR=5*2048+1001=11241
    所以虚地址7145的内存地址是:11241

同样的,3412的内存地址请大家动手试一下,答案放在评论区。
其实是很简单的东西,怕自己忘记计算方式,所以记录一下,各位大佬见笑了。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/215913.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • idea激活码在哪输入(注册激活)「建议收藏」

    (idea激活码在哪输入)本文适用于JetBrains家族所有ide,包括IntelliJidea,phpstorm,webstorm,pycharm,datagrip等。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/ide…

    2022年3月26日
  • hive 数据类型_类型数据

    hive 数据类型_类型数据hive大数据数据类型

    2022年9月21日
  • 修改pycharm镜像源「建议收藏」

    修改pycharm镜像源「建议收藏」国内的镜像源地址:阿里云:http://mirrors.aliyun.com/pypi/simple/中国科技大学:https://mirrors.bfsu.edu.cn/pypi/web/simple/豆瓣:http://pypi.doubanio.com/simple/清华:https://pypi.tuna.tsinghua.edu.cn/simple/网易:https://mirrors.163.com/pypi/simple/在pycharm中配置镜像源地址:…

    2022年8月27日
  • js全局替换回车换行符

    js全局替换回车换行符踩了个坑,记录一下。全局换行符是这样用php加上的因为显示的时候需要换行显示但是保存的时候不能把回车换行符保存进数据库呀,所以在保存之前要再次把回车换行符替换没了,发现用js替换\r\n无效,思考了一下,可能是html显示是自动过滤了\r,而以\n来显示吧。于是把替换代码改成:varemialStr=$(“#mail”).val();emialStr=emialStr.r

    2022年5月23日
  • html5自学教程_html和html5学哪个

    html5自学教程_html和html5学哪个HTML5作为下一代网站开发技术,无论你是一个Web开发人员或者想探索新的平台的游戏开发者,都值得去研究。借助尖端功能,技术和API,HTML5允许你创建响应性、创新性、互动性以及令人惊叹的

    2022年8月6日
  • android 磨皮原理,Android平台Camera实时滤镜实现方法探讨(九)–磨皮算法探讨(一)

    android 磨皮原理,Android平台Camera实时滤镜实现方法探讨(九)–磨皮算法探讨(一)上一篇开头提到了一些可用于磨皮的去噪算法,下面我们实现这些算法并且观察效果,咱不考虑实时性的问题该算法利用图像局部统计特性进行滤波处理,例如NXM像素的灰度图,首先计算点(i,j)所在窗口内(大小为(2n+1)(2m+1))的平均值m(i,j)以及均方差:得到加性去噪后的结果为:其中:1.根据原文提出的优化方法,首先是建立两个积分图,如图所示,点4的积分即为Sum(Ra)+Sum(Rb)+…

    2022年7月22日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号