如何将逻辑地址转换成物理地址

如题所述

逻辑地址如何转换成物理地址
1.确定虚拟地址(物理地址)的有效位
例如:假设页面大小1KB,共32页。(页面:逻辑地址 页框:物理地址)
由32(KB)=32×1024(B) 即等于32×1024 字节
二进制用多少位能有效表示这么多字节呢——答是:15位 因为32×1024=2^5×2^10=2^15
2.再次确定逻辑地址页面位数 你应该知道:逻辑地址=页号+页面
还是以上假设,那么页面大小为1KB=1024字节 同样的方法计算出表示位数:10位
如果给你逻辑地址:0000 1111 1000 0000
那么由:011+11100000000(相当于 页号+页面(10位))推得出页号011=3
3.根据页号找出对应的页框号
由 物理地址=页框号×页块大小(页块大小是等于页面大小的)+页内位移(即页面逻辑地址)
根据上面 物理地址=页框号×1024B + 1110000000 ( 这里的相加是指位置上而言)
例如:110+110=110110(即高地址+低地址)
温馨提示:内容为网友见解,仅供参考
第1个回答  2018-08-19

首先我们知道,逻辑地址=段地址:偏移地址

然后进行运算:段地址×16+偏移地址=物理地址(可以理解为段地址末尾补一个零)

举例:逻辑地址是1000H:1000H

那么物理地址为1000H×16+1000H=11000H

拓展知识:

逻辑地址和物理地址的区别是:

逻辑地址(Logical Address) 是指由程序产生的与段相关的偏移地址部分。例如,你在进行C语言指针编程中,可以读取指针变量本身值(&操作),实际上这个值就是逻辑地址,它是相对于你当前进程数据段的地址,不和绝对物理地址相干。只有在Intel实模式下,逻辑地址才和物理地址相等(因为实模式没有分段或分页机制,Cpu不进行自动地址转换);逻辑也就是在Intel 保护模式下程序执行代码段限长内的偏移地址(假定代码段、数据段如果完全一样)。应用程序员仅需与逻辑地址打交道,而分段和分页机制对您来说是完全透明的,仅由系统编程人员涉及。应用程序员虽然自己可以直接操作内存,那也只能在操作系统给你分配的内存段操作。  

物理地址(Physical Address) 是指出现在CPU外部地址总线上的寻址物理内存的地址信号,是地址变换的最终结果地址。如果启用了分页机制,那么线性地址会使用页目录和页表中的项变换成物理地址。如果没有启用分页机制,那么线性地址就直接成为物理地址了。

第2个回答  2017-11-03
……基本十六进制换算十进制已
随便找本计算机基础或者编程语言基础靠前面基础知识都讲进制转换本回答被提问者采纳

逻辑地址如何转换成物理地址的?
首先我们知道,逻辑地址=段地址:偏移地址 然后进行运算:段地址×16+偏移地址=物理地址(可以理解为段地址末尾补一个零)举例:逻辑地址是1000H:1000H 那么物理地址为1000H×16+1000H=11000H 拓展知识:逻辑地址和物理地址的区别是:逻辑地址(Logical Address) 是指由程序产生的与段相关的偏移地址部...

逻辑地址转换为物理地址
逻辑地址转换为物理地址需要页号地址的确定、页内地址的确定、物理地址的计算。1、页号地址的确定:首先,确定页面数,即逻辑地址中页号地址的位数m,这通常取决于系统的页面大小和地址空间的大小。例如,如果页面大小为4KB(即2^12字节),并且地址空间为2^32字节,那么m=32-12=20位。2、页内地址的...

逻辑地址转换为物理地址
物理地址=1F000H+1A00H 二进制段地址左移四位加上偏移地址 就是20位物理地址了

逻辑地址转换成物理地址的计算题
针对题目中的具体计算,首先将逻辑地址2500的页号计算出来:页号 = int(2500 \/ 1024) = 2。然后确定页内位移:页内位移 = 2500 mod 1024 = 452。假设页号2对应的物理块号是1,那么物理地址计算如下:物理地址 = 1024 * 1 + 452 = 1476。物理地址是内存中每个字节单元的唯一标识。逻辑地址是...

8086如何将逻辑地址转换为物理地址?写出存储器地址1200H:3400H的段...
实模式下,每个存储单元分配一个惟一的20位二进制数(5位十六进制数)的存储器地址,称为物理地址。逻辑地址由16位二进制数(4位十六进制数)的段地址和偏移地址组成。段首地址:5位十六进制数中的末尾1位十六进制数为0的地址,即可作为段首地址 段地址是指每一段的段首地址的高4位十六进制数,...

计算机中的物理地址是如何计算的呢?
1. 页表在计算机中扮演着重要角色,它负责实现逻辑地址到物理地址的转换。2. 计算物理地址的过程涉及以下步骤:首先,通过逻辑地址中的页号在页表中查找对应的物理块号。3. 随后,将逻辑地址中的页内地址直接映射到物理地址的块内地址字段。4. 最后,将物理块号与块内地址合并,形成完整的物理地址。5....

物理地址和逻辑地址的转换关系是什么?
在实地址方式下,物理地址是通过段地址乘以16加上偏移地址得到的。而16位的段地址乘以16等同于左移4位二进制位,这样变成20位的段基地址,最后段基地址加上段内偏移地址即可得到物理地址。计算方法为物理地址=段地址*16d+偏移地址。所以当前代码段可寻址的范围是: 8000:0000H~8000:FFFFH,转化成...

逻辑地址怎么转化为物理地址
物理地址:加载到内存地址寄存器中的地址,内存单元的真正地址。在前端总线上传输的内存地址都是物理内存地址,编号从0开始一直到可用物理内存的最高端。程序的逻辑地址空间变换成内存中的实际物理地址空间的过程,也就是说在装入时对目标程序中指令和数据的修改过程。他是实现多道程序在内存中同时运行的基础...

操作系统中逻辑地址转物理地址是什么?
1、确定虚拟地址(物理地址)的有效位。2、再次确定逻辑地址页面位数 你应该知道:逻辑地址=页号+页面。3、由物理地址=页框号×页块大小(页块大小是等于页面大小的)+页内位移(即页面逻辑地址)4、根据上面 物理地址=页框号×1024B+1110000000。5、若在一分页存储管理系统中,某作业的页表如下所示...

如果程序中的逻辑地址为3470,怎么转换成物理 地址
从而完成了从逻辑地址到物理地址的转换。所以物理地址的计算公式为:物理地址=块的大小(即页的大小L)′块号f+页内地址d解本题中,为了描述方便,设页号为p,页内位移为d,则:p=int(2500\/1024)=2d=2500mod1024=452假设页号2对应块号1那么物理地址=1024*1+452=1476 ...

相似回答