永发信息网

在ARM嵌入式中,什么是与位置相关的代码,什么是与位置无关的代码?

答案:2  悬赏:60  手机版
解决时间 2021-01-26 01:19
  • 提问者网友:听门外雪花风
  • 2021-01-25 11:51
在ARM嵌入式中,什么是与位置相关的代码,什么是与位置无关的代码?
最佳答案
  • 五星知识达人网友:往事隔山水
  • 2021-01-25 12:31
位置无关码:CPU取指时,总是相对于本条执行指令的相对地址去取指。比如指行一个ADD指令时,PC要取下一指令的地址,就在原来的基础上+4。这就不管你代码放在存储器的任何位置,只要他们的相对地址没有改变,就能正常执行程序。一般上电复位那几条语句就必须是位置无关码指令。

位置相关码:可以这样来说,就是CPU每次取指都从绝对位置去取,而不是上面的相对位置。这个绝对地址就是相对起始地址0来说的。这样,就要求你在存放程序时,必须给连接脚本所规定的一样,把代码放到指定位置。
全部回答
  • 1楼网友:十年萤火照君眠
  • 2021-01-25 13:11
你好! 举个例子:排队时 1.A排在第一的位置,B排在第二的位置 2.A排在B的前面 这两种情况,都说明的A和B的位置关系,而第一种跟位置相关,属于绝对地址;而第二种情况则跟位置无关,属于相对地址。 希望对你有所帮助,望采纳。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯