阳光影子 发表于 2013-6-18 21:33:12

奇怪的数据

assume cs:code,ds:data

data segment
    dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h
    dw 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
data ends
code segment
        start:mov ax,data
              mov ds,ax
              mov ss,ax
                  mov sp,30h   ;将设置栈顶ss:sp 指向cs:30
                  
                  mov bx,0
                  mov cx,8
                s:push
                  add bx,2
                  loop s      ;以上将代码0~15单元抵中的8个字型数据依次入栈
                  
                  mov bx,0
                  mov cx,8
           s0:pop
              add bx,2
                  loop s0         ;以上依次出栈8个字型数据到代码段0~15单元中
                  
                  mov ax,4c00h
                  int 21
code ends
end start   ;指明程序的入口在start处

还没一直继续跟踪下去的时候是这样的,栈段都是零的。
我一条一条指令执行下去之后



这是原来本机的数据?



346196247 发表于 2013-6-18 22:02:07

我看不懂,啊天数  

压寨宝宝 发表于 2013-6-18 22:35:37

我可以尝试着帮你解答一下。原因就是程序中断。
就从你截得图中来说明吧。
debug程序,其实就是一个程序中断。你所写的代码本身是完整的程序,然后通过debug每次提出中断请求,来让你做到每执行一条语句停止一下。然而再每次你所执行的程序要转向debug的时候,要将程序当时运行的现场保存,在这里的现场,就是程序指令的CS,IP,保存在栈中。所以你在最后的栈的数据中可以看到你最近执行的程序指令的地址。
仔细看也会发现,里面有许多数据都是13D4 的,那就是记录的CS留下的痕迹。

压寨宝宝 发表于 2013-6-18 22:41:57

希望对你有帮助!~~~~{:5_108:}

lsh華 发表于 2013-6-19 07:09:54

无回帖,不论坛,这才是人道。

阳光影子 发表于 2013-6-21 20:22:47

压寨宝宝 发表于 2013-6-18 22:35 static/image/common/back.gif
我可以尝试着帮你解答一下。原因就是程序中断。
就从你截得图中来说明吧。
debug程序,其实就是一个程序中 ...

不对呀这个是恢复本机原来的数据

yearn2005 发表于 2013-6-21 23:20:34

本帖最后由 yearn2005 于 2013-6-21 23:22 编辑

压寨宝宝 发表于 2013-6-18 22:35 static/image/common/back.gif
我可以尝试着帮你解答一下。原因就是程序中断。
就从你截得图中来说明吧。
debug程序,其实就是一个程序中 ...
哈哈你无意中帮我解答了一个困惑,之前也在王爽10.5监测点中发现这个问题。发贴求问,没人答。谢谢啦我原来的帖子 http://bbs.fishc.com/thread-32878-1-1.html,在同个程序中还有第2个问题,还是没想通。

压寨宝宝 发表于 2013-6-22 09:17:06

阳光影子 发表于 2013-6-21 20:22 static/image/common/back.gif
不对呀这个是恢复本机原来的数据

额。有点不太懂恢复本机原来数据是指什么。。
本机数据是哪些?

阳光影子 发表于 2013-6-22 13:42:24

压寨宝宝 发表于 2013-6-22 09:17 static/image/common/back.gif
额。有点不太懂恢复本机原来数据是指什么。。
本机数据是哪些?

就是没加载程序时的数据当加载程序的时候,本机原来在那个位置的数据暂时被程序数据覆盖了,然后一步一步pop的时候本机原来在那个位置的数据又恢复了

把痛苦留在明天 发表于 2013-8-13 14:14:38

路过啊啊:lol::lol:

1123566890 发表于 2013-8-13 14:19:04

栈顶在应该指向32吧

苹果沃珂 发表于 2013-8-13 14:55:01

支持你一下下

monk-half 发表于 2013-8-14 03:53:45

不知道 帮顶{:5_109:}
页: [1]
查看完整版本: 奇怪的数据