(1) 若要使程序中的 jmp 指令执行后, CS:IP 指向程序的第一条指令, 在 data 段中应该定义哪些数据?
程序如下:
assume cs:code
data segment
dw 0
data ends
code segment
start:
mov ax, data
mov ds, ax
mov bx, 0
jmp word ptr [bx+1]
code ends
end start
(2)补全程序, 使 jmp 指令执行后, CS:IP 指向程序的第一条指令
assume cs:code
data segment
dd 12345678h
data ends
code segment
start:
mov ax, data
mov ds, ax
mov bx, 0
mov [bx],bx
mov [bx+2],cs
jmp dword ptr ds:[0]
code ends
end start
(3) 用 Debug 查看内存,结果如下:
2000:1000 BE 00 06 00 00 00
则此时,CPU执行指令:
mov ax, 2000h
mov es, ax
jmp dword ptr es:[1000h]
后,(CS)= ? ,(IP)= ?
CS=0C7A IP=1000
截图如下:
C:\>debug
-d 2000:1000
2000:1000 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
2000:1010 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
2000:1020 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
2000:1030 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
2000:1040 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
2000:1050 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
2000:1060 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
2000:1070 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
-e 2000:1000
2000:1000 00.BE 00.00 00.06 00.00 00.00 00.00
-d 2000:1000
2000:1000 BE 00 06 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
2000:1010 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
2000:1020 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
2000:1030 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
2000:1040 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
2000:1050 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
2000:1060 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
2000:1070 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
-a
0C7A:0100 mov ax,2000
0C7A:0103 mov es,ax
0C7A:0105 jmp dword ptr 2000:1000
0C7A:0108
-r
AX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000
DS=0C7A ES=0C7A SS=0C7A CS=0C7A IP=0100 NV UP EI PL NZ NA PO NC
0C7A:0100 B80020 MOV AX,2000
-t
AX=2000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000
DS=0C7A ES=0C7A SS=0C7A CS=0C7A IP=0103 NV UP EI PL NZ NA PO NC
0C7A:0103 8EC0 MOV ES,AX
-t
AX=2000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000
DS=0C7A ES=2000 SS=0C7A CS=0C7A IP=0105 NV UP EI PL NZ NA PO NC
0C7A:0105 E9F80E JMP 1000
- [十堰职业技术学院学生211020] 是的,确实要好好学学 06/23 23:14
- [游客] 嗯。css样式表确实很实用。 06/23 15:24
- [tomato] 正确。 06/12 09:38
- [zhenglxd] 你怎么跳着学习的啊 这样可不好 还是按顺序来吧 不然 太混乱了或者整理下吧 06/12 09:12
- [mess] dw 0 ------------- 这里最好是dw 0,0 因为根据程序要求第1和2个字节 06/09 10:09
- [十堰职业技术学院学生211020] 哦,是的 太仔细了! 06/08 21:20
- [mywiil] 程序没问题,只不过assume少些了一个a。呵呵 06/08 10:04
- [mywiil] 不错,继续加油吧。 06/08 10:00
- [zhenglxd] 正确 咱们进度一样了哈 看谁先把下面的程序搞错来! 05/31 17:16
- [zhenglxd] 进度快点 我都赶到你前头去了 原先我可是比你慢些的,没想到我 放假堕落了整整一个礼拜 你居然比我还慢 05/31 17:08