微机原理与接口技术实验指导书北方民族大学Word文档下载推荐.docx
《微机原理与接口技术实验指导书北方民族大学Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《微机原理与接口技术实验指导书北方民族大学Word文档下载推荐.docx(61页珍藏版)》请在冰豆网上搜索。
13.系统可以单步,断点,连续等方式调试运行每个实验程序。
14.使用单个+5V电源,仅在做D/A实验时,需要接入一个+12V和一个-12V。
15.工作电源电压+5V±
5%,工作电流不大于1A,开关机瞬间及工作正常时电源毛刺必须小于0.5V。
16.使用环境:
环境温度0℃—+40℃,无明显潮湿,无明显振动碰撞。
二、DVCC—8086H微机原理与接口技术实验系统资源分配
系统提供给用户的存储空间为00000H—0FFFFH,用于存放调试用户实验程序,存储空间具体分配如下表:
中断矢量区00000H—00013H作为单步(T)、断点INT3、无条件暂停(NMI)中断矢量区,用户也可以更改这些矢量,指向用户的处理,但失去了相应的单步、断点、暂停等系统功能。
表1—1
中断矢量区
00000H~000FFH
系统数据区、系统栈区
00100H~004FFH
用户数据区
00050H~00FFFH
用户程序区、用户栈区
01000H~0FFFFH
三、DVCC—8086H微机原理与接口技术实验系统输入、输出接口地址的分配
表1-2
电路名称
口地址
提供给用户的扩展口
00H~1FH
60H~7FH
80H~8FH
8253A定时、计数器接口
通道0计数器48H
通道1计数器49H
通道2计数器4AH
通道控制口4BH
8259A中断控制器接口
命令寄存器20H
状态寄存器21H
8279A键盘显示口
数据口DEH
命令状态口DFH
8251A串行接口
数据口50H
命令口51H
四、DVCC—8086H微机原理与接口技术实验系统组成
1、硬件
(1)微机专用电源WD—5一台
(2)实验箱DVCC—8086H一台
(3)自锁紧实验系统导线若干
(4)电源/通信电缆线二根
2、软件
光盘一张
3、资料
(1)北方民族大学电气信息工程学院自编《微机原理与接口技术实验指导书》
(2)随设备所带《DVCC-86实验系统说明书》
4、可选附件
(1)8259A串级中断控制实验板
(2)8237A可编程DMA控制实验板
(3)温度测量,压力测量实验板(含压力传感器)
(4)温度传感器
(5)集成电路芯片(8250A、5G14433、1403)共3片
5、系统硬件安装
本系统为单板式结构,固定在一手提箱中,使用前应仔细检查实验箱有无损坏,各主要电子元器件配置是否齐全。
如一切完好,即可开机进行实验。
实验系统所需+5V、±
12V电源可有外接电源提供。
实验系统所需各路电源的电流要求如下:
+5V不小于1A,+12V不超过0.5A,-12V不超过0.5A。
开机前应按以下过程对电源做仔细检查:
(1)用万用表检查外接电源各输出电压是否和标称值一致。
本系统配备的WD—5电源各路电压正确值为:
+5V电源应为+5V±
5%,+12V电源应大于11.5V,-12V电源绝对值应大于11.5V。
(2)本系统有二芯电源线接入外置电源,其中红线接+5V,黑线接地。
(3)将通信电缆线一头插入DVCC—8086H的J2插座,另一9芯D型通信插座接入主机COM1—COM2的任一插座上,选择COM1、COM2、COM3、COM4的原则是该通信口必须能正常工作,且与通信电缆提供的插头匹配。
(4)接通外接电源,实验系统加电后电源指示灯亮,8个数码管显示“DVCC—86H”字样,指示实验系统正常工作。
完成上述步骤后表明实验箱硬件安装正确,可进入实验过程。
五、DVCC—8086H系统启动运行
系统LED显示器显示出“DVCC—86H”字样,此时系统可以在两种方式下进入运行状态。
1、DVCC—8086H独立工作方式
当系统显示“DVCC—86H”时,按键盘上的任意键进入键盘命令工作状态,显示器显示提示符“-”。
可以实现各种功能操作,如存贮器读写、寄存器读写、I/O口读写、单步运行程序,连续运行程序或断点运行程序等功能。
2、DVCC—8086H联上位机工作方式
在确认通信电缆已连好后,实验系统上的键盘不用,只用上位机键盘和鼠标,运行DV86H调试软件,进入DV86H实验系统主窗口界面,在该界面下可进行编辑、调试等基本操作。
第二章DVCC—8086H联机软件使用说明
在确认通信电缆已连好后,实验系统上的键盘不用,只用上位机键盘和鼠标,运行DVCC-8086H软件后即可进入DVCC-8086H实验系统主窗口界面,在该界面下可进行编辑、调试等各种操作。
一、实验环境
完成实验需以下设备(实验室已安装好):
1、一台微型计算机
包括键盘,显示器和主机箱三部分。
2、DVCC-8086H型微机原理与接口实验系统
实验系统需通过一条铜芯电缆与微机相连,在进行汇编语言程序的编辑,汇编和链接时,无需打开DVCC-8086H型微机原理与接口实验系统。
3、在微机硬盘DV86H子目录下提供了以下程序:
MASM.EXE宏汇编程序
LINK.EXE链接程序
EDIT.COM编辑程序
QBASIC.EXE
DEBUG.COM调试程序
二、上机步骤
1、开机
打开微机电源开关(若进行的是硬件实验,则需按要求连线并检查无误后,方可打开主机电源)。
2、DVCC-8086H型微机原理与接口实验系统软件功能
DVCC-8086H型微机原理与接口实验系统软件有三大部分:
软件系统工具栏有:
编辑工具栏、实验指南工具栏、调试工具栏
在该软件中,窗口间切换按CTRL+F6,关闭窗口按CTRL+F4;
菜单间切换按ALT+菜单字母,菜单间选择除用鼠标外也可用“←→↑↓”键后,按回车键确认。
菜单及其功能
菜单
功能
文件菜单
装入后创建源程序文件,打开历史文档以及退出DVCC实验系统等。
编辑菜单
对源程序窗口的有关内容进行编辑。
查询菜单
对编辑窗口的源程序进行查询找、替换、定位等操作。
编译菜单
对编辑的源程序进行编译、连接、传送等操作。
选项菜单
控制编辑工具栏、调试工具栏、实验指南工具栏、显示工具栏、文字与状态栏的显示状态(打开或关闭)。
动态调试菜单
对源程序进行单步、宏单步、连续执行、端口操作、系统联机、文件(.EXE)传送等操作。
实验指南菜单
提供所选实验项目的目的、内容、原理图、源程序、相关芯片的查询等。
窗口菜单
列出当前屏幕出现的所有窗口名及指出当前活动窗口名。
帮助菜单
获得在线帮助。
3、建立汇编语言源文件即.ASM文件
机器正常启动后,即可编辑汇编语言源文件,操作其过程如下:
如果建立一文件名为QA.ASM的文件(注意:
在建立汇编语言源文件时,文件名必须有后缀.ASM,否则汇编程序将不予汇编)。
使用EDIT.COM来建立这个源程序文件。
具体操作如下:
C:
\CDDV86H
C:
\DV86H>
EDIT
屏幕上出现EDIT的全屏幕编辑窗口,最上面一行是菜单行,最下面一行是提示行,用ALT键激活菜单,用方向键选择菜单。
进入FILE菜单,若建立新文件,则选择NEW,即可进入编辑,存文件时,输入文件名,打开已有的文件则选择OPEN,并输入文件名。
进入编辑窗口后,可输入程序。
文件输入完毕后,用ALT键激活菜单,选择FILE菜单,用其中的SAVE将文件存盘。
输入程序举例:
FileEditSearchOption
DATASEGMENT
D1DB34H
D2DB56H
DATAENDS
SSEGSEGMENT
DB20DUP(?
)
SEGENDS
CSEGSEGMENT
ASUMECS:
CSEGDS:
DATASS:
SSEG
MOVAX,DATA
MOVDS,AX
MOVAl,D1
ADDAL,D2
CSEGENDS
MS-DOSEdjt<
F1=Help>
PressALTtoactivatemenusC00014:
009
4、用MASM.Exe程序产生.OBJ文件。
源文件QA.ASM建立后,要使用汇编程序对源文件汇编,汇编后产生二进制目标文件.OBJ文件。
操作如下:
MASMQA.ASM
屏幕上出现:
Microsoft(R)MacroAssemblerVersion4.00
Copyright(C)MicrosotCorp1981,1983,1984,1985.Allrightreserved.
Objectfilename[cxl.OBJ]:
Sourcelistmg[NUL.LST]
Cross-reference[NUL.CRF]~
cxl.asm(15):
error:
SymbolnotdefmedL
cxl.asm(16):
errorl0:
Syntaxerror
cxl.asm(24):
50912Bytessymbolspacefree
0WarningErrors
3SevereErrors
源程序的输入文件是AQ.ASM文件,输出文件有三个,即屏幕上要回答的中间三行,
对于Objectfilename[cxl.OBJ]:
回答:
回车
这样可在磁盘上可建立QA.OBJ文件。
对于Sourcelisting[NUL.LST]:
产生的是列表文件,这个文件同时列出源程序和机器语言程序清单,并给出符号表,可打印出做文档,可使文件调试方便,这个文件是可有可无的。
如不需要,回答:
如需要,回答:
QA,在磁盘上建立了QA.LST文件
对于Cross-reference[NUL.CRF]:
产生的是交叉引用表文件,对于一般程序无需建立此文件。
回答,回车
到此为止,汇编过程已完成,但这并不代表可进行下一步,因为汇编程序的一个重要功能是给出源程序的错误信息。
在此例中,可以看到源程序的错误类型有两类:
一类是警告错误(WarningErrors),这不影响程序的运行,但可能会得出错误的结果。
一类是严重错误(SevereErrors),指出汇编程序认为源程序有使汇编程序无法进行正确汇编的错误,必须进行修改。
括号里的数字给出有错误的行号,error后面的数字给出了错误类型及具体错误类型解释。
QA.ASM文件出现错误,无法形成.OBJ文件,必须重新进入EDIT进行修改。
5、编辑与修改
MASM>
ALT键激活菜单,进入FILE菜单,选择OPEN.打开文件,进行修改,修改完毕后存盘,退出EDIT,重新进行汇编,直至无错误为止。
注意:
汇编程序只能指出程序中的语法错误,无法指出逻辑错误。
6、用LINK.EXE程序产生.EXE文件,即可执行文件
用汇编程序产生的是二进制目标文件(.OBJ文件),并不是可执行文件,必须用链接程序(LINK.EXE),把.OBJ文件转换成可执行的.EXE文件。
具体操作如下;
A>
LINKQA
Microsoft(R)OverlayLinkerVersion3.51
Copyright(C)MicrosoftCorp1983,1984,1985,1986,Allrightsreserved.
RunFile[CXl.EXE]
ListFile[NUL.MAP]:
Libraries[.LIB]
对于RunFile[CXl.EXE]:
这样在键盘上建立了可执行文件QA.EXE。
对于ListFile[NUL.MAP]:
是形成列表文件,它给出每个段在存储器中的分配情况。
如不需要则回答:
QA
对于Libraries[.LIB]:
是输入库文件。
至此,链接完毕,链接程序给出的无堆栈警告信息,不影响程序的执行。
如链按时有其它错误,须检查修改程序,重新汇编、链接,直到正确。
7、程序的执行
QA.EXE文件形成后,可以直接在DOS下运行此程序。
A>
程序运行结束后,如结果正确,则实验顺利完成。
如果程序执行结果不正确或没有编制显示程序,无法看到程序运行结果,则需使用DEBUG来调试或查看运行结果。
8、程序的调试
①将QA.EXE装入
DEBUGQA.EXE
屏幕上出现一短线作为提示符
首先使用反汇编命令来确定装入的程序的段地址和偏移地址及所要的断点地址。
若源程序中使用了ORG定位命令,则用-Uaddress(ORG后面的偏移地址)
若没有使用ORG命令,则用
-U
263F:
0000883C26MOVAX,263C
263F:
00038ED8MOVDS,AX
0005883D26MOVAX,263D
00088ED0MOVSS,AX
000AA00000MOVAL,[0000]
000D02060100ADDAL,[0001]
001127DAA
00128AC8MOVCL,AL
0014A00200MOVAL,[0002]
001702060300ADDAL,[0003]
00lB27DAA
001C2AC8SUBCL,AL
262F:
001E8AClMOVAL.CL
屏幕的左边绐出了程序所在的段地址:
偏移地址
中间是机器语言指令,右边是汇编语言指令
用户可不断地使用U来找所要确定的断点地址
②运行程序
一G=程序起始地址
此选择用于选择不同的参量检查程序自的运行情况。
-g0000
11
Programterminatednormally
一G=程序起始地址断点地址l地址断点2地址
此选择用于使程序在指定位置停止执行,查看程序执行情况。
-g=0000.001e
AX=2663BX=0000CX=0011DX=0000SP=0014BP=0000SI=0000DI=0000DX=263CES=262CSS-=263DCS=263FIP=00lE
NVUPEIPLNZNAPENC
263F:
001E8AC1MOVAL,CL
程序:
程序停在01lCH处,同时显示所有寄存器和各标志寄存器的当前值,最后一行给出下一条将要执行指令的指令地址,机器语言和汇编语言。
如果从寄存器内容看不到结果,则需要D命令查看数据段的有关区域。
可以从寄存器的内容可得到DS寄存器的值,得到数据段的段地址,一般从偏移量000H开始查看。
-RDS
DS263C
-d263c:
263C:
00004034234000000000-0000000000000000
00100400310000000000-00003C2600001E00
00203F26772000000000-0000000000000000
0030B83C268ED8B83D26-8ED0A00000020601
004000278AC8A0020002-060300272AC88ACl
00502F8AD824F0B104D2-E804308AD0B402CD
0060218AC3240F04308A-D0B402CD2113004C
0070CD2122D3400422D3-402F21D3402F216B
其中左边给出每小段的起始地址(用段地址:
偏移量表示),然后顺序给出每小段中每个字节单元的内容,中间用十六进制表示,右边用字符表示:
如果查看结果正确,则用Q命令返回DOS。
-Q
如结果不正确,则用R命令修改IP寄存器内容到程序起始地址处,先用G命令将程序运行到关键易错部位后,用T单步跟踪命令进一步调试。
-g=0000,1001e
AX=2663BX=0000CX=0011DX=0000SP=0014BP=0000SI=0000DI=0000
DS=263CES=262CSS=263DCS=263FIP=001ENVUPEIPLNZNAPENC
001E8AClMOVAL,CL
-t
AX=2611BX=0000CX;
0011DX=0000SP=0014BP=0000SI=0000DI=0000
DS=263CES=262CSS=263DCS=263FIP=0020NVUPEIPLNZNAPENC
00202FDAS
AX=2611BX=0000CX=0011DX=0000SP=0014BP=0000SI=0000DI=0000
DS=263CES=262CSS=263DCS=263FIP=0021NVUPEIPLNZNAPENC
00218AD8MOVBL,AL
除上述命令外,DEBUG命令的详细说明,请查看其它参考书。
实验一数据传送
(验证性实验)
一、实验目的
1、熟悉实验环境。
2、熟悉8086指令系统的数据传送指令,进一步掌握传送指令的寻址方式。
二、实验仪器与器材
1、一台微型计算机、稳压电源
2、DV86H型微机原理与接口实验系统
三、实验内容
1、用PUSH指令将一组数据压入堆栈区,通过三种不同的出栈方式出栈,看出栈后数据的变化情况,并把结果填入表1-1-1中。
程序段:
MOVAX,0102H
MOVBX,0304H
MOVCX,0506H
MOVDX,0708H
PUSHAX
PUSHBX
PUSHCX
PUSHDX
第一种出栈方式
POPDX
POPCX
POPBX
POPAX
第二种出栈方式
第三种出栈方式
表1-1-1
第一种
第二种
第三种
(AX)=
(BX)=
(CX)=
(DX)=
2、验证下列指令,指出指令错误原因,并加以改正。
(1)MOV[BX],[SI]
(2)MOVAH,BX
(3)MOVAX,[SI][DI]
(4)MOVBYTEPTR[BX],2000H
(5)MOVCS,AX
(6)MOVDS,2000H
3、设各寄存器及存储单元的内容如下:
(DS)=0500H,(BX)=0010H,(SI)=0001H,(05010)=12H,(05011)=34H,(05012)=56H,(05013H)=78H,(05120)=ABH,(05121)=CDH,(05122H)=EFH
说明下列各条指令执行完毕后AX寄存器的内容,并上机验证。
(1)MOVAX,1200H
(2)MOVAX,BX
(3)MOVAX,DS:
[012