这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界» 论坛首页» 综合技术» 基础知识» ADR,R0,THUMB,CODE ADR R0,THUMB_CODE+1 一句

共2条 1/1 1 跳转至

ADR,R0,THUMB,CODE ADR R0,THUMB_CODE+1 一句中为什么要加一

院士
2006-09-17 18:14:16 打赏
ADR,R0,THUMB,CODE ADR R0,THUMB_CODE+1 一句中为什么要加一



关键词: THUMB CODE+1 一句 为什么

院士
2006-12-22 22:43:00 打赏
2楼
问 ; 文件名:TEST8.S
; 功能:使用BX指令切换处理器状态
; 说明:使用 ARMulate软件仿真调试
AREA Example8, CODE,READONLY
ENTRY
CODE32
ARM_ CODE ADR R0, THUMB_ CODE+1
BX R0; 跳转并切换处理器状态

CODE16
THUMB_ CODE
MOV R0,#10 ; R0= 10
MOV R1,#20 ; R1 = 20
ADD R0,R1 ; R0= R0+R1
B .
END
1: re:这是内核所要求的。
地址 THUMB_ CODE+1,还是指向MOV R0,#10 2: 指令的解释 ARM_ CODE ADR R0, THUMB_ CODE+1
BX R0; 跳转并切换处理器状态
bx指令想要切换到thumb状态,必须使r0[0]==1,所以要加1
可以参考 ARMarchitecture reference的相关解释

共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册]