搜索
当前位置: 三分彩网站 > 段地址 >

汇编语言中转移的偏移地址是什么意思

gecimao 发表于 2019-06-18 19:45 | 查看: | 回复:

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  展开全部举个例子,你要告诉别人你藏的东西埋在树林里哪个地方,会这么说: 从这儿过去,第5棵大树再向前2米。

  这里,“第5棵大树”是一个粗的框架,“向前2米”则是在这个框架内以框架为基准的一个偏移量。

  8086/8088 CPU 访问内存时,内存地址由两个十六位的二进制数构成,即:段地址+偏移地址。

  段地址就是上面例子中的框架,偏移地址就是框架内相对框架基准的一个局部偏移量。

  “段地址+偏移地址”这种地址表示方式,称为逻辑地址表示。若要转换成真实的内存物理地址,方法是:段地址x16+偏移地址。

  8086/8088中之所以要用逻辑地址,是因为物理地址的长度(20位)超过了处理器的字长(16位),无法一次完整表示,不得不分成两部分。同时这样处理还带来了可以方便程序动态内存定位的好处。追问我知道你的意思,但是我问的并不是什么是偏移地址,而是转移的偏移地址是什么,还是很感谢你的回答。追答转移指令中,指令的机器代码里使用的不是跳转目标的绝对地址,而是跳转的目标与当前指令地址的位移量,即目标的偏移地址减去当前IP值。

  这样做的好处,是将包含有转移指令的一段代码从内存的一处搬移到另一处的时候,可以保持跳转的相对关系不变,不需要修正机器代码。

本文链接:http://dogayoga.net/duandizhi/555.html
随机为您推荐歌词

联系我们 | 关于我们 | 网友投稿 | 版权声明 | 广告服务 | 站点统计 | 网站地图

版权声明:本站资源均来自互联网,如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

Copyright @ 2012-2013 织梦猫 版权所有  Powered by Dedecms 5.7
渝ICP备10013703号  

回顶部