汇编网首页登录博客注册
ptr的学习博客
博客首页博客互动【做检测题】论坛求助

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  
图片载入中
学习动态
最新留言
好友圈
文章收藏
友情链接

[2009-06-06 16:18] 实验7

DATAS SEGMENT
    ;此处输入数据段代码  
    DB '1975','1976','1977','1978';16
    DD 16,22,382,1356;16
    DW 3,7,9,13;8
DATAS ENDS

TABLE SEGMENT
        DB 4 DUP('0123456789ABCDEF')        
TABLE ENDS

CODES SEGMENT
    ASSUME CS:CODES,DS:DATAS
START:
    MOV AX,DATAS
    MOV DS,AX
    MOV SI,0
    
    MOV AX,TABLE
    MOV ES,AX
    MOV DI,0
    
    MOV BX,4
    
;INSERT子过程,先把年份全部复制到TABLE段中,然后是收入,再然后是雇员, 人均收入,记录的数量用BX保存,不过这样子用处不大!
INSERT:
;年
        MOV CX,BX
YEAR:
        MOV DX,[SI]
        MOV ES:[DI],DX
        MOV DX,[SI+2]
        MOV ES:[DI+2],DX
        MOV BYTE PTR ES:[DI+4],' '
        ADD SI,4
        ADD DI,16
        LOOP YEAR
        
        
        MOV CX,BX
        MOV SI,16
        MOV DI,5
        ;收入
INCOME:
        MOV DX,[SI]
        MOV ES:[DI],DX
        MOV DX,[SI+2]
        MOV ES:[DI+2],DX
        MOV BYTE PTR ES:[DI+4],' '
        ADD SI,4
        ADD DI,16
        LOOP INCOME
        
                ;雇员数
        MOV CX,BX
        MOV SI,32
        MOV DI,10

NUM_EMP:
        MOV DX,[SI]
        MOV ES:[DI],DX
        MOV BYTE PTR ES:[DI+2],' '
        ADD SI,2
        ADD DI,16
        LOOP NUM_EMP
        
        ;平均工资
        MOV CX,BX
        MOV DI,5
AVG:
        MOV AX,ES:[DI]
        MOV DX,ES:[DI+2]
        DIV WORD PTR ES:[DI+5]
        MOV ES:[DI+8],AX
        MOV BYTE PTR ES:[DI+10],' '
        ADD DI,16
        LOOP AVG
        
    MOV AH,4CH
    INT 21H
CODES ENDS
    END START
评论次数(2)  |  浏览次数(627)  |  类型(汇编作业) |  收藏此文  | 

[  游客   发表于  2009-06-08 11:02  ]

真够会偷懒的。呵呵
程序没问题。

[  ptr   发表于  2009-06-10 14:38  ]

哈哈,真服了这位大哥,这么乱的代码……

 
 请输入验证码  (提示:点击验证码输入框,以获取验证码