小9 发表于 2013-9-9 16:03:24

实验七,为何我写的程序。显示除法溢出。求大神帮忙看一下

assume cs:codesg,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'
        ; 以上是表示21年的21个字符串
    dd 16,22,382,1356,2390,8000,16000,24486,50065,97479,140417,197514

    dd 345980,590827,803530,1183000,1843000,2759000,3753000,4649000,5937000
        ;以上是21公司总收入21个DWORD型数据
    dw 3,7,9,13,28,38,130,220,476,778,1001,1442,2258,2793,4037,5635,8226

    dw 11452,14430,15257,17800
        ;以上是21年公司人数 WORD
data ends

table segment

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

table ends


codesg segment

        start:
                mov ax,data
                mov ds,ax
                mov ax,table
                mov es,ax
                mov bx,0
                mov si,0        ;收入
                mov di,0        ;人数
                       
                ;以上定义所有寄存器
                mov cx,21
        s:        ;存入年份
                mov ax,
                mov es:,ax
                mov ax,2
                mov es:2,ax
               
               
                ;存人数
                mov ax,168
                mov es:10,ax
               
                ;存入收入
                mov dx,84
                mov es:5,dx
                add si,2
                mov ax,84
                mov es:7,ax
               
                ;算出人均收入 然后存入
                div word ptr 168
                mov es:13,ax
               
                add bx,16
                add si,2
                add di,2
                loops
       
                       
                        mov ax,4c00h
                        int 21h
codesg ends
end start

tsembrace 发表于 2013-9-9 16:16:31

你被除数dx和ax设反了吧

小9 发表于 2013-9-9 16:19:42

tsembrace 发表于 2013-9-9 16:16 static/image/common/back.gif
你被除数dx和ax设反了吧

对哦,呵呵 谢谢。

小9 发表于 2013-9-9 16:28:09

还有一个问题为什么我DEBUG出来查看答案不一样?

tsembrace 发表于 2013-9-9 16:43:40

小9 发表于 2013-9-9 16:28 static/image/common/back.gif
还有一个问题为什么我DEBUG出来查看答案不一样?

别的不说,年份数据那一项,进入下一次循环add bx,16
能指向下一个年份数据么?

怡静 发表于 2013-9-9 16:43:53

哈哈,还有这么好笑的事发生,

小9 发表于 2013-9-9 16:59:49

tsembrace 发表于 2013-9-9 16:43 static/image/common/back.gif
别的不说,年份数据那一项,进入下一次循环add bx,16
能指向下一个年份数据么?

好吧,我应该存入年份BX换成SI。现在搞明白了,谢谢大神

小9 发表于 2013-9-9 17:01:57

怡静 发表于 2013-9-9 16:43 static/image/common/back.gif
哈哈,还有这么好笑的事发生,

我是菜鸟,表酱紫~~~

tsembrace 发表于 2013-9-9 17:03:07

小9 发表于 2013-9-9 16:59 static/image/common/back.gif
好吧,我应该存入年份BX换成SI。现在搞明白了,谢谢大神

我也就一菜鸟,互相多学习,只不过通过看坛子的问题自己也巩固一下罢了,比你多的只是这道题上的细心;当然,如果有分的题,我会更细心{:5_109:}
实话说,并不喜欢你这种只需要“细心”就能解决的问题,没营养啊

eleven_xxq 发表于 2013-9-10 16:48:31

{:5_106:}汇编,还没学呢。加油加油。
页: [1]
查看完整版本: 实验七,为何我写的程序。显示除法溢出。求大神帮忙看一下