- 2
- 0
- 约7.56千字
- 约 43页
- 2019-11-06 发布于湖北
- 举报
* 3.6.5.4 对寄存器进行移位并传送的操作指令 共有3条指令: LSL, LSR, ASR 指令格式: Opcode Rd, Rs, #立即数 Opcode是操作指令; Rd是Thumb指令集的通用寄存器R0~R7,保存操作结果; Rs是源寄存器R0~R7,对其中的内容进行移位; 移位位数不能大于31; 会刷新程序状态寄存器的条件标志。 * 3.6.5.5 与高位寄存器有关的数据处理指令 共有3条指令: ADD, CMP, MOV 指令格式: Opcode Rd, Rs Opcode是操作指令; Rd是Thumb指令集的通用寄存器R0~R15,保存操作结果; Rs是源寄存器R0~R15,对其中的内容进行移位; CMP指令会刷新程序状态寄存器的条件标志。 * 3.6.5.6 使用PC和SP的加法指令 Thumb指令中有一条对堆栈指针SP的加法指令和一条对PC的加法指令。 指令格式: ADD Rd, PC, #立即数 ADD Rd, SP, #立即数 Rd是Thumb指令集的通用寄存器R0~R7; PC是程序计数器,做源寄存器; SP是堆栈指针,做源寄存器; 立即数是一个10位的无符号数; 立即数必须字对齐; 当把PC作为源寄存器时,PC中的值是指令处的地址加4; 不影响程序条件标志位。 * 3.6.5.7 堆栈指针加偏移的加法指令 Thumb指令中有一条对
原创力文档

文档评论(0)