数据处理指令(四)
文章目录
14、逻辑运算
逻辑指令在位级别进行操作,对一个或多个输入值执行按位运算。在 A64 上,双操作数逻辑运算(例如 AND 和 ORR)的源输入可以是两个寄存器、一个寄存器和一个直接编码到指令中的常量立即数,或者两个寄存器(其中一个寄存器在使用前被隐式移位)的源输入。
默认情况下,A64 上的逻辑指令不设置条件标志;但是,如果在指令中添加 S 后缀(即使用 ANDS 和 BICS),则可以指示 AND 和 BIC 指令根据结果额外设置条件标志,而 TST 指令始终根据结果设置条件标志。
14.1 按位与
按位与运算通过对其两个输入的每个位执行逻辑与来计算其结果,如表 14.1 所示。
表 14.1:与运算真值表
A | B | A 与 B |
---|---|---|
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 |