摘要:
讲解ARM汇编指令的书籍中,很多在讲到B指令的时候会说这条指令时一条绝对跳转指令,这是不负责任的说法。这条指令的迷惑之处在于,B指令的汇编形式为: b label : :label: mov r1,r2 mov r2,r3 从汇编指令的书写形式上,确实是一条绝对跳转指令,但是实际上汇编在将“B label”这条指令翻译为机器指令的时候,会计算label相对于当前PC的偏移,将这个偏移值放到机器码中,所以实际上,B跳转指令为相对跳转指令。用相对跳转指令就可以编写位置无关的代码。 什么是位置无关的代码,其实位置无关的意思就是说编译好的一段代码可以放到... 阅读全文
posted @ 2013-04-08 23:03 michael@huawei 阅读(1568) 评论(0) 推荐(0)
浙公网安备 33010602011771号