首页 > 编程知识 正文

物理地址与逻辑地址的关系,如何求物理地址

时间:2023-05-05 21:18:50 阅读:155640 作者:3048

前言:

最近正在准备《操作系统概论》的考试,其中有一个知识点很重要,在考题中也多次出现。 好好总结一下吧~

一.逻辑地址

逻辑地址(LogicalAddress )是与程序生成的段相关的偏移地址部分。 页面存储器的逻辑地址由页码和页面内地址两部分组成。 其形式如下。

页码页面中的地址结构决定了主内存信息块的大小,也决定了页面的大小。

地址的总位数=页码的位数页内的地址的位数

逻辑地址页数=2的(页码的位数)乘方

1页(行业地址)大小=2的)页内地址位数)乘方

进行内存分配时,总是以块为单位进行分配。 一个作业的信息有多少页? 把那个放进主存储器的时候,会给他分配几张?

二.物理地址

存储器按字节单位存储信息,为了正确地存储或获取信息,按字节单位赋予称为物理地址的唯一存储器地址,也称为实际地址或绝对地址。 物理地址是绝对地址。

三.转化过程

1、绝对地址=块号*块长页内地址

块和分页的大小一致,为了再利用二进制乘法的特性,如果把逻辑地址中的页内地址作为绝对地址中的低地址部分,把从页编号到页表调查的主存储块编号作为绝对地址中的高地址部分的话

2、绝对地址(二进制)=块编号(转换为二进制)页内地址(转换为二进制) ) ) ) ) ) ) ) )。

这个“”表示的不是数字的加法,而是合并的意思。

四.常用考点

1、求出物理地址(绝对地址)的长度

主题:在一个寻呼管理系统中,某个作业有四页(0、1、2、3 ),它们分别被载入主存储器的第三、四、六、八个块中。 假设页面和块大小都为1024字节,当作业在CPU上执行时,当该作业被执行到该地址空间的第500个时,遇到传输命令) mov2100、300、300

答:逻辑地址2100从十进制二进制化为100000110100,因为页是4个,所以页编号前2位是2,对应的主存储块是6,后10位是页内地址52,物理地址=6* 1024 52

同样,逻辑地址3100页号码是3,页内地址是28,物理地址=8*1024 28=8220

2、地址转换问题

主题:某虚拟存储器用户编程空间为32页,每页1KB,内存16KB。 在某个时刻,被读入某个用户页表存储器的页的页编号和物理块编号的对应表,假设:页编号0、1、2、3分别与块编号5、10、4、7对应。 逻辑地址0868(h )的各物理地址是_ _ _ (h )。

答:将逻辑地址0868(h )转换为二进制,使之成为0000100001101000。 因为是32(=2的五次方)页,所以页码是两位。 因为每页1kb(=2的10次方),所以页内的地址应该是10位,所以页号为2,对应的物理块号为4。

物理地址的前2位从4转换为二进制时为100,后10位保持不变,为0001101000,因此为0001000001101000,转换为十六进制时为1068(h )

总结:

其实理解内涵,理解其中的逻辑关系,还是很简单的。 看准了套路,再怎么考试也不怕哦~~~

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。