77范文网 - 专业文章范例文档资料分享平台

东华微机实验aaa(7)

来源:网络收集 时间:2019-07-30 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

CODE ENDS END START

2) 实验步骤:

(1)建立源程序文件。

(2)用MASM宏汇编程序和LINK连接程序生成执行程序。 (3)运行执行程序,输入不同的加数和被加数,观察结果。

2、十进制加法和算式显示程序(自行设计) 1)程序设计要求

在以上十进制数加法要求的基础上,将加法算式及和在显示器上显示。

如ADDOP1中存放1234H,在ADDOP2中存放6789H,执行程序后显示器上显示: 1234+6789=8023 2) 实验步骤:

(1)建立源程序文件。 DSEG SEGMENT ADDOP1 DD 1234 JIAHAO DB '+','$' DENGHAO DB '=','$' ten dw 10 SUM DD ? DSEG ENDS

ESEG SEGMENT ADDOP2 DD 6789 ESEG ENDS

STACK SEGMENT PARA STACK 'STACK' DB 100 DUP(?) STACK ENDS

31

CODE SEGMENT ASSUME DS:DSEG,CS:CODE,ES:ESEG START: MOV AX,DSEG MOV DS,AX MOV AX,ESEG MOV ES,AX MOV AX,WORD PTR ADDOP1 ADD AX,WORD PTR ADDOP2 MOV WORD PTR SUM,AX MOV AX,WORD PTR ADDOP1+2 ADC AX,WORD PTR ADDOP2+2 MOV WORD PTR SUM+2,AX MOV BX,WORD PTR ADDOP1+2 CALL DISPLAY MOV BX,WORD PTR ADDOP1 CALL DISPLAY MOV AH,09H MOV DX,OFFSET JIAHAO INT 21H MOV BX,WORD PTR ADDOP2+2 CALL DISPLAY MOV BX,WORD PTR ADDOP2 CALL DISPLAY MOV AH,09H MOV DX,OFFSET DENGHAO INT 21H MOV BX,WORD PTR SUM+2 CALL DISPLAY MOV BX,WORD PTR SUM CALL DISPLAY MOV AH,4CH INT 21H

DISPLAY PROC NEAR MOV CX,10000D ;DIVIDE BY 10000 CALL DEC_DIV MOV CX,1000D ;DIVIDE BY 1000 CALL DEC_DIV MOV CX,100D ;DIVIDE BY 100

32

CALL DEC_DIV MOV CX,10D ;DIVIDE BY 10 CALL DEC_DIV MOV CX,1D ;DIVIDE BY 1 CALL DEC_DIV RET ;RETURN FROM BINIDEC

DEC_DIV PROC NEAR ; ;--------从 位取出数字显示 MOV AX,BX ;NUMBER LOW HALF MOV DX,0 ;ZERO OUT HIGH HALF DIV CX ;DIVIDE BY CX MOV BX,DX ;REMAINDER INTO BX MOV DL,AL ;QUOTIENT INTO DL ;PRINT THE CONTENTS OF DL ON SCREEN ADD DL,30H ;CONVERT TO ASCII MOV AH,2H ; DISPLAY FUNCTION INT 21H ;CALL DOS RET ;RETURN FROM DEC_DIV DEC_DIV ENDP

;;------------------------------------------------------------------ DISPLAY ENDP

CODE ENDS END START

(2)用MASM宏汇编程序和LINK连接程序生成执行程序。 (3)运行执行程序,输入不同的加数和被加数,观察结果。

3、键盘输入加数和被加数进行十进制数加法,显示结果程序(自行设计) 1)程序设计要求

33

采用DOS的键盘功能调用和显示功能调用,将键盘输入的4位十进制被加数和4位加数相加,和存入有关内存单元,并将算式及和显示在显示器上。 要求采用子程序的设计方法设计程序,例如设计一个从键盘读入输入数据的子程序和将数据显示的子程序。

DSEG SEGMENT ADDOP DW 2 DUP(?) ADDOP1 DD ? JIAHAO DB '+','$' DENGHAO DB '=','$' TEN DW 10 SUM DD ?

GO DB 'PLEASE INPUT TWO NUMBER: $' GOO DB 'THE SUM IS: $'

TISHI DB 'THE NUMBER YOU INPUT IS NOT RIGHT,MUST <10000,PLEASE INPUT AGAIN! $'

DSEG ENDS

ESEG SEGMENT ADDOP2 DD ? ESEG ENDS

STACK SEGMENT PARA STACK 'STACK' DB 100 DUP(?) STACK ENDS

CODE SEGMENT ASSUME DS:DSEG,CS:CODE,ES:ESEG START: MOV AX,DSEG MOV DS,AX MOV AX,ESEG MOV ES,AX TS: MOV SI,0 MOV CX,2 ; 循环5次 LEA DX, GO ; PRINT GO MOV AH, 09 INT 21H AGAIN: PUSH CX CALL INPUT CMP AX,10000 JL RIGHT POP CX CALL CRLF MOV DX,OFFSET TISHI

34

MOV AH,09H INT 21H CALL CRLF JMP TS

RIGHT: MOV ADDOP[SI],AX ;ADD SUM,AX INC SI INC SI POP CX LOOP AGAIN CALL CRLF LEA DX, GOO ; PRINT GOO MOV AH, 09 INT 21H MOV SI,0 MOV BX,ADDOP[SI] MOV WORD PTR ADDOP1,BX MOV WORD PTR ADDOP1+2,0 INC SI INC SI MOV BX,ADDOP[SI] MOV WORD PTR ADDOP2,BX MOV WORD PTR ADDOP2+2,0 PUSH AX MOV AX,WORD PTR ADDOP1 ADD AX,WORD PTR ADDOP2 MOV WORD PTR SUM,AX MOV AX,WORD PTR ADDOP1+2 ADC AX,WORD PTR ADDOP2+2 MOV WORD PTR SUM+2,AX POP AX ;显示算式 MOV BX,WORD PTR ADDOP1+2 CALL DISPLAY MOV BX,WORD PTR ADDOP1 CALL DISPLAY MOV AH,09H MOV DX,OFFSET JIAHAO INT 21H MOV BX,WORD PTR ADDOP2+2

35

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说教育文库东华微机实验aaa(7)在线全文阅读。

东华微机实验aaa(7).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/jiaoyu/666452.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: