微机原理实验报告西安交通大学

2019-05-24 09:27

西安交通大学

电子信息与工程学院自动化科学与技术系

微机原理与接口技术实验报告

实验名称 : 微机原理与接口技术

实验者姓名: XX 实验者学号: 21105040XX

所在班级: 自动化1X

报告完成日期: 2014年 1月12日

实验一

数据传送、算术运算、循环程序结构

1、实验目的

a) 熟悉8086汇编语言源程序的框架结构,并掌握汇编语言程序的编写、汇

编、连接、执行的过程,并利用Turbo Debugger调试汇编程序。 b) 熟悉8086指令系统的数据传送指令,掌握寻址方式。

c) 熟悉8086指令系统的算术运算指令。掌握循环结构汇编语言程序的编制。 2、实验内容

教材P121,第14、15题。教材P195,第6题。教材P196,第12题。 3、具体实验

第一题(P121,第14题)

设有两个8个字节长的BCD码数据BCD1及BCD2。BCD1数以1000H为首地址在内存中顺序存放;BCD2数以2000H为首地址在内存中顺序存放。要求相加后结果顺序存放在以2000H为首地址的内存区中(设结果BCD数仍不超过8个字节长)。

a) 实验原理 考虑两个8个字节长的BCD码相加,首先根据地址要求将数据放在对应的地址单元中,然后做加法,BCD码相加要用到调整指令,结果才为正确的BCD数

b) 程序框图

c) 程序源代码

DATAS SEGMENT ORG 1000H

BCD1 DB 01H,02H,03H,04H,05H,06H,07H,88H;起始地址为1000H ORG 2000H

BCD2 DB 11H,12H,13H,14H,15H,16H,17H,18H;起始地址为2000H DATAS ENDS

CODES SEGMENT

ASSUME CS:CODES,DS:DATAS START:

MOV AX,DATAS MOV DS,AX MOV BX,0

MOV CX,8 ;设置循环次数8次 CLC ;清进位CF标志 AGAIN:MOV AL,[BX+1000H]

ADC [BX+2000H],AL;结果放在2000H开始的单元内 DAA INC BX

LOOP AGAIN;没完成则转AGAIN循环 MOV AH,4CH INT 21H CODES ENDS END START

运行: BCD1 DB 11H,12H,13H,14H,15H,16H,17H,18H

BCD2 DB 21H,22H,23H,24H,25H,26H,27H,28H

结果如下:DS:2000H为首地址的连续八个字节单元中

第二题(P121,第15题)

设从2000H为首地址的内存中,存放着10个带符号的字节数据,试编写“找出其中最大的数,并存入2000H单元中“的程序。

a) 实验原理

首先把十个带符号数放在要求的的存储单元中,然后再进行比较,有符号数的比较用JL,JC,JNG,等指令,首先设计一个最小带符号数80H作为比较初值,用2000H单元中的数分别与其它进行比较,若大于则把该单元的数存入2000H单元,否则不予处理。

对于该题,我采用的是字符串指令,由于是隐含寻址,把2000H中的数作为字符串源操作数,其它进行一次循环则依次放入AL中,注意的是当CX为10时,DL=80H。

b) 程序框图


微机原理实验报告西安交通大学.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:艾美生物科技电子商务策划书

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: