1 / 14
文档名称:

北京理工大学微机原理实验报告.doc

格式:doc   大小:593KB   页数:14页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

北京理工大学微机原理实验报告.doc

上传人:相惜 2021/10/22 文件大小:593 KB

下载得到文件列表

北京理工大学微机原理实验报告.doc

文档介绍

文档介绍:页脚下载后可删除,如有侵权请告知删除!
微机原理与接口技术
实验报告
实验内容:汇编语言程序设计实验


组别:12
姓名:
班级:
页脚下载后可删除,如有侵权请告知删除!
学号:
精选范本,供参考!
页脚下载后可删除,如有侵权请告知删除!
精选范本,供参考!
一、实验目的
1、熟悉IDE86集成开发环境的使用。 
2、通过编程、上机调试,进一步理解汇编语言的设计思路与执行过程。 
3、熟悉DOS命令调用,以到达输入输出、返回DOS系统等目的。
4、掌握利用汇编实现求和与求最值的方法。
5、掌握利用汇编实现数制转换的方法。 
6、稳固理论知识,锻炼动手编程,独立思考的能力。
二、实验内容〔具体内容〕
1、求从TABLE开场的10个无符号字节数的和,并将结果放在SUM字单元中。并查看前5个,前8个数之和以及各存放器和内存的状态。
2、在1的根底上修改程序,求出10个数中的最大值和最小值,最后将最大最小值分别赋给MAX及MIN。
3、求1到 100 的累加和,并用十进制形式将结果显示在屏幕上。要求实现数据显示,并返回DOS状态。

三、实验方法
1、设计思路
〔1〕实验1的设计思路:先将10个要相加的数存在以TABLE为首的10个连续的存储单元中,然后利用循环构造依次取出数值放在AL中并累加,假设有进位那么加到AH中直至循环10次累加完毕,将累加的结果放在SUM中并返回DOS状态。
〔2〕实验2的设计思路:先将10个要比拟的数放在以TABLE为首的10个连续的存储单元中。将第一个数首先赋给AL和AH〔分别存储相对最小和最大值〕在利用LOOP循环构造,依次和下面的数进展比拟,每次把相对的最大值与最小值存储到AH和AL中直至循环9次比拟完毕,将AH和AL里面的最大值与最小值赋给MAX和MIN,返回DOS状态
〔3〕实验3的设计思路:先在内存中定义COUNT=100,表示1-100求和,假设相求1-n的和并显示只需COUNT的值为n即可,同时定义一块以DNUM为首地址的数据区用于存储累加和的十进制数对应的ASCII码。先利用AX和LOOP求出1-COUNT的累加和存在AX中;在进展数值转化,AX依次除10取余数保存,将16进制数转化为10进制ASCII码值并存在DUNM中。最后在屏幕上显示并返回DOS状态。
2程序流程图
实验一、二和三的流程图分别如图1、图2和图3所示
数据段地址放入
相应的段存放器
SI指向TABLE
AX清零
设置循环次数,CX=10
把AL的值赋给SUM
CX =0?
将SI指向的
数加到AL中
假设有进位加到AH中
SI加1指向下一个数
CX减1
返回DOS状态
完毕
定义数据段
开场
N
Y
图1 10个数求和流程图
精选范本,供参考!
页脚下载后可删除,如有侵权请告知删除!
精选范本,供参考!


图2 求10个数最大最小值流程图
返回DOS状态
完毕
数据段地址放入
相应的段存放器
SI指向TABLE
第一个数送入AL和AH
设置循环次数,CX=9
把AL的值赋给MIN
CX =0?
SI指向的值与AL比拟,较小的值存入AL中
SI=SI+1
SI指向的值与AH比拟,较大的值存入AH中
CX减1
定义数据段
开场
N
Y
把AH的值赋给MAX
精选范本,供参考!
页脚下载后可删除,如有侵权请告知删除!
精选范本,供参考!
AX的值赋给SUM
数据段地址放入
相应的段存放器
COUNT=100, AX=0
累加次数CX=COUNT
累加:AX=AX+CX
定义数据段
开场
N
Y
CX =0?
CX=CX-1
DX清零
循环次数CX=4
屏幕显示数字和
返回DOS状态
完毕
CX =0?
DX,AX构成的数除10取余,余数保存在DX
将余数加上30H保存在DUNM中,CX减1
Y
N
精选范本,供参考!
页脚下载后可删除,如有侵权请告知删除!
精选范本,供参考!