. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
刷新 | 提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->第一个程序
  管理员: assembly   [回复本贴] [收藏本贴] [管理本贴] [关闭窗口]
主题 : :  实验三里面单步执行到POP AX的时候,CS出现了问题  [已解决] 回复[ 3次 ]   点击[ 235次 ]  
luckin
[帖 主]   [ 发表时间:2010-10-06 16:32 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:2
注册日期:2010-10-05 09:26
这是我的程序
assume cs:abc
abc segment
mov ax,2000h
mov ss,ax
mov sp,0
add sp,4
pop ax
pop bx
push ax
push bx
pop ax
pop bx
mov ax,4c00h
int 21h
abc ends
end


在DEBUG里面查看也是对的

E:\asmtools>debug 1.EXE
-u
1410:0000 B80020        MOV     AX,2000
1410:0003 8ED0          MOV     SS,AX
1410:0005 BC0000        MOV     SP,0000
1410:0008 83C404        ADD     SP,+04
1410:000B 58            POP     AX
1410:000C 5B            POP     BX
1410:000D 50            PUSH    AX
1410:000E 53            PUSH    BX
1410:000F 58            POP     AX
1410:0010 5B            POP     BX
1410:0011 B8004C        MOV     AX,4C00
1410:0014 CD21          INT     21
1410:0016 0146F8        ADD     [BP-08],AX
1410:0019 8B46FE        MOV     AX,[BP-02]
1410:001C 8946F6        MOV     [BP-0A],AX
1410:001F EB06          JMP     0027

一步一步去执行的时候,CS=1410, 但执行完POP ax的命令,CS=0000  IP=0014   不应该还在同一个段上吗

-t

AX=2000  BX=0000  CX=0016  DX=0000  SP=0000  BP=0000  SI=0000  DI=0000
DS=1400  ES=1400  SS=1410  CS=1410  IP=0003   NV UP EI PL NZ NA PO NC
1410:0003 8ED0          MOV     SS,AX
-t

AX=2000  BX=0000  CX=0016  DX=0000  SP=0000  BP=0000  SI=0000  DI=0000
DS=1400  ES=1400  SS=2000  CS=1410  IP=0008   NV UP EI PL NZ NA PO NC
1410:0008 83C404        ADD     SP,+04
-t

AX=2000  BX=0000  CX=0016  DX=0000  SP=0004  BP=0000  SI=0000  DI=0000
DS=1400  ES=1400  SS=2000  CS=1410  IP=000B   NV UP EI PL NZ NA PO NC
1410:000B 58            POP     AX
-t

AX=20CD  BX=0000  CX=0016  DX=0000  SP=0002  BP=0000  SI=5E3B  DI=0000
DS=1400  ES=1400  SS=2000  CS=0000  IP=0014   NV UP DI PL NZ NA PO NC
0000:0014 CC            INT     3
-
masmaster
[第1楼]   [ 回复时间:2010-10-06 17:34 ]   [引用]   [回复]   [ top ] 
荣誉值:268
信誉值:12
注册日期:2010-06-18 22:19
栈太小!
luckin
[第2楼]   [ 回复时间:2010-10-06 18:47 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:2
注册日期:2010-10-05 09:26
回复:[第1楼]
------------------
把栈设大点就解决了
非常感谢,masmaster,反映神速啊
luckin
[第3楼]   [ 回复时间:2010-10-06 18:48 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:2
注册日期:2010-10-05 09:26
此贴由 贴主 于 [ 2010-10-06 18:48 ] 结贴。 结贴原因:问题已解决
得分情况: 1楼(masmaster):4分  
此问题已结贴!
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved