注册 登录
编程论坛 汇编论坛

各位大佬们,帮解决个小问题

国际新生 发布于 2016-11-08 15:51, 3213 次点击
程序代码:
assume cs:code,ds:data,ss:stack
data segment
    dw 0132H,0456H
data ends

stack segment
    dw 0,0
stack ends

code segement
start:mov ax,stack
      mov ss,ax
      mov sp,16

      mov ax,data
      mov ds,ax

      push ds:[0]
      push ds:[2]
      pop ds:[2]
      pop ds:[0]
      mov ax,4c00h
      int 21h
code ends
end start

只有本站会员才能查看附件,请 登录
7 回复
#2
国际新生2016-11-08 15:52
我照着课本打,还是出现错误,我是win7 64位,用DOSBOX
#3
Valenciax2016-11-08 20:36
code segement ......看看多了什么
#4
国际新生2016-11-12 20:50
回复 3楼 Valenciax
谢谢啦,几天没来这里,还有个小问题:如果段中的数据占N个字节,则程序加载后,该段实际占有的空间为_____.
找到了(N+15)/ 16 这个通用公式,这样如果N刚好被16整除的话不就是2个段了吗?那这样不就错了吗?
#5
zhulei19782016-11-13 09:12
刚好被16整除是一个段啊
#6
国际新生2016-11-13 15:14
回复 5楼 zhulei1978
我是这样理解的  当N=16时(只占一个段),但那个式子(16+15)/16,向上取整不应该是 2 了吗?
#7
国际新生2016-11-13 19:24
哦哦懂了
#8
zhulei19782016-11-14 07:21
是向下取整
1