微机原理与接口技术实验讲义

微机原理与接口技术实验讲义

ID:18198460

大小:1.03 MB

页数:72页

时间:2018-09-15

微机原理与接口技术实验讲义_第1页
微机原理与接口技术实验讲义_第2页
微机原理与接口技术实验讲义_第3页
微机原理与接口技术实验讲义_第4页
微机原理与接口技术实验讲义_第5页
资源描述:

《微机原理与接口技术实验讲义》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验一熟悉汇编语言环境及建立汇编的过程一、实验目的1.熟悉汇编语言环境。2.掌握汇编语言的上机过程。3.了解汇编语言程序的编程格式。二、实验要求通过一个小程序的编写达到以上的实验目的。三、实验原理1.汇编语言程序的上机过程用汇编语言编写的程序称为源程序,源程序也不能由机器直接执行,而必须翻译成机器代码组成的目标程序,这个翻译过程称为汇编。在微型机中,当前绝大多数情况下,汇编过程是通过软件自动完成的,用来把汇编语言编写的程序自动翻译成目标的软件叫汇编程序,汇编过程如下:汇编语言源程序汇编目标程序汇编程序2.汇编、连接过程四、实验步骤1、打开编辑环境

2、2、输入程序CODESEGMENTASSUMECS:CODESTART:MOVAL,01HMOVBL,40HADDAL,BLMOVDL,ALMOVAH,02HINT21HMOVAH,4CHINT21HCODEENDSENDSTART3、保存源程序,以.ASM为扩展名。C:MASM1.ASM4、建立汇编过程(1)用宏汇编程序汇编源程序C:MASM>MASM1.ASM汇编程序有3个输出文件【.obj】文件,【.LST】文件,【.CRF】文件,.OBJ文件是我们所需要的文件。汇编程序还有另外一个重要功能:可以给出源程序中的错误信息。(2)用连接程

3、序将OBJ文件转换为可执行的EXE文件C:MASM>LINK1.OBJ5、执行程序:C:MASM>1.EXE-72-实验二两个多位十进制数相加的实验一、实验目的:1.学习数据传送和算术运算指令的用法。2.熟悉在PC机上建立汇编链接调试和运行汇编语言程序的过程。二、实验内容:  将两个多位十进制数相加。要求加数和被加数均以ASCII码形式各自顺序存放在以DATA1和DATA2为首的5个内存单元中(低位在前),结果送回DATA1处。三、程序框图开始显示被加数和加数被加数和加数以ASCII码表示的数字串形式转化为由十六进制表示的数字串形式计数值5=

4、CX清除最低位进位执行ADC带进位相加AAA调整结果送加数区调整偏移量CX-1=0?十六进制的结果转化为ASCII码表示的数字串显示结果结束四、实验原理1.ADC带进位相加指令的功能和指令格式2.AAA、DAA、AAS、DAS指令的功能和指令格式3.伪指令SEGMENT、ENDS、ASSUME、MACRO、ENDM的使用4.子程序的定义(PROCNEAR/FARENDP),以及子程序调用和返回指令:CALL、RET的使用5.循环指令LOOP的格式以及退出循环的条件-72-6.中断指令的使用五、实验参考程序CRLFMACRO;建立回车换行宏MOVD

5、L,0DHMOVAH,02HINT21HMOVDL,0AHMOVAH,02HINT21HENDM;宏定义结束DATASEGMENT;数据段DATA1DB33H,39H,31H,37H,34H;第一个数据(作为加数)DATA2DB36H,35H,30H,38H,32H;第二个数据(作为被加数)DATAENDSCODESEGMENT;代码段ASSUMECS:CODE,DS:DATA,ES:DATASTART:MOVAX,DATAMOVDS,AXMOVSI,OFFSETDATA2MOVBX,05CALLDISPL;显示被加数CRLFMOVSI,OFFS

6、ETDATA1MOVBX,05CALLDISPL;显示加数CRLFMOVDI,OFFSETDATA2CALLADDA;加法运算MOVSI,OFFSETDATA1MOVBX,05CALLDISPL;显示结果CRLFMOVAX,4C00HINT21HDISPL PROCNEAR;显示子程序段DS1: MOVAH,02H MOVDL,[SI+BX-1];显示字符串中的一个字符 INT21H DECBX;修改偏移量 JNZDS1 RETDISPL ENDPADDA PROCNEARMOVDX,SIMOVBP,DIMOVBX,05-72-AD1:SUBBY

7、TEPTR[SI+BX-1],30H;将ASCII码表示的数字串SUBBYTEPTR[DI+BX-1],30H;转化位十六进制的字符串DECBXJNZAD1MOVSI,DXMOVDI,BPMOVCX,05;包括进位位共5位CLC;清进位位AD2:MOVAL,[SI]MOVBL,[DI]ADCAL,BL;带进位相加AAA;非组合BCD码的加法调整MOV[SI],AL;结果送加数区INCSIINCDI;指向下一位LOOPAD2;循环MOVSI,DXMOVDI,BPMOVBX,05AD3:ADDBYTEPTR[SI+BX-1],30H;十六进制的数字串

8、转化ADDBYTEPTR[DI+BX-1],30H;为ASCII码表示的数字串DECBXJNZAD3RETADDAENDPCODEEND

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。