问题 单项选择题

为了使AX和BX寄存器中的两个16位二进制数具有相同的符号位,下面的程序段中应填写什么指令?PUSHAX____________TESTAX,8000HJZSAMEXORBX,8000HSAME:POPAX

A.ANDAX,BX

B.XORAX,BX

C.SUBAX,BX

D.ORAX,BX

答案

参考答案:B

解析:执行指令“TESTAX,8000H”时,如果AX的符号位为1,那么就执行指令“XORBX,8000H”,将BX的符号位取反。如果AX的符号位为0,那么保持BX寄存器的符号位,为了使AX和BX寄存器中的两个16位二进制数具有相同的符号位,那么就要求“TESTAX,8000H”指令执行之前,AX和BX寄存器的符号位要相反或者均为0,四个选项中只有B能够满足要求。

多项选择题 X型题
选择题