资源描述:
《西电微机原理第二次上机实验报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、西电微机原理第二次上机实验报告 学号:14020710014 姓名:黄新凯一、实验目的 1.熟练掌握汇编语言程序设计的方法及上机步骤。 2.掌握算术运算中,十进制数调整指令的应用。 3.掌握子程序的设计方法。 4.掌握DOS功能的调用方法。二、实验仪器586微机1台三、实验内容编写求十进制数12678532与21736543之和的程序,并将和以十进制数的形式送屏幕显示。编程要求与提示:[1]两个加数均以压缩(组合)十进制数形式存放在ADD1和ADD2为
2、首址的存贮器单元。[2]和以压缩十进制数的形式存入SUM以下单元。[3]将和送到屏幕显示部分功能的实现采用子程序的形式。[4]实验步骤如下:a.用全屏幕编辑软件建立源程序。b.用masm.exe汇编程序对源程序进行汇编,形成目标程序。c.用link.exe连接程序对目标程序进行连接形成可执行文件。d.用DEBUG对连接通过的可执行程序进行调试。四、实验内容对应的源程序及流程 源程序如下: STACK SEGMENT STACK DB 10H DUP(00) STACK ENDS DATA SEGMENT
3、 ADD1 DB 12H,67H,85H,32H ADD2 DB 21H,73H,65H,43H SUM DB 4H DUP(?) DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACK START: MOV AX, DATA MOV DS, AX MOV AX, DATA MOV ES, AX MOV AX,STACK
4、 MOV SS,AX LEA SI, ADD1[3] LEA BX, ADD2[3] LEA DI,SUM[3] MOV CX,4 CLC L1: MOV AL,[SI] ADC AL,[BX] DAA MOV [DI],AL DEC SI DEC BX DEC DI LOOP L1 CALL DISP
5、AL ------------EXITPROC: MOV AH,4CH 结束程序 MOV AH,1 INT 21H ------------ DISPAL PROC NEAR PUSH AX PUSH BX PUSH CX PUSH DX PUSH DI LEA DI,SUM MOV CX,4 DISPAL2: MOV
6、 AL,[DI] SHR AL,1 SHR AL,1 SHR AL,1 SHR AL,1 MOV AH,2 MOV DL,AL ADD DL,30HINT 21H MOV AL,[DI] AND AL,0FH MOV AH,2 MOV DL,AL ADD DL,30H INT 21H INC DI
7、 LOOP DISPAL2 POP DI POP DX POP CX POP BX POP AX RET DISPAL ENDP CODE ENDS END START 运行结果如下: 五、问题讨论 1.在以十进制数形式参加运算的程序设计中,应注意那些问题。 答:应注意进位和溢出。 2.总结循环程序设计的步骤及方法。 答:分析题目,画流程图,标出循环条件,写程序,检测循环能否进行。