汇编 XOR 的问题

来源:百度知道 编辑:UC知道 时间:2024/06/02 00:48:39
执行指令 XOR AX,AXH 执行前(AX)=0FFFFH
执行后(AX)=( )
把变量BUF的偏移地址送到SI中的指令为( )

xor ax,ax ;很常用的寄存器清零操作

mov si,offset buf ;offset是一个伪指令,返回buf的偏移地址

(AX)=0000H
如果你了解or合xor的用法你就知道它们对逻辑判断取真的情况了。
OR 将源操作数中的全部二进制1放进目的操作数中,目的操作数中二进制1只可能增加;
XOR 对目的操作数按位取反。
所以有
or :
0 0 = 0
0 1 = 1
1 0 = 1
1 1 = 1

xor:

0 0 = 0
0 1 = 1
1 0 = 1
1 1 = 0
故,两个相同的ax做xor运算,结果就是0了

不管ax为何值,执行 xor ax ,ax 后, ax 都为0
把变量BUF的偏移地址送到SI中的指令为(LEA SI,BUF)