小宏 发表于 2015-5-29 19:09:08

关于在dosbox里做实验七的一个问题

本帖最后由 小宏 于 2015-5-29 19:09 编辑

如图,很奇怪,在在用-t和-g做调试时,出现divide check这个提示,而且之后的调试的语句不是我写的实验七程序里的内容,但是程序的结果没问题










这是我写的程序

assume cs:code,ds:data,es:table

data segment

    db '1975','1976','1977','1978','1979','1980','1981','1982','1983'

    db '1984','1985','1986','1987','1988','1989','1990','1991','1992'

    db '1993','1994','1995'

    dd 16,22,382,1356,2390,8000,16000,24486,50065,97479,140417,197514

    dd 345980,590827,803530,1183000,1843000,2759000,3753000,4649000,5937000

    dw 3,7,9,13,28,38,130,220,476,778,1001,1442,2258,2793,4037,5635,8226

    dw 11452,14430,15257,17800

data ends

table segment

    db 21 dup ('year summ ne ?? ')

table ends

code segment

      start:      mov ax,data
                        mov ds,ax
                        mov bx,0
                        
                        mov ax,table
                        mov es,ax
                        
                        mov cx,21
                        mov di,0
                        
                s0:      push cx
                        mov si,0
                        mov cx,4
                        sub ax,ax
               
                s:      mov byte ptr al,ds:
                        mov byte ptr es:,al
                        inc si
                        inc di
                        loop s
                        
                        add bx,10h
                        pop cx
                        loop s0
                        
                        mov bx,0
                        mov di,84
                        mov cx,21
                        
                s1:      mov word ptr ax,ds:
                        mov word ptr es:7,ax
                        mov word ptr ax,ds:2
                        mov word ptr es:5,ax
                        add bx,10h
                        add di,4
                        loop s1
                        
                        mov bx,0
                        mov cx,21
                        mov di,168
                        
                s2:      mov word ptr ax,ds:
                        mov word ptr es:10,ax
                        add di,2
                        add bx,10h
                        loop s2
                        
                        mov ax,data
                        mov ds,ax
                        mov di,84
                        mov si,168
                        mov bx,0               
                        
                s3:      mov ax,ds:
                        mov dx,ds:2
                        div word ptr ds:
                        mov es:13,ax
                        add di,4
                        add si,2
                        add bx,10h
                        loop s3
                        
                        mov ax,4c00h
                        int 21h
                        
code ends

end start

tianyuan 发表于 2015-5-29 19:39:13

:funk:    没遇到过。还见过,楼主你用的dodbox是什么版本。。望楼下 解答!

小宏 发表于 2015-5-30 11:50:38

tianyuan 发表于 2015-5-29 19:39
没遇到过。还见过,楼主你用的dodbox是什么版本。。望楼下 解答!

用的是0.74版本

小宏 发表于 2015-5-30 11:52:01

怎么没人来?{:9_220:}

tianyuan 发表于 2015-5-30 13:15:09

:sad抱歉哦。我也不清错怎么回事。希望还有更好的答案来解决你的结!

tianyuan 发表于 2015-10-17 11:01:23

楼主你 的代码太多了。还可以简化的。
页: [1]
查看完整版本: 关于在dosbox里做实验七的一个问题