A小小鸟 发表于 2017-3-13 16:23:17

关于监测点10.5程序分析

(2)下面的程序执行后,ax中的数值为多少?
assume cs:code
stack segment
dw 8 dup (0)
stack ends
code segment
start: mov ax,stack
mov ss,ax
mov sp,16
mov word ptr ss:,offset s
mov ss:,cs
call dword ptr ss:
nop
s: mov ax,offset s
sub ax,ss:
mov bx,cs
sub bx,ss:
mov ax,4c00h
int 21h
code ends
end start
关于这个转移指令的程序的跳转,分析的我都蒙了,不知道为什么ax是1,bx是0,怎么做出来的啊

兰陵月 发表于 2017-3-15 12:13:18

本帖最后由 兰陵月 于 2017-3-15 12:27 编辑

assume cs:code

        stack         segment
       
                dw 8 dup (0)
               
        stack         ends
       
        code         segment
               
                start:         mov ax,stack
                                mov ss,ax
                                mov sp,16
                               
                                mov word ptr ss:,offset s
                                mov ss:,cs
                                call dword ptr ss:
                                nop
                               
                s:                 mov ax,offset s
                                sub ax,ss:
                                mov bx,cs
                                sub bx,ss:
                               
                                mov ax,4c00h
                                int 21h
        code ends
       
        end start



不知是否已经明白?

A小小鸟 发表于 2017-3-24 13:46:12

兰陵月 发表于 2017-3-15 12:13
不知是否已经明白?

恩恩,谢谢你的指导啊,谢谢了
页: [1]
查看完整版本: 关于监测点10.5程序分析