您好,欢迎访问这里是深圳市硕远科技有限公司!
戴尔服务器价格_IBM联想配置_浪潮代理-深圳市硕远科技有限公司
联系我们
戴尔服务器价格_IBM联想配置_浪潮代理-深圳市硕远科技有限公司
邮箱:2324898850@qq.com
电话:400-080-6079
地址:深圳市龙华区河背工业区108创业园A301
当前位置:主页 > 新闻动态 > 企业新闻 >

企业新闻

逻辑地址求物理地址(程序中物理地址、逻辑地址

发布时间:2023-01-26 11:03:08浏览次数:

18号,如果不认识她,我也不解释了

在计算机中经常听到程序中有这几种地址类型,这是程序员甚至所有IT工程师容易搞错的事情。

物理地址就是物理内存真正的地址,相当于内存中每个存储单元的门牌号,具有唯一性。不管在什么模式下,不管什么虚拟地址,线性地址,cpu最终都要以物理地址去访问内存,只有物理地址才是内存访问的终点站。

在实模式下,“段基址+段内偏移地址”经过段部件的处理,直接输出的就是物理地址,cpu可以直接用此地址访问内存。

而在保护模式下,“段基址+段内偏移地址”称为线性地址,不过,此时的段基址已经不再是真正的地址了,而是一个称为选择子的东西。它本质是个索引,类似于数组下标,通过这个索引便能在GDT中找到相应的段描述符,在该描述符中记录了该段的起始、大小等信息,这样便得到了段基址。若没有开启地址分页功能,此线性地址就被当做是物理地址来用,可直接访问内存。若开启了分页功能,此线性地址又多了一个名字,就是虚拟地址。(虚拟地址,线性地址在分页机制下都是一回事)虚拟地址要经过cpu页部件转换成具体的物理地址后,这样cpu才能将其送上地址总线去访问内存。

无论在实模式或是保护模式下,段内偏移地址又称为有效地址,也称为逻辑地址,这是程序员可见的地址。这是因为,最终的地址是由段基址和段内偏移地址组合而成。由于段基址已经有默认的啦,要么是在实模式下的默认段寄存器中,要么是在保护模式下的默认段选择子寄存器指向的段描述符中,所以只要给出段内偏移地址就行了,这个地址虽然只是段内偏移,但加上默认的段基址,依然足够有效。

线性地址或称为虚拟地址,这都不是真实的内存地址。他们都是用来描述程序或任务的地址空间。由于分页功能是需要在保护模式下开启的,32位系统保护模式下的寻址空间是4G,所以虚拟地址或线性地址就是0~4G的范围。转换过程可见图0-5:

图0-5 虚拟地址、物理地址等

以上是我们做IT行业的工程师容易搞不清楚的问题,程序员需要对此了解。

如果我没说清楚,问。

400-080-6079