ARM CORTEX-3指令小结

 

R0-R12  通用寄存器,thumb模式一般只能使用R0-R7

 

R13为栈指针寄存器(MSP,PSP)

 

R14为连接寄存器LR(用来存储程序返回地址)

 

R15为程序计数器PC(下一条运行指令地址)

 

特殊功能寄存器

xPSR(process status register)程序状态寄存器

 

B    Label    跳转到Label代表的地址

BX  Reg      跳转到Reg给出的地址,地址LSB=0进入ARM态,地址LSB=1进入THUMB态。cortex无ARM态

 

 

BL     Label    跳转到Label代表的地址处,并把下条地址(程序返回地址)保存到LR中

BLX   Reg   跳转到Reg给出的地址,把下条地址保存到LR中,地址LSB=0进入ARM态,地址LSB=1进入THUMB态。

 

CBZ  R0,CALLAPP                  R0的值为0,则进入CALLAPP程序

 

MOVW R0,#0x3000    把0x3000立即数存入R0的低16位

 

MOVT  R0,#0x2000   把0x2000立即数存入R0的高16位

 

MOVS R0,#0x2000   把0x2000存入R0并且根据结果来影响 Z N  C  O标志位

 

该指令结束后,  Z=0表示结果非0

                     N=0表示结果为正

                     C=0表示没有进位(两个数相加有进位,或者两个数相减时有借位)

                     O=0表示没有溢出(两个有符号正数相加时溢出等情况)

 

 

 

你可能感兴趣的:(c,存储)