实验七,为何我写的程序。显示除法溢出。求大神帮忙看一下
assume cs:codesg,ds:data,es:tabledata 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
你被除数dx和ax设反了吧
tsembrace 发表于 2013-9-9 16:16 static/image/common/back.gif
你被除数dx和ax设反了吧
对哦,呵呵 谢谢。 还有一个问题为什么我DEBUG出来查看答案不一样? 小9 发表于 2013-9-9 16:28 static/image/common/back.gif
还有一个问题为什么我DEBUG出来查看答案不一样?
别的不说,年份数据那一项,进入下一次循环add bx,16
能指向下一个年份数据么? 哈哈,还有这么好笑的事发生, tsembrace 发表于 2013-9-9 16:43 static/image/common/back.gif
别的不说,年份数据那一项,进入下一次循环add bx,16
能指向下一个年份数据么?
好吧,我应该存入年份BX换成SI。现在搞明白了,谢谢大神 怡静 发表于 2013-9-9 16:43 static/image/common/back.gif
哈哈,还有这么好笑的事发生,
我是菜鸟,表酱紫~~~ 小9 发表于 2013-9-9 16:59 static/image/common/back.gif
好吧,我应该存入年份BX换成SI。现在搞明白了,谢谢大神
我也就一菜鸟,互相多学习,只不过通过看坛子的问题自己也巩固一下罢了,比你多的只是这道题上的细心;当然,如果有分的题,我会更细心{:5_109:}
实话说,并不喜欢你这种只需要“细心”就能解决的问题,没营养啊 {:5_106:}汇编,还没学呢。加油加油。
页:
[1]