微机原理与接口技术实验指导书
- 格式:doc
- 大小:1.04 MB
- 文档页数:41
微机原理与接口技术
实验指导书
微机原理与接口技术实验室
目 录
实验0 将ASCII表示的十进制数转换为二进制数 ……………………… 1
实验一 8086汇编语言程序设计初步……………………………………… 3
实验二 8086汇编语言程序设计…………………………………………… 6
实验三 DOS系统功能调用 ……………………………………………… 10
实验四 8255A并行接口实验……………………………………………… 12
实验五 8253定时器/计数器接口实验 ……………………………………
16
实验六 8259A中断控制器实验…………………………………………… 19
实验七 步进电机控制实验………………………………………………… 23
实验八 电子琴的设计……………………………………………………… 26
实验九 七段数码管实验…………………………………………………… 30
实验十 3~8译码实验 …………………………………………………… 31
实验十一 A/D 转换实验………………………………………………… 32
实验十二 D/A 转换实验………………………………………………… 34
附录:实验报告模版………………………………………………………… 35
微机原理与接口技术实验指导书
实验0 将ASCII表示的十进制数转换为二进制数
一. 实验目的:观察ASCII表示的十进制与二进制的区别;
二. 实验步骤:
(一)、输入源程序
1.建一个文本文档d.text。输入程序把后缀名改成.asm的形式。把该文件放在D盘masm文件下。
2.打开命令提示符。
3.输入D:回车
4.cd masm 回车。
5.masm d.asm回车。
6.link d.obj回车。
7.d.exe回车,生成exe可执行文件。
(二)、在3500-3504单元输入十进制数12的ASCII码,即E3500 30 30 30 31 32
1.把生成的d.exe文件复制到D盘下。
2.debug 回车
3.n d.exe回车
L回车
U 0000回车
4.E3500回车
30 30 30 31 32回车
(三)、用G运行程序
(四)、用D3510查看结果,应为:3510 0C 00 精品文档
。 2欢迎下载
(五)、反复试几组数,考察程序的正确性
精品文档
。 3欢迎下载 实验一 8086汇编语言程序设计初步
一、实验目的
1、熟悉在PC机上建立、汇编、连接、调试和运行8086汇编语言程序的过程。
2、熟悉8086指令系统中一些常用指令的功能和使用。
3、学习数据传送和算术运算指令的使用方法。
二、实验内容
详细阅读汇编语言程序的上机过程。
试编写将两个多位十进制数相加程序,要求两个加数均以ASCII码形式各自顺序存在以DATA1和DATA2为首的5个内存单元中(低位在前),结果送回DATA1处。
三、实验设备
1、微型计算机一台
2、EL-Ⅱ型微机原理实验开发系统一台
四、程序参考流程图
实验一参考程序清单
CRLF MACRO
MOV DL, 0DH
MOV AH, 02H
INT 21H
MOV DL, 0AH
MOV AH, 02H
INT 21H 精品文档
。 4欢迎下载 ENDM
DATA SEGMENT
DATA1 DB 33H, 39H, 31H, 37H, 34H
DATA2 DB 36H, 35H, 30H, 38H, 32H
DATA ENDS
STACK SEGMENT PARA STACK 'STACK'
STA DB 100 DUP (?)
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE, DS:DATA, SS:STACK, ES:DATA
START: MOV AX, DATA
MOV DS, AX
MOV SI, OFFSET DATA2
MOV BX, 05
CALL DISPL
CRLF
MOV SI, OFFSET DATA1
MOV BX, 05
CALL DISPL
CRLF
MOV DI, OFFSET DATA2
CALL ADDA
MOV SI, OFFSET DATA1
MOV BX, 05
CALL DISPL
CRLF
MOV AX, 4C00H
INT 21H
DISPL PROC NEAR
DS1: MOV AH, 02H
MOV DL, [SI+BX-1]
INT 21H
DEC BX
JNZ DS1
RET
DISPL ENDP
ADDA PROC NEAR
MOV DX, SI
MOV BX, 05
AD1: SUB BYTE PTR [SI+BX-1], 30H
SUB BYTE PTR [DI+BX-1], 30H
DEC BX
JNZ AD1
MOV CX, 05
CLC
AD2: MOV AL, [SI]
MOV BL, [DI] 精品文档
。 5欢迎下载 ADC AL, BL
AAA
MOV [SI], AL
INC SI
INC DI
LOOP AD2
MOV SI, DX
MOV BX, 05
AD3: ADD BYTE PTR [SI+BX-1], 30H
DEC BX
JNZ AD3
RET
ADDA ENDP
CODE ENDS
END START
精品文档
。 6欢迎下载 实验二 8086汇编语言程序设计
一、实验目的
1、熟悉8086指令系统,学习基本的8086汇编语言程序设计方法。
2、掌握提示信息的使用方法及8086串操作指令的使用方法。
3、初步掌握调试修改程序的方法。
二、实验内容
用串操作指令设计一个搜索关键字程序,实现在存储区(长度为100H)中寻找关键字空格字符(20H),退出时给出是否找到的信息。
三、实验设备
1、微型计算机一台
2、EL-Ⅱ型微机原理实验开发系统一台
四、编程提示
1、8086中用于字符串检索的指令为SCASB/SCASW,用AL中的字节或者AX中的字与位于ES段由DI寄存器所指的内存单元的字节或字相比较。通过前缀的控制,可以实现在DI所指的字符串中,寻找第一个与AL(或AX)的内容相同的字节或字。
2、对于所有的串操作指令,都要注意方向标志的设置。指令CLD使方向标志DF清0,SI和DI自动增量修改,指令STD使DF置1,SI和DI自动减量修改。
五、程序参考流程图
1、主程序参考流程图
2、子程序GETNUM参考流程图 精品文档
。 7欢迎下载
实验二参考程序清单
CRLF MACRO
MOV DL,0DH
MOV AH,02H
INT 21H
MOV DL,0AH
MOV AH,02H
INT 21H
ENDM
DATA SEGMENT
MESS1 DB ‘INPUT THE SEGMENT ADDR:$’
MESS2 DB ‘INPUT THE OFFSET ADDR:$’
MESS3 DB ‘OK! HAS FOUND!’,0DH,0AH,’$’
MESS4 DB ‘NO SPACE CHARACTER!’,0DH,0AH,’$’
ERROR DB ‘INPUT ERROR!’,0DH,0AH,’INPUT THE ADDR:$’
DATA ENDS
STACK SEGMENT PARA STACK ‘STACK’
STA DW 32 DUP (?)
STACK ENDS
CODE SEGMENT