微机原理与应用实验手册lzw

loading 分享 2026-7-19 下载文档

开 始 AX、BX 装入操作数2 AX 左移两位→AX AX+BX→AX AX 左移一位→AX 结 束

(3) 程序的执行可用DEBUG的G命令,也可用T命令单步跟踪执行。在程序送入后,用DEBUG命令将它存入磁盘,以免程序丢失时需重新调入。 五、实验报告 1.程序说明

说明程序的功能、结构。包括:程序名、功能、算法说明、主要符号,并对所用到的寄存器进行说明。 2.调试说明

上机调试的情况:上机调试步骤,调试过程中所遇到的问题是如何解决的。对调试过程中的问题进行分析,对执行结果进行分析。 3.画出程序框图;

4.写出程序和执行过程清单。

实验二 加法及判断程序调试实验 一、实验目的

1. 掌握编写汇编语言源程序的基本方法和基本框架。

2. 学会编写顺序结构、分支结构和循环结构的汇编程序,掌握宏定义与宏调用的方法。 3.掌握程序中数据的产生与输入输出的方法。 二、实验内容

1. 用汇编语言编写一个加法程序: 1325十9839,用ASCII码的形式将加数与被加数存放在数据区DATA1和DATA2中,并将相加结果显示输出。

2. 设有一组数据: 5,-4,0,3,100,-51,编程判断:每个数是>0、=0、还是<0 ?并输出其判断结果。 即:

?1?y??0??1?当x?0当x?0当x?0

三、实验要求 1. 实验前准备

(1) 分析题目,将程序中的原始数据、中间结果和最终结果的存取方式确定好。 (2) 写出算法或画出流程图。 (3) 写出源程序。

(4) 对程序中结果进行分析,并准备好上机调试步骤。 2. 本实验在PC机上进行。

3. 汇编过程中出现问题,用DEBUG进行调试。 四、编程提示 1. 实验内容1

(1) 两个数据可用相反的顺序以ASCII码的形式存放在数据段的DATA1和DATA2中,相加时可从DATA1和DATA2的起始字节开始相加,即从数的个位数开始相加。相加结果可存放在DATA2开始的存储单元中。

(2) 程序中的加法运算是ASCII码运算,采用带进位的加法运算指令ADC,后面应加一条ASCII码加法调整指令AAA,经AAA调整的加法指令,将ASCII码的数据高4位清“0”,因此开 始 要将结果每位数高4位拼成3,变成ASCII码存到DATA2中,则可方便的取出输出。 将DATA1 的偏移地址→SI

将DATA2 的偏移地址→DI 计算位数→DI 取DATA1一位数→AL 带进位加法,并调整

图4-1 参考程序流程图一

(3) 程序中应有输出显示功能,采用入DL中。

DOS中断2lH的02H号功能将要输出字符的ASCII码送(4) 参考程序流程图一。 2. 实验内容2

(1) 首先将原始数据(5,-4,0,3,100,-51)装入起始地址为XX的字节存储单元中。 (2) 将判断结果以字符串的形式存放在数据区中,以便在显示输出时调用。

(3) 其中判断部分可采用CMP指令,得到一个分支结构,分别输出“Y=0”、“Y=+1”和“Y=-1”。

(4) 程序中存在一个循环结构,循环6次,调用6次分支结构后结束。

开 始 (5) 参考程序流程图二。

Y=0 将原始数据存入数据区中 数据个数?CX 从数据区中取一个数?AL Y Y AL≥0? N N AL=0 Y=+1 Y=–1 显示输出Y 值 CX-1>0 N 返回DOS Y 结 束 图4-2 参考程序流程图二 五、思考题

(1) 两个实验内容中的原始数据是否可以通过键盘输入?请将编好的程序上机调试。 (2) 程序中的原始数据是以怎样的形式存放在数据区中的?请用DEBUG调试程序进行观察,并分析。

(3) 在实验内容2中,打印显示部分是否可以用宏定义来定义? 六、实验报告 1.程序说明

(1) 说明程序基本结构,包括程序中各部分的功能。

(2) 说明入口参数与出口参数,各种参数输人与输出的方式。 (3) 说明程序中各部分所用的算法和编程技巧。 (4) 说明主要符号和所用到寄存器的功能。 2.上机调试说明

(1) 上机调试步骤。

(2) 上机调试过程中遇到的问题是如何解决的。 (3) 对调试源程序的中间结果和最终结果进行分析。 3.画出程序总框图。

4.写出源程序清单与执行结果。 5.回答思考题。


微机原理与应用实验手册lzw.doc 将本文的Word文档下载到电脑
搜索更多关于: 微机原理与应用实验手册lzw 的文档
相关推荐
相关阅读