汇编题目怎么做?

来源:百度知道 编辑:UC知道 时间:2024/06/19 05:39:21
程序如下:CN1 EQU 1000H
CN2 EQU -2
MOV AX, CN2
MOV BX,CN1
MOV DS;[2000H],AX
INC WORD PTR[BX]
XCHG AX BX
INC BX
ADD AX,BX
执行此程序,执行完活,BX,AX,DS:[2001H,2000]中的内容各是多少?

CN1 EQU 1000H
CN2 EQU -2
MOV AX,CN2 ;数值在计算机中以补码表示,-2的补码,以字节表示是0FEH,以字(双字节)表示是0FFFEH。所以,AX=0FFFEH
MOV BX,CN1 ;BX=1000H
MOV DS:[2000H],AX ;DS:[2000H]=0FEH,DS:[2001H]=0FFH
INC WORD PTR[BX] ;DS:[1000H]增1
XCHG AX,BX ;AX=1000H,BX=0FFFEH
INC BX ;BX=0FFFFH
ADD AX,BX ;AX=0FFFH,有进位,CF=1

此程序执行完后,
BX=0FFFFH
AX=0FFFH
DS:[2001H]=0FFH
DS:[2000H]=0FEH

CN1 EQU 1000H
CN2 EQU -2
MOV AX, CN2 ;AX=-2
MOV BX,CN1 ;BX=1000H
MOV DS;[2000H],AX ;DS:[2000]=-2
INC WORD PTR[BX] ;DS:[1000]中的值加1
XCHG AX BX ;AX=1000H,BX=-2
INC BX ;BX=-1
ADD AX,BX ;AX=0FFFH

单步跟一下不就知道了?