执行此代码后r16
和r17
的值是什么?
ldi r16, 0x06 ;load immediate
ldi r17, 0x0c ;load immediate
lsl r16 ;logical shift left
eor r16, r17 ;exclusive or
所以我知道逻辑移位后的r16 = 12
,使其等于r17
。独占或将r16
设置为0和r17
是否保持为12?或者他们都被设置为零?是否设置了零标志?
答案 0 :(得分:1)
EOR Logical Exclusive OR
Rd = Rd EOR Rr
所以是的,r16会被覆盖,但r17保持不变。
http://www.atmel.com/webdoc/avrassembler/avrassembler.wb_EOR.html 甚至说明状态寄存器中的零标志会发生什么:它设置为(表示反向,•表示逻辑和)
R7¯•R6¯•R5¯•R4¯•R3¯•R2¯•R1¯•R0¯