检测9.1的问题
本帖最后由 着火番茄 于 2011-8-13 09:13 编辑(2)补全程序,使jmp指令执行后,CS:IP指向程序的第一条指令。
完整程序如下:
assume cs:code,ds:data
data segment
dd 12345678h
data ends
code segment
start: mov ax,data
mov ds,ax
mov bx,0
mov ,bx ;源操作数bx为所填内容
mov ,cs ;源操作数cs为所填内容
jmp dword ptr ds:
code ends
end start
那里为什么填CS?求分析,,不是很明白
这个考察jmp从内存地址中取到需要跳转的地址,jmp dword ptr ds:在本例中是取data段中的偏移为0的双字节,低字中应该存入start标号所执行的指令地址,那么高字中必然要存入cs段地址,构成一个段间转移。 parbbo 发表于 2011-8-12 16:08 static/image/common/back.gif
这个考察jmp从内存地址中取到需要跳转的地址,jmp dword ptr ds:在本例中是取data段中的偏移为0的双字节 ...
多谢啦,原来是我的段间转移没弄懂,所以不明白,{:5_107:}
现在懂了,原来是:低地址为偏移地址,高地址为段地址,才能实现段间转移{:5_95:}
parbbo 发表于 2011-8-12 16:08 static/image/common/back.gif
这个考察jmp从内存地址中取到需要跳转的地址,jmp dword ptr ds:在本例中是取data段中的偏移为0的双字节 ...
再来问你9.2的问题http://www.fishc.com/uploads/allimg/110605/1_110605005836_1.jpg
http://www.fishc.com/uploads/allimg/110605/1_110605005858_1.jpg
从标号s处开始所要填写的四条指令依次如下:
第一条指令:mov cl,第二条指令:mov ch,0第三条指令:jcxz ok第四条指令:inc bx
首先题目就闷闷的,不是很懂
看了答案更是晕了{:5_104:}
parbbo 发表于 2011-8-12 16:08 static/image/common/back.gif
这个考察jmp从内存地址中取到需要跳转的地址,jmp dword ptr ds:在本例中是取data段中的偏移为0的双字节 ...
额 不好意思 我弄懂了{:5_97:}
页:
[1]