微机原理与接口技术实验指导书 下载本文

《微机原理与接口技术实验》 - 13 -

实验四:8086汇编语言程序设计(三)

1. 实验类别

设计型实验:编程实现代码转换。

2. 实验目的

掌握子程序结构的程序设计方法和DOS功能调用;掌握代码转换的基本原理;掌握从键盘接收数据及输出数据到屏幕的方法。

3. 实验条件

硬件条件:PC机一台。

软件条件:DOS操作系统;任意一种编辑程序,如EDIT;宏汇编程序MASM;连接程序LINK;调试程序DEBUG。

4. 实验原理

代码转换是计算机和外设打交道的重要技术。外部设备通常用ASCII码或BCD码输入计算机,而计算机都将其转换为二进制数,运算完之后计算机又必须将其转换为ASCII码或BCD码送到输出设备(如显示器)。

13

需要先将十六进制转换成二进制数,再将二进制数转换成十进制数,可用两个子程序HEX2BIN和BIN2DEC来实现。此外,从键盘输入十六进制数可用子程序GETNUM来实现,参考框图如下:

保存寄存器

DX清0

读取键入字符的ASCII码送AL

Y 是回车或空格键?

N

Y AL值小于30H吗? N

是数字\?

Y N

是字母\?

Y N

N 是字母\?

Y 将本次键入的数字加进DX中

显示\信息

回车换行

恢复寄存器

返回

14

《微机原理与接口技术实验》 - 15 -

字符输入使用01号DOS功能调用,字符输出使用02号DOS功能调用。

可参考教材第四章中的例4.16。

5. 实验内容及步骤

编一程序,把键入的十六进制数转换成十进制数并在屏幕上显示出来。键入的最大数为FFFFH,若键入的不是十六进数字,则显示出错提示。

6. 实验报告

(1)画出程序流程图。

(2)提交调试好的汇编语言源程序(.asm)。 (3)总结实验中遇到的问题及解决的方法。

15

实验五:中断实验

1. 实验类别

设计型实验:编程实现时钟的显示。

2. 实验目的

掌握计数器/定时器8253的工作原理和编程方法;掌握中断控制器8259的工作原理;掌握中断处理程序的编写。

3. 实验条件

硬件条件:PC机一台。

软件条件:DOS操作系统;任意一种编辑程序,如EDIT;宏汇编程序MASM;连接程序LINK;调试程序DEBUG。

4. 实验原理

8259A是一种功能强、使用灵活方便的可编程中断控制器,内部有初始化命令寄存器(ICWl~ICW4)和操作命令字寄存器(OCW3~OCW3)。对8259A进行初始化时需要先写入ICW字,再写入OCW字,以对8259A进行相应的配置。ICW寄存器一般只一次写入,而OCW寄存器可在操作中随时存取。

16