1、32位ARM指令每一位都有其作用,具体如下:
- 低12为第二操作数,
- 12~15位为目的寄存器,
- 16~19位为第一操作数,
- 20~27就是操作码,
- 28~31就是条件域。
2、多寄存器load和store指令的堆栈和块拷贝对照
| 栈操作 | |||||
递增 | 递减 | |||||
满 | 空 | 满 | 空 | |||
块拷贝 | 增值 | 先增 | STMIB STMFA | LDMIB LDMED | ||
后增 | STMIA STMEA | LDMIA LDMFD | ||||
减值 | 先减 | LDMDB LDMEA | STMDB STMFD | |||
后减 | LDMDA LDMFA | STMDA STMED |
3、CPSR的位5是T标志位,反映了处理器的状态,T=0则处理器运行在ARM状态下,T=1则处理器运行在Thumb状态下;位[4:0]被称为模式位,反映了处理器的工作模式。
4、在内存中,存放ARM指令采取4字节对齐方式,存放Thumb指令采取2字节对齐方式。
作者:耑新新,发布于
转载请注明出处,欢迎邮件交流: