|
主题 : : 本人不才,花了近8小时才搞定问题7.9,请高手指点下 [已解决] |
回复[ 4次 ]
点击[ 519次 ] | |
荣誉值:0
信誉值:16
注册日期:2008-03-17 20:21 |
题外话:本人上班族,大学学的是机械专业,现在自学汇编语言,王爽老师的《汇编语言》,学的很开心,体验到了很多快乐。
代码如下,请各位高手多多指点,非常感谢。
ASSUME CS:CODESG,DS:DATASG,ES:TABLE
DATASG 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 11542,14430,15257,17800
;以上是表示21年公司雇员人数的21个word型数据
DATASG ENDS
TABLE SEGMENT
DB 21 DUP ('YEAR SUMM NE ?? ')
TABLE ENDS
CODESG SEGMENT
START:
MOV AX,DATASG
MOV DS,AX
MOV BX,0
MOV AX,TABLE
MOV ES,AX
MOV CX,21
MOV SI,0
S0:MOV AX,DS:[BX]
MOV ES:[SI],AX
MOV AX,DS:[BX+2]
MOV ES:[SI+2],AX
ADD BX,4
ADD SI,16
LOOP S0
MOV BX,0
MOV SI,0
MOV CX,21
S1:MOV AX,DS:[BX+54H]
MOV ES:[SI+5],AX
MOV AX,DS:[BX+56H]
MOV ES:[SI+7],AX
ADD BX,4
ADD SI,16
LOOP S1
MOV BX,0
MOV SI,0
MOV CX,21
S3:MOV AX,DS:[BX+168]
MOV ES:[SI+10],AX
ADD BX,2
ADD SI,16
LOOP S3
MOV SI,0
MOV CX,21
S4:MOV DX,ES:[SI+7]
MOV AX,ES:[SI+5]
DIV WORD PTR ES:[SI+10]
MOV ES:[SI+13],AX
ADD SI,16
LOOP S4
MOV AX,4C00H
INT 21H
CODESG ENDS
END START | | |