马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
;检测点3.1
;(1)在Debug中,用"d 0:0 1f"查看内存,结果如下。
;0000:0000 70 80 F0 30 EF 60 30 E2-00 80 80 12 66 20 22 60
;0000:0010 62 26 E6 D6 CC 2E 3C 3B-AB BA 00 00 26 06 66 88
;下面的程序执行前,AX=0,BX=0,写出每条汇编指令执行完后相关寄存器中的值。
;MOV AX,1
;MOV DS,AX
;MOV AX,[0000] AX=2662H
;MOV BX,[0001] BX=E626H
;MOV AX,BX AX=E626H
;MOV AX,[0000] AX=2662H
;MOV BX,[0002] BX=D6E6H
;ADD AX,BX AX=FD48H
;ADD AX,[0004] AX=2C14H
;MOV AX,0 AX=0000H
;MOV AL,[0002] AX=00E6H
;MOV BX,0 BX=0000H
;MOV BL,[000C] BX=0026H
;ADD AL,BL AX=000CH
;提示,注意DS的设置
;
;
;(2)内存中的情况入图3.6所示
;;;;;;;;;;;;;;;3.6内存情况示意;;;;;;;;;;;;;;;;;;;;
;; ;;
;; 1000:00 01 02 03 04 05 06 07 08-09 0A 0B 0C ;;
;; B8 00 20 8E D8 A1 08 00 A1-02 00 ;;
;; ;;
;; 1000:0 2 MOV AX,2000H ;;
;; 1000:3 4 MOV DS,AX ;;
;; 1000:5 6 MOV AX,[8] ;;
;; 1000:8 A MOV AX,[2] ;;
;; ;;
;; 2000:00 01 02 03 04 05 06 07 08-09 0A 0B 0C ;;
;; B8 22 66 EA 00 01 F0 0F 89-C3 ;;
;; ;;
;; 2000:0 2 MOV AX,6622H ;;
;; 2000:3 7 JMP 0FF0:0100 ;;
;; 2000:8 9 MOV BX,AX ;;
;; ;;
;;;;;;;;;;;;;;;3.6内存情况示意;;;;;;;;;;;;;;;;;;;;
;①写出CPU执行的指令序列(用汇编指令写出)。
;②写出CPU执行每条指令后,CS、IP和相关寄存器中的数值。
;③再次体会:数据和程序有区别吗?如何确定内存中的信息哪些是数据,哪些是程序?
;-e 1000:0
;
;1000:0000 56.B8 FF.00 E8.20 11.8E 06.D8 E8.A1 3A.08 03.00
;1000:0008 80.A1 3E.02 49.00
;
;-e 2000:0
;
;2000:0000 B8.B8 22.22 66.66 EA.EA 00.00 01.01 F0.F0 0F.0F
;2000:0008 89.89 C3.C3
;
;-rcs
;
;CS 140C
;:1000
;
;-rip
;
;IP 0100
;:0
;
;-r
;
;AX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000
;DS=140C ES=140C SS=140C CS=1000 IP=0000 NV UP EI PL NZ NA PO NC
;1000:0000 B80020 MOV AX,2000
;-t
;
;AX=2000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000
;DS=140C ES=140C SS=140C CS=1000 IP=0003 NV UP EI PL NZ NA PO NC
;1000:0003 8ED8 MOV DS,AX
;-t
;
;AX=2000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000
;DS=2000 ES=140C SS=140C CS=1000 IP=0005 NV UP EI PL NZ NA PO NC
;1000:0005 A10800 MOV AX,[0008] DS:0008=C389
;-t
;
;AX=C389 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000
;DS=2000 ES=140C SS=140C CS=1000 IP=0008 NV UP EI PL NZ NA PO NC
;1000:0008 A10200 MOV AX,[0002] DS:0002=EA66
;-t
;
;AX=EA66 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000
;DS=2000 ES=140C SS=140C CS=1000 IP=000B NV UP EI PL NZ NA PO NC
;1000:000B 57 PUSH DI
;-q
|