十二月份的yi巴 发表于 2012-10-8 12:33:12

这个程序是怎么了??求助甲鱼哥!

assume cs:codesg
codesg segment
   dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h
         abc:
         mov ax,1435h
         mov ds,ax
         mov ax,1000h
         mov ss,ax
         mov sp,0010h
         push ds:
         push ds:
         push ds:
         push ds:
         push ds:
         push ds:
         push ds:
         push ds:
         mov ax,4c00h
         int 21h
codesg ends
end abc

执行到 push ds: 以后就不知道跳到哪里去了?求解....

醉玉堡主 发表于 2012-10-8 13:20:19

程序中对八个数据进行数据的入栈操作的嘛,但是这八个数据在代码段中,程序运行的时候CS存放代码段的段地址,他们的地址应该分别为:CS:0,CS:2,CS:4,...CS:E.如果楼主非要是用ds寄存器的话,应该将数据定义放在数据段中呀!

十二月份的yi巴 发表于 2012-10-12 21:37:00

醉玉堡主 发表于 2012-10-8 13:20 static/image/common/back.gif
程序中对八个数据进行数据的入栈操作的嘛,但是这八个数据在代码段中,程序运行的时候CS存放代码段的段地址 ...

谢谢了啊....就是还没定义....嘿嘿
页: [1]
查看完整版本: 这个程序是怎么了??求助甲鱼哥!