赞
踩
执行下面指令,观察每条指令执行的结果
MOV AX, 2000 ; AL= MOV DS, AX ; DS= NOT AX ; AX= XOR AX, AX ; AX= DEC AX ; AX= INC AX ; AX= MOV BX, 2030 ; BH= MOV SI, BX ; SI= MOV [SI], BL ; [2030H]= MOV WORD PTR[SI], 10F ; [2030H]= [2031H]= MOV DI, SI ; DI= MOV [DI+50], BH ; [DI+50H]= MOV BH, [SI] ; BH= MOV BL, [DI+50] ; BL= MOV SP, 5000 PUSH AX ; AX= [SS:4FFEH]= [SS:4FFFH]= PUSH BX ; BX= [SS:4FFCH]= [SS:4FFDH]= POP AX ; AX= POPF ; F= NEG BX ; BX= XCHG BX, AX ; BX= STD ; F= STI ; F= CLD ; F= CLI ; F= ADC DI, 2050 ; DI= F= ADC SP, DI ; SP= F= ADC AX, 1500 ; AX= F= SUB AX, BX ; AX= BX= SHL AH, 1 ; AH= RCL AX, 1 ; AX= SHR BH, 1 ; BH= RCR BL, 1 ; BL= MOV CL, 4 MOV DX, 80F0 ROL DX, CL ; DX= CL= INT 20 ; CS= IP=
-a 输入上面
注意 debug下数字默认的是16进制,而且后面不需要带有H或者h,不区分大小写
输入完之后直接按空格就行进入- 状态
-t 单步调试
-d[地址] 查看内存的内容
MOV AX, 2000 ; AL=00,AH=20,mov 数据传输指令 MOV DS, AX ; DS=2000 NOT AX ; AX=dfff,not按位取非运算 XOR AX, AX ; AX=0000,xor按位异或, DEC AX ; AX=ffff 自减(-1),用补码表示-1 INC AX ; AX=0000 自增(+1) MOV BX, 2030 ; BH=20 MOV SI, BX ; SI=2030 MOV [SI], BL ; [2030H]=0030 MOV WORD PTR[SI], 10F ; [2030H]= 0f [2031H]=01 MOV DI, SI ; DI=2030 MOV [DI+50], BH ; [DI+50H]=20 MOV BH, [SI] ; BH=0f MOV BL, [DI+50] ; BL=20 MOV SP, 5000 ;sp=5000 sp是栈指针ss 是堆栈段地址 PUSH AX ; AX=0000 [SS:4FFEH]=00 [SS:4FFFH]=00 ,push压栈操作 PUSH BX ; BX=0f20 [SS:4FFCH]=20 [SS:4FFDH]=0f POP AX ; AX=0f20 将栈顶内容弹到ax POPF ; F=(NV,UP,DI,PL,NZ,NA,PO,NC) 将栈顶内容弹到标记寄存器 NEG BX ; BX=f0e0 neg求补指令,相当于bx = 0 - bx XCHG BX, AX ; BX=0f20 xchg将bx,ax的内容互换 STD ; F=(NV,DN,EI,NG,NZ,NA,PO,CY) 置位 DF=1 STI ; F=(NV,DN,EI,NG,NZ,NA,PO,CY) 置位中断 IF=1 CLD ; F=(NV,UP,EI,NG,NZ,NA,PO,CY) 复位方向 DF=0 CLI ; F=(NV,UP,DI,NG,NZ,NA,PO,CY) 复位中断 IF=0 ADC DI, 2050 ; DI=4081 F=(NV,UP,DI,PL,NZ,NA,PE,NC) 带进位的加法指令 ADC SP, DI ; SP=9081 F=(OV,UP,DI,NG,NZ,NA,PE,NC) ADC AX, 1500 ; AX=05E0 F=(NV,UP,DI,PL,NZ,NA,PO,CY) SUB AX, BX ; AX=F6C0 BX=0F20 F=(NV,UP,DI,NG,NZ,NA,PE,CY) 减法 SHL AH, 1 ; AH=EC AX=C0 将ah逻辑左移1位 RCL AX, 1 ; AX=D981 将ax 带进位循环左移1位 SHR BH, 1 ; BH=07 BX=20 将BH逻辑右移1位 RCR BL, 1 ; BL=90 BH=07 将BL带进位循环右移1位 MOV CL, 4 ;CL=04 CH=00 MOV DX, 80F0 ;DX=80F0 ROL DX, CL ; DX=0F08 CL=04 将dx不带进位循环左移4位 INT 20 ; CS=00A7 IP=1072 中断,cs,ip 依程序运行具体而言
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。