微机原理实验程序

上传人:xzh****18 文档编号:35513413 上传时间:2018-03-16 格式:DOCX 页数:46 大小:667.08KB
返回 下载 相关 举报
微机原理实验程序_第1页
第1页 / 共46页
微机原理实验程序_第2页
第2页 / 共46页
微机原理实验程序_第3页
第3页 / 共46页
微机原理实验程序_第4页
第4页 / 共46页
微机原理实验程序_第5页
第5页 / 共46页
点击查看更多>>
资源描述

《微机原理实验程序》由会员分享,可在线阅读,更多相关《微机原理实验程序(46页珍藏版)》请在金锄头文库上搜索。

1、1实验一实验一 两个多位十进制数相减实验两个多位十进制数相减实验一、实验要求:一、实验要求:将两个多位十进制数相减,要求被减数,减数均以 ASCII 码形式按顺序存放在以 DATAI 和 DATA2 为首的 5 个内存单元中(低位在前),结果送回 DATAI 处。 二、实验目的:二、实验目的:1学习数据传送和算术运算指令的用法。 2熟悉在 PC 机上建立、汇编、链接、调试和运行汇编语言程序的过程。 三、实验步骤:三、实验步骤:连好实验箱后接通电源,打开上位机软件 88TE进入软件调试界面:点击 “文件打开”文件路径为 C:88TEcaiasmRuanjianRjexp1.asm。具体操作如图所

2、示 :2点击编译连接生成可执行的 exe 文件。通过单步运行调试程序,打开寄存器查看其变量变化情况。3四、实验程序框图:实验程序框图:五、实验程序:五、实验程序:文件路径为 C:88TEcaiasmRuanjianRjexp1.asm DATA SEGMENT DATA1 DB 33H,39H,31H,37H,38H ;第一个数据(作为被减数) DATA2 DB 36H,35H,30H,38H,32H ;第二个数据(作为减数) MES1 DB -,$ MES2 DB =,$ DATA ENDS STACK SEGMENT ;堆栈段 STA DB 20 DUP(?) TOP EQU LENGTH

3、 STA STACK ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK,ES:DATA START: MOV AX,DATAMOV DS,AXMOV ES,AXMOV AX,STACKMOV SS,AXMOV AX,TOPMOV SP,AXMOV SI,OFFSET DATA1MOV BX,05CALL DISPL ;显示被减数MOV AH,09HLEA DX,MES1INT 21HMOV SI,OFFSET DATA2MOV BX,05 ;显示减数CALL DISPLMOV AH,09HLEA DX,MES2INT 21HMOV SI,OFF

4、SET DATA1MOV DI,OFFSET DATA2CALL SUBA ;减法运算MOV SI,OFFSET DATA1MOV BX,05 ;显示结果CALL DISPLMOV DL,0DHMOV AH,02HINT 21HMOV DL,0AHMOV AH,02HINT 21HINT 21HMOV AX,4C00H显示减数和被减数被减数和减数转换成十六进制数设 置 计 数 值消除最低进位数开 始制进位减结果送被减数区调整偏移量计数值 -1=10结果转换成ASCII 码字符串显示结果结果4INT 21H DISPL PROC NEAR ;显示子功能 DSI: MOV AH,02MOV DL,

5、SI+BX-1 ;显示字符串中一字符INT 21HDEC BX ;修改偏移量JNZ DSIRET DISPL ENDP SUBA PROC NEARMOV DX,SIMOV BP,DIMOV BX,05 SU1: SUB BYTE PTRSI+BX-1,30HSUB BYTE PTRDI+BX-1,30HDEC BX ;将 ASCII 码表示的数字串 JNZ SU1 ;转化为十六进制的数字串MOV SI,DXMOV DI,BPMOV CX,05 ;包括进位,共 5 位CLC ;清进单位 SU2: MOV AL,SIMOV BL,DISBB AL,BL ;带进位相减AAS ;非组合 BCD 码的

6、减法调整MOV SI,AL ;结果送被减数区INC SIINC DI ;指向下一位LOOP SU2 ;循环MOV SI,DXMOV DI,BPMOV BX,05 SU3: ADD BYTE PTR SI+BX-1,30HADD BYTE PTR DI+BX-1,30HDEC BX ;十六进制的数字串转化 ASCII 码表示的数字串JNZ SU3RET SUBA ENDP CODE ENDS END START5实验二实验二 两个数相乘的实验两个数相乘的实验一、实验要求:一、实验要求: 实现十进制数的乘法,被乘数和乘数均以 ASCII 码形式存放在内存中,算式结果在屏幕上显示出来 。 二、实验目

7、的:二、实验目的:掌握乘法指令和循环指令的用法。 三、实验程序框图:三、实验程序框图: 四、实验程序:四、实验程序: DATA SEGMENT DATA1 DB 32H,39H,30H,35H,34H DATA2 DB 34H MES1 DB *,$ MES2 DB =,$ RESULT DB 6 DUP (00H) DATA ENDS STACK SEGMENT STA DB 20 DUP (?) TOP EQU LENGTH STA STACK ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK,ES:DATA START: MOV AX,D

8、ATAMOV DS,AXMOV AX,STACKMOV SS,AX MOV SP,TOPLEA SI,DATA1MOV BX,05HL1: MOV AH,02H MOV DL,SI+BX-1 INT 21HDEC BX JNZ L1MOV AH,09HLEA DX,MES1INT 21HLEA SI,DATA2MOV AH,02HMOV DL,SIINT 21HMOV AH,09HLEA DX,MES2INT 21HMOV SI,OFFSET DATA2 ;显示算式MOV BL,SI ;乘数 DATA2BLAND BL,00001111B ;屏蔽高 4 位,ASCII 码转化为十六进制数MOV

9、 SI,OFFSET DATA1MOV DI,OFFSET RESULTMOV CX,05 LOOP1: MOV AL,SI6AND AL,00001111B ;取被乘数 DATA1,ASCII 变十六进制数INC SI ;指向被乘数 1 的下一字符单元MUL BL ;相乘AAM ;AAM 调整ADD AL,DI ;结果低位与前次计算的进位相加AAA ;AAA 调整MOV DI,ALINC DI ;结果送存到下一单元MOV DI,AHLOOP LOOP1 ;计算结果高位进位送存MOV CX,06MOV SI,DI DISPL: MOV AH,02MOV DL,SIADD DL,30HINT 2

10、1HDEC SILOOP DISPL ;显示结果MOV AX,4C00H INT 21H ;结束 CODE ENDS END START实验三实验三 BCDBCD 码相乘实验码相乘实验一、实验要求:一、实验要求: 实现 BCD 码的乘法,要求被乘数和乘数以组合的 BCD 码形式存放,各占一个内存单元,乘积存入在另外两 个内存单元中,由于没有组合的 BCD 码乘法指令,程序中采用将乘数 1 作为计算器,累加另一个乘数的方法得到 计算结果。 二、实验目的:实验目的: 掌握用组合的 BCD 码表示数据,并熟悉怎样实现组合 BCD 码乘法运算。 三、实验程序框图:(附后)实验程序框图:(附后) 四、实

11、验程序:四、实验程序: DATA SEGMENT FIRST DB 99H SECONDDB 25H THIRD DB 2 DUP(?) MES1 DB *,$ MES2 DB =,$ DATA ENDS STACK SEGMENT PARA STACK STACK STAPNDB 100 DUP(?) TOPEQU LENGTH STAPN STACK ENDS CODESEGMENT ASSUMECS:CODE,DS:DATA,SS:STACK START: MOV AX,DATAMOVDS,AX7MOVAX,STACKMOVSS,AXMOVAX,TOPMOVSP,AXMOVBL,FIRS

12、T ;被乘数送 BLMOVCL,SECOND ;乘数送 CLMOVDX,0 ;部分积清 0MOVAL,BL AGAIN: OR AL,AL JZ DONE ;被乘数减到 0 则转结果显示MOVAL,DLADDAL,CLDAA ;乘数于部分积低位相加后调整 MOVDL,ALMOVAL,DHADCAL,0DAA ;往部分积高位送进位后调整MOVDH,ALMOVAL,BLDECALDAS ;组合 BCD 码减法调整MOVBL,ALJMP AGAIN DONE:LEA BX,THIRDMOVBX,DXLEA SI,FIRSTCALLDISXORAX,AXMOVAH,09HLEADX,MES1 ;*INT21HLEASI,SECONDCALLDISXORAX,AXLEADX,MES2 ;=MOVAH,09HINT21HLEASI,THIRDINCSI CALLDIS DECSI CALLDIS MOVAX,4C00H ;返回 DOS INT 21H DIS PROC NEAR

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > IT计算机/网络 > 计算机原理

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号