第十一次进球 发表于 2014-8-29 13:23:25

关于实验8

assume cs:codesg
codesg segment
             mov ax,4c00H
             int 21H
start:
             mov ax,0
s:
             nop
             nop
             mov di,offset s
             mov si,offset s2
             mov ax,cs:
             mov cs:,ax
s0:
            jmp short s
s1:
            mov ax,0
            int 21H
            mov ax,0
s2:
            jmp short s1
            nop
codesg ends
end start


我想问问这里为什么是F6EB



小靚同学Leon 发表于 2014-8-29 14:01:06

你-u看一下,cs:0020处的机器码是ebf6,小端排序就是f6eb。这条指令mov si,offset s2将s2处偏移地址刚好是20H赋给si,这个地址的内容是jmp short s的机器码。

动若苍龙 发表于 2014-8-30 17:03:39

看不懂!!!

huanglanting 发表于 2016-5-9 23:53:38

2楼正解,jmp short s 机器码ebf6复制给ax,然后ax有把它传给 cs:di,也就是标号s处s处的机器码是ebf6 等于转移-10h,就向上来到了mov ax,4c00h处 程序正常结束
页: [1]
查看完整版本: 关于实验8