文章目录
概要
下表为逻辑指令的汇编程序和一条指令所需要的周期数:
序号 | 描述 | 汇编程序 | 所需要的机器周期 |
1 | AND | ANDS Rd,Rd,Rm | 1 |
2 | Exclusive OR | EORS Rd,Rd,Rm | 1 |
3 | OR | ORRS Rd,Rd,Rm | 1 |
4 | Bit clear | BICS Rd,Rd,Rm | 1 |
5 | Move NOT | MVNS Rd,Rm | 1 |
6 | AND test | TST Rn,Rm | 1 |
注:1、所有指令的Rd、Rn和Rm只能是R0-R7寄存器中的一个
举例说明
1、ANDS Rd,Rd,Rm 将寄存器 Rd 和寄存器 Rm 中的内容做“逻辑与”运算,结果保存在寄存器Rd中,并且更新寄存器APSR中的N和Z标志
2、EORS Rd,Rd,Rm 将寄存器 Rd 和寄存器 Rm 中的内容做“逻辑异或”运算,结果保存在寄存器 Rd中,并且更新寄存器 APSR 中的 N 和Z标志
3、ORRS Rd,Rd,Rm 将寄存器 Rd 和存器 Rm 中的内容做“逻辑或”运算,结果保存在寄存器 Rd中,并且更新寄存器 APSR 中的 N 和Z标志
4、BICS Rd,Rd,Rm 将寄存器 Rm 的[31:0]位按位做“逻辑取反”运算,然后与寄存器 Rd 中的[31:0]位做“逻辑与”运算,结果保存在寄存器 Rd 中,并且更新寄存器 APSR 中的 N 和Z标志
5、MVNS Rd,Rm 将奇存器 Rm 的[31:0]位按位做“逻辑取反”运算,结果保存在寄存器 Rd 中,并且更新寄存器 APSR 中的 N 和Z标志
6、TST Rn,Rm 将寄存器 Rd 和寄存器 Rm 中的内容做“逻辑与”运算,但是不保存结果,并且更新寄存器 APSR 中的 N和Z标志
未完待续。。。