冷峻花开 发表于 2013-5-25 23:47:39

检测点9.1

assume cs:code,ds:data

data segment
    ?
data ends

code segment
start:mov ax,data
    mov ds,ax
    mov bx,0
    jmp word ptr    ;段内间接转移

code ends
end start

若要使程序中的jmp指令执行后,CS:IP指向程序的第一条指令,在DATA段中应该定义那些数据?

答案:   db 0,0,0
分析:
DB 0,0,0 定义三个字节的数据,但在DEBUG 运行一,二条指令后查看DS:0处的内存,发现DS:0<=X<DS:10这整行都是0数据,答案只定义了三个字节的数据,为什么这里整行都是0???

lsh華 发表于 2013-5-26 00:44:48

强烈支持楼主ing……

Poison° 发表于 2013-5-26 11:00:39

强烈支持楼主ing……

bafengao 发表于 2013-5-26 13:16:10

我只是路过打酱油的。

属専色灰 发表于 2013-5-30 23:35:40

默认的结果,不用在意!

冷峻花开 发表于 2013-6-5 16:11:20

属専色灰 发表于 2013-5-30 23:35 static/image/common/back.gif
默认的结果,不用在意!

哦,这样!!!!!

冉见祥 发表于 2014-8-14 10:12:51

当你定义这个数据段时,从DS:0~DS:15都会默认为都为零,他们就都是你的数据段的成员了。当你写入数据时,数据会将0替换,而未被替换的就还是0.
页: [1]
查看完整版本: 检测点9.1