微机原理与接口技术实验.docx
- 文档编号:4708836
- 上传时间:2022-12-07
- 格式:DOCX
- 页数:13
- 大小:51.82KB
微机原理与接口技术实验.docx
《微机原理与接口技术实验.docx》由会员分享,可在线阅读,更多相关《微机原理与接口技术实验.docx(13页珍藏版)》请在冰豆网上搜索。
微机原理与接口技术实验
《微机原理与接口技术》实验大纲
课程名称:
微机原理和接口技术
实验学时:
15×2
实验人数:
130人
分组方式:
2人一组完成实验
实验室名称:
学苑南楼1-305
适用专业:
计算机科学与技术、通信工程、信息工程、电子信息工程、电子科学与技术、微电子学
一、本课程实验教学目的与要求
通过实验要求学生掌握:
1.微型计算机的组成与工作原理
2.8086汇编语言程序设计与调试方法
3.常用接口芯片的功能及接口技术
4.利用AEDK8688ET实验机开发与调试程序的方法
二、主要仪器设备及现有台套数
十六位微型计算机(8088/8086)实验培训系统 30套
微型计算机 30套
三、实验课程内容和学时分配
序号
实验项目名称
目的要求
学时
分配
实验
类型
每组
人数
是否
考核
1
字符和数据的显示
了解数据显示时需转换为ASCII码的原理
2
基础
2
×
2
8086指令观察
掌握DEBUG调试程序的方法
2
基础
2
×
3
字母大小写转换
了解小写字母和大写字母在计算机内的表示方法,并学习如何进行转换。
2
综合
2
×
4
字符串匹配
掌握分支程序的设计方法及键盘输入信息的用法。
2
综合
2
×
5
整数排序
掌握用汇编语言编写气泡排序程序的思路和方法
2
综合
2
√
6
磁盘文件读写
通过阅读并调试示例程序,完成程序设计题,掌握对磁盘文件的读写操作
2
综合
2
√
四、实验报告范本
实验报告
年级:
专业:
班级:
实验人员:
实验项目:
实验一、字符和数据的显示
实验日期:
XXXX年XX月XX日
实验设备和软件:
电脑一台、预装WINXP操作系统、MASM5.0
实验要求和要求:
实验内容:
实验电路搭接:
实验数据分析:
思考题回答:
实验总结:
本次实验附件:
①实验数据②实验程序
五、实验项目的内容和要求
实验一
1.实验项目名称:
字符和数据的显示
2.实验目的:
掌握字符和数据的显示方法。
3.实验要求:
了解数据显示时需转换为ASCII码的原理。
4.实验内容:
将字符串中字符和数据的个数显示在屏幕上
代码:
datasegment
msg1db0dh,0ah,’Inputastring,pressEnterorSpace$’
msg2db0dh,0ah,’Numberofdigits=$’
msg3db0dh,0ah,’Numberofnon-digits=$’
msg4db0dh,0ah,’Numberofchars=$’
strdb‘‘,’‘,’‘
adb0;digit
bdb0;notdigit
cdb0;all
dataends
codesegment
assumecs:
code,ds:
data
start:
movax,data
movds,ax
movah,09h
movdx,offsetmsg1
int21h
;jmpfinish
again:
movah,01h
int21h
cmpal,0dh
jzdisp
incc
cmpal,’0’
jlnotnum
cmpal,’9’
jgnotnum
inca
jmpagain
notnum:
incb
jmpagain
disp:
movah,09h
movdx,offsetmsg2
int21h
moval,a;转换a数值为字符串str
leabx,str
callnumtochar
leabx,str;显示字符串str
calldispnum
movah,09h
movdx,offsetmsg3
int21h
moval,b;转换b数值为字符串str
leabx,str
callnumtochar
leabx,str;显示字符串str
calldispnum
movah,09h
movdx,offsetmsg4
int21h
moval,c;转换c数值为字符串str
leabx,str
callnumtochar
leabx,str;显示字符串str
calldispnum
finish:
movah,4ch
int21h
numtocharprocnear
movcx,3
movsi,2
next1:
movah,0
movdl,0ah
divdl
addah,30h
mov[bx+si],ah
decsi
loopnext1
ret
numtocharendp
dispnumprocnear
movcx,3
movsi,0
next2:
movdl,[bx+si]
movah,02h
int21h
incsi
loopnext2
ret
dispnumendp
codeends
endstart
5.思考
功能中断是如何实现数据的输入输出的?
实验二
1.实验项目名称:
8086指令观察
2.实验目的:
掌握MASM,LINK,DEGUG的使用方法。
3.实验要求
(1)掌握汇编语言程序编辑、汇编、链接和调试的基本概念。
(2)掌握在PC机上建立、汇编、链接和运行8086汇编语言程序的过程。
(3)掌握DEBUG常用命令的使用方法。
(4)通过观察深入掌握数据传送类、算术运算类和逻辑运算类等各类指令的功能。
4.实验内容
试编写如下两个程序,编译、链接、运行,并进行DEBUG动态调试
3.将两个三十二位十六进制数进行相加,要求加数和被加数存放于变
量DATA1和DATA2中,结果保存在变量SUM中。
(例:
12121212H+34343434H=?
)。
(2)在PC屏幕上打印“HELLO”字样。
5.思考
(1)程序中的字符串数据是一什么样的形式存放在数据区中的?
(2)顺序结构程序中IP指针如何变化?
实验三
1.实验项目名称:
字母的大小写转换
2.实验目的和要求:
了解小写字母和大写字母在计算机内的表示方法,并学习如何进行转换。
3.实验内容:
从键盘输入大写字符串(以回车结束),然后把他们以小写字符的形式显示在屏幕上。
实验四
1.实验项目名称:
字符串匹配
2.实验目的和要求:
掌握分支程序的设计方法及键盘输入信息的用法。
3.实验内容:
将键盘输入的两个字符串作比较,如相同,则显示“Match”;否则,显示“Nomatch”。
代码:
;PROGRAMTITLEGOESHERE--Comparestring
;***********************************
datasegment;definedatasegment
string1db'Movethecursorbackward.'
string2db'Movethecursorbackward.'
mess1db'Match',13,10,'$'
mess2db'Nomatch',13,10,'$'
dataends
;************************************
programsegment;definecodesegment
;------------------------------------------
mainprocfar
assumecs:
program,ds:
data,es:
data
start:
;startingexecutionaddress
;setupstackforreturn
pushds;saveolddatasegment
subax,ax;putzeroinAX
pushax;saveitonstack
;setDSregistertocurrentdatasegment
movax,data;datareasegmentaddr
movds,ax;intoDSregister
moves,ax;intoESregister
;MAINPARTOFPROGRAMGOESHERE
leasi,string1
leadi,string2
cld
movcx,25
repzcmpsb
jzmatch
leadx,mess2
jmpshortdisp
match:
leadx,mess1
disp:
movah,09
int21h
ret;returntoDOS
mainendp;endofmainpartofprogram
;------------------------------------------
programends;endofcodesegment
;************************************
endstart;endassembly
实验五整数排序
1.实验项目名称:
排序排序
2.实验目的:
掌握用汇编语言编写冒泡排序程序的思路和方法。
3.实验要求:
对于输入的若干整数进行排序。
4.实验内容
(1)输入若干个整数,存储在内存区中;
(2)设计程序将这些数由小到大排序,排序后的数,仍放在该区域中;
(3)输出排序后的结果。
实验六磁盘文件读写
1.实验项目名称:
磁盘文件读写
2.实验目的:
通过阅读并调试示例程序,完成程序设计
实验六磁盘文件读写实验
1.实验名称:
磁盘文件读写
2.实验目的:
通过阅读并调试示例程序,完成程序设计题,掌握对磁盘文件的读写操作。
3.实验原理:
(1)打开文件(功能号3DH)
调用格式:
MOVDX,OFFSETBUFFER;DS:
DX指向文件标识符
MOVAH,3DH
MOVAL,0;或者1,2
INT21H
功能:
在缺省或指定的磁盘目录下,查找并打开指定的文件,为读写文件返回一个文件描述字。
入口:
AL=0,文件打开供读
AL=1,文件打开供写
AL=2,文件打开供读写
DS:
DX指向文件标识符
出口:
CF=0,打开成功,AX=文件描述字,文件打开后,读写指针指向文件的头一个字节。
CF=1,打开失败,AX=错误类型码
(2)关闭文件(功能号3EH)
调用格式:
MOVAH,3EH
MOVBX,文件描述字
INT21H
功能:
内存缓冲区文件送磁盘,关闭文件。
若文件被修改,则目录项中的日期、时间和文件大小被修改。
入口:
BX是由打开文件(3DH)或建立文件(3CH)等调用返回的有效描述字。
出口:
CF=0,关闭文件成功
CF=1,关闭文件失败。
AX=错误类型码。
(3)读文件(功能号3FH)
调用格式:
MOVDX,OFFSETBUFFER;DS:
DX指向文件存入的缓冲区
MOVBX,文件描述字
MOVCX,文件字节数
MOVAH,3FH
INT21H
功能:
按照有效的文件描述字,从磁盘文件的当前指针下读文件到缓冲区,长度由CX指定。
入口:
DS:
DX指向读入缓冲区,BX是有效的文件描述字,CX是要读入的字节数。
出口:
CF=0,读文件成功,AX=实际读入的字节数
CF=1,读文件失败,AX=错误类型码
(4)写文件(功能号40H)
调用格式:
MOVAH,40H
LEADX,BUFFER;DS:
DX指向数据缓冲区
MOVBX,文件描述字
MOVCX,数据长度(字节数)
INT21H
功能:
按照有效的文件描述字,把缓冲区数据写到磁盘文件当前指针下,长度由CX决定。
入口:
BX=有效的文件描述字,CX=要求写入磁盘文件的字节数,DS:
DX指向数据缓冲区。
出口:
CF=0,写文件成功,AX=实际写入磁盘的字节数
CF=1,写文件失败,AX=错误类型码
表1错误类型码
错误类型码
含义
1
无效功能号
2
文件没找到
3
路径未找到或文件不存在
4
无文件描述字或打开文件太多
5
拒绝存取(访问失败)
6
无效文件描述字
7
内存文件控制块被破坏
8
无足够的内存空间
12
存取码无效,无效访问
13
无效数据
14
指示了无效的驱动器
4.实验内容:
(1)显示文本文件程序(示例一)
示例一:
显示文本文件
(2)创建并写入文本文件程序(示例二)
示例二:
创建并写入文本文件
(3)对指定整数数据文件进行排序,并输出到排序后的新文件中。
5.源程序
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 接口 技术 实验