阅读下面的程序段,XOR BX,BXMOV CX,20MOV AX,1L1:TEST AX,1 JNZ L2 ADD BX,AXL2:INC AXLOOP L1(1)程序段执行后,BX寄存器的内容是什么?2若将程序段中的指令“JNZ L2”改写为“JZ L2”,程序段执行后,BX寄存器的内容又是什么?(3)程序段完成什么功能?

问题描述:

阅读下面的程序段,
XOR BX,BX
MOV CX,20
MOV AX,1
L1:TEST AX,1
JNZ L2
ADD BX,AX
L2:INC AX
LOOP L1
(1)程序段执行后,BX寄存器的内容是什么?
2若将程序段中的指令“JNZ L2”改写为“JZ L2”,程序段执行后,BX寄存器的内容又是什么?
(3)程序段完成什么功能?

XOR BX,BX #BX清零
MOV CX,20 #CX赋值为20
MOV AX,1 #AX赋值为1
L1: TEST AX,1 #测试AX和1是否相等?
JNZ L2 #结果不相等就跳转到L2执行?
ADD BX,AX #结果相等->BX=BX+AX 21
L2: INC AX #AX清零?
LOOP L1 #从L1开始循环