问题
单项选择题
为了使AX和BX寄存器中的两个16位二进制数具有相同的符号位,下面的程序段中应填写什么指令?PUSH AX____________TEST AX,8000HJZ SAMEXOR BX,8000HSAME: POP AX
A.AND AX,BX
B.XOR AX,BX
C.SUB AX,BX
D.OR AX,BX
答案
参考答案:B
解析:【解析】执行指令“TEST AX,8000H”时,如果AX的符号位为1,那么就执行指令“XOR BX,8000H”,将BX的符号位取反。如果AX的符号位为0,那么保持BX寄存器的符号位,为了使AX和BX寄存器中的两个16位二进制数具有相同的符号位,那么就要求“TEST AX,8000H”指令执行之前,AX和BX寄存器的符号位要相反或者均为0,四个选项中只有B能够满足要求。