南昌航空大学微机原理与接口技术实验报告8次.docx

上传人:b****3 文档编号:4957269 上传时间:2023-05-07 格式:DOCX 页数:30 大小:986.84KB
下载 相关 举报
南昌航空大学微机原理与接口技术实验报告8次.docx_第1页
第1页 / 共30页
南昌航空大学微机原理与接口技术实验报告8次.docx_第2页
第2页 / 共30页
南昌航空大学微机原理与接口技术实验报告8次.docx_第3页
第3页 / 共30页
南昌航空大学微机原理与接口技术实验报告8次.docx_第4页
第4页 / 共30页
南昌航空大学微机原理与接口技术实验报告8次.docx_第5页
第5页 / 共30页
南昌航空大学微机原理与接口技术实验报告8次.docx_第6页
第6页 / 共30页
南昌航空大学微机原理与接口技术实验报告8次.docx_第7页
第7页 / 共30页
南昌航空大学微机原理与接口技术实验报告8次.docx_第8页
第8页 / 共30页
南昌航空大学微机原理与接口技术实验报告8次.docx_第9页
第9页 / 共30页
南昌航空大学微机原理与接口技术实验报告8次.docx_第10页
第10页 / 共30页
南昌航空大学微机原理与接口技术实验报告8次.docx_第11页
第11页 / 共30页
南昌航空大学微机原理与接口技术实验报告8次.docx_第12页
第12页 / 共30页
南昌航空大学微机原理与接口技术实验报告8次.docx_第13页
第13页 / 共30页
南昌航空大学微机原理与接口技术实验报告8次.docx_第14页
第14页 / 共30页
南昌航空大学微机原理与接口技术实验报告8次.docx_第15页
第15页 / 共30页
南昌航空大学微机原理与接口技术实验报告8次.docx_第16页
第16页 / 共30页
南昌航空大学微机原理与接口技术实验报告8次.docx_第17页
第17页 / 共30页
南昌航空大学微机原理与接口技术实验报告8次.docx_第18页
第18页 / 共30页
南昌航空大学微机原理与接口技术实验报告8次.docx_第19页
第19页 / 共30页
南昌航空大学微机原理与接口技术实验报告8次.docx_第20页
第20页 / 共30页
亲,该文档总共30页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

南昌航空大学微机原理与接口技术实验报告8次.docx

《南昌航空大学微机原理与接口技术实验报告8次.docx》由会员分享,可在线阅读,更多相关《南昌航空大学微机原理与接口技术实验报告8次.docx(30页珍藏版)》请在冰点文库上搜索。

南昌航空大学微机原理与接口技术实验报告8次.docx

南昌航空大学微机原理与接口技术实验报告8次

南昌航空大学

信息工程学院

实验报告

课程名称:

微机原理与接口技术_

学号:

______________

姓名:

______________

指导教师:

_周卫民_________________

成绩:

________________________

 

南昌航空大学实验报告

课程名称:

微机原理实验名称:

调试程序DEBUG的使用

班级:

学生姓名:

学号:

教师评定:

签名:

一、实验要求:

调试程序DEBUG的使用。

二、实验内容:

DEBUG.EXE是DOS提供的用于调试可执行程序的工具软件,是汇编语言程序设计中常用的调试工具。

在DEBUG环境下,不但可以调试经汇编、连接后生成的可执行程序,也可以编写简单的程序。

①在DOS提示符下键入:

DEBUG↙(表示回车)

Debug执行,屏幕显示提示符“-”,说明计算机

当前处于DEBUG的管理之下,可接受、并执行

DEBUG命令。

②在DOS提示符下键入:

DEBUG[路径\]文件名↙DEBUG执行,并将指定文件装入内存,供调试。

如不指定被调试程序,DEBUG设置所有段寄存器的值相同,并指向最低的、可用的段地址;SP指向本段的尾部;IP指向本段的0100H单元;其它通用寄存器和所有状态标志清0。

如带入的被调试程序扩展名不是.EXE,则BX、CX包含被调试文件长度(字节数,BX为高位),其他同上。

(带入.COM程序同此)

如带入的被调试程序扩展名是.EXE,则需要重新定位。

DS=ES指向当前最低的、可用的段地址(PSP的首字节);CS:

IP和SS:

SP根据被调试程序确定,分别指向代码段和堆栈段;BX.CX为文件长度,其它通用寄存器和状态标志清0。

演示:

DEBUG的两种启动方法

1.命令格式命令字母[参数]

字母不分大小写;只使用16进制数,不加H;分割符只在两个数值之间是必须的,命令和参数之间可有可无;键入回车键执行命令,Ctrl+Break或Ctrl+C中止命令的执行;如命令不符合DEBUG的规则,则提示“error”并使用“^”指示错误位置。

2.参数格式

①表示地址(逻辑地址):

段地址:

偏移地址D0400:

2500D10ac:

0Dds:

04Dcs:

100

偏移地址D2505D100;DEBUG认为输入的是偏移地址,段地址采用默认的段寄存器,不同的命令默认不同的段寄存器,例如汇编命令默认CS,显示数据命令默认DS。

既不送段地址,也不送偏移地址,段地址采用默认的段寄存器,偏移地址采用当前值。

只送段地址,省略偏移地址,非法。

如DDS:

或D0400:

②表示范围

开始地址结束地址

如“DDS:

050”,“D2AC0:

100200”,“D100120”

注意:

结束地址不能带段地址,开始地址L字节长度。

如“DDS:

0L10”,“D100L20”

命令索引

D命令E命令F命令R命令A命令U命令G命令T命令P命令Q命令N命令L命令W命令C命令H命令S命令I命令O命令M命令

§3.DEBUG命令

1.显示命令D

①D[地址]

②D[范围];如不指定范围,一次显示8行×16个字节。

-D;默认段寄存器为DS,当前偏移地址

-DDS:

100/-DCS:

200

-D200:

100

-D200;200为偏移地址,默认段寄存器DS

-DDS:

100110/-D100L10

2.修改命令E

①E地址;从指定地址开始,修改(或连续修改)存储单元内容。

DEBUG首先显示指定单元内容,如要修改,可输入新数据;空格键显示下一个单元内容并可修改,减号键显示上一个单元内容并可修改;如不修改,可直接按空格键或减号键;回车键结束命令。

②E地址数据表;从指定的地址开始用数据表给定的数据修改存储单元。

-EDS:

100F3‘AB’8D。

3.添充命令F

F范围数据表;将数据表写入指定范围的存储单元;数据个数多,忽略多出的数据,个数少,则重复使用数据表。

-FDS:

0L501,02,03,04,05

-FDS:

0L50102030405(空格分隔)

-FDS:

0L5FF;5个字节重复使用FF

注意和E命令的区别:

E地址数据表

4.显示修改寄存器命令R

①R;★显示所有寄存器和标志位状态;

★显示当前CS:

IP指向的指令。

显示标志时使用的符号:

标志标志=1标志=0

OFOVNV

DFDNUP

IFEIDI

SFNGPL

ZFZRNZ

AFACNA

PFPEPO

②R寄存器名;显示并修改指定的寄存器。

RAX;RIP;RF等

5.汇编命令A

A[地址];从指定的地址开始输入符号指令;如省略地址,则接着上一个A命令的最后一个单元开始;若第一次使用A命令省略地址,则从当前CS:

IP开始(通常是CS:

100)。

注释:

①在DEBUG下编写简单程序即使用A命令。

②每条指令后要按回车。

③不输入指令按回车,或按Ctrl+C结束汇编。

④支持所有8086符号硬指令,伪指令只支持DB、DW,不支持各类符号名。

6.反汇编命令U

①U[地址];从指定地址开始反汇编32个字节的机器指令;省略地址时,则接着上一个U命令的最后一个单元开始;若第一次使用U命令省略地址,则从当前CS:

IP开始(通常是CS:

100)。

②U范围;对指定范围的单元进行反汇编。

-U

-U100

-U100L10

6.反汇编命令U

①U[地址];从指定地址开始反汇编32个字节的机器指令;省略地址时,则接着上一个U命令的最后一个单元开始;若第一次使用U命令省略地址,则从当前CS:

IP开始(通常是CS:

100)。

②U范围;对指定范围的单元进行反汇编。

-U

-U100

-U100L10

7.运行程序命令G

①G;从CS:

IP指向的指令开始执行程序,直到程序结束或遇到INT3。

②G=地址;从指定地址开始执行程序,直到程序结束或遇到INT3。

③G断点1[,断点2,…断点10];从CS:

IP指向的指令开始执行程序,直到遇到断点。

④G=地址断点1[,断点2,…断点10]

-G;从CS:

IP指向的指令开始执行程序。

-G=100;从指定地址开始执行程序。

-G=100105110120

注释:

1)最多可设置10个断点。

2)断点必须设置在一条指令的首字节。

3)如设置了多个断点,程序在第一个断点停下后,显示寄存器、标志及下一条要执行的指令,再次输入G命令,程序继续往下执行,直到下一个断点或程序结束。

4)程序如有错误,执行时可能造成死机。

8.跟踪命令(单步执行命令)T

①T;从当前IP开始执行一条指令。

②T数值;从当前IP开始执行多条指令。

②T=地址;

③T=地址数值;

-T

-T5/-T=1005

9.跟踪执行并跳过子程序命令P

P[=地址][数值];类似T命令,但跳过子程序

和中断服务程序。

10.退出DEBUG命令Q

Q;返回DOS环境。

-Q

11.命名命令N

N文件标示符;指定文件,以便用W命令在磁盘上生成该文件,或者用L命令从磁盘装入该文件。

-NMY_PRO.COM

写盘:

在当前盘当前目录生成指定文件。

读盘:

在当前盘当前目录读取指定文件。

-NA:

\USER\MY_PRO.COM

12.装入命令L

①L[地址];装入N命令指定的文件,默认的内存地址为CS:

100。

-NMY_PRO.COM

-L

②L地址驱动器号扇区号扇区数;将某驱动器的若干扇区(最多80H个)装入内存;0=A,1=B,

2=C……;默认的段地址为CS。

-LDS:

200201

13.写盘命令W

①W[地址];将指定地址开始的内存数据写入磁盘,生成N命令指定的文件;默认的内存地址为CS:

100;写盘的字节数由BX(高位字)和CX(低位字)决定,可执行程序写盘时,文件扩展名应指定.COM。

-NMY_PRO.COM

-W

②W地址驱动器号扇区号扇区数;将内存数据写入磁盘的若干扇区(最多80H);默认的段地址为CS。

-WDS:

0201

注释:

写磁盘扇区要慎用。

14.其他命令

*比较命令C

C范围地址;将指定范围内的内容与以指定地址为起点的内容相比较。

*16进制数计算命令H

H数1,数2(H数1数2);同时计算两个数字的和与差。

*查找命令S

S范围数据;在指定范围内查找指定数据。

*输入命令I

I端口地址;输入一个字节并显示。

*输出命令O

O端口地址字节数据;输出到指定的端口。

*传送命令M

M范围地址;将指定范围的内容传送到以指

定地址为起点的存储单元。

三、实验体会:

通过本次实验,练习了各条常用DEBUG命令的使用,同时也在DBBUG条件下,运行了一些代码,能够得到理想中的答案,同时也发现指令中的值须全部转化为16进制的值,那样才能正常的运行。

同时也加深了自己对指令的理解。

南昌航空大学实验报告

课程名称:

微机原理实验名称:

完整汇编源程序的上机过程

班级:

学生姓名:

学号:

教师评定:

签名:

一、实验要求:

学会完整汇编源程序的上机过程和常用的DOS命令。

二、实验内容:

编写一段汇编源程序,在MASM中运行。

同时学会对MASM的灵活运用。

三、实验步骤:

3.1编辑录入源程序

EDIT[[盘符][路径]程序基本名。

ASM]

例如:

D:

\language\MASM50>editaa.asm

3.2汇编

汇编指令格式如下:

MASM[[盘符][路径]程序基本名[.ASM]]

例如:

D:

\language\MASM50>masmaa

若没有错误显示如下:

Microsoft(R)MacroAssmblerVersion5.10

Copyright(C)MicrosoftCorp1981,1988,Allrightsreserved.

Objectfilename[aa.OBJ]:

Sourselisting[NUL.LST]:

Cross-reference[NUL.CRF]:

49576+420869Bytessymbolspacefree

0WarningErrors

0SevereErrors

若有错时则会显示出相应错误信息,如下:

AA.ASM(6):

WarningA4001:

Extracharactersonline

AA.ASM(7):

errorA2062:

MissingorunreachableCS

AA.ASM(8):

errorA2009:

Symbolnotdefined:

DI

49510+411821Bytessymbolspacefree

1WarningErrors

2SevereErrors

3.3连接

连接命令格式如下:

LINK[[盘符][路径]程序基本名[.OBJ]]

例如:

D:

\language\MASM50>linkaa

连接显示信息如下:

Microsoft(R)OverlayLinkerVersion3.64

Copyright(C)MicrosoftCrop1983-1988.Allrightsreserved.

RunFlie[AA.EXE]

ListFile[NUL.MAP]

Libraries[.LIB]

LINK:

warningL4021:

nostacksegment;

3.4运行

运行命令的格式如下:

[盘符][路径]程序基本名[.EXE]

例如:

P:

\(language\MASM50)AA

调试运行的格式如下:

[盘符][路径]DEBUG[盘符][路径]程序基本名.EXE

如执行DEBUGAA.EXE

3.5其他用到的DOS命令

DIR[盘符][路径][文件名]

MD[盘符][路径]新目录名

CD[盘符][路径]

四、实验体会

通过本次实验,理解了用汇编语言编写的指令在MASM中的运行情况。

对它的步骤有了一定的了解以及使用。

南昌航空大学实验报告

课程名称:

微机原理实验名称:

两个多位十进制数相加

班级:

学生姓名:

学号:

教师评定:

签名:

四、实验目的:

熟悉对DVCC实验系统的使用。

五、实验内容:

本程序将两个多位十进制数相加,其中加数与被加数均以ASCII码形式存放在以DATA1和DATA2为首的5个内存单元中,相加结果被送回DATA1处。

程序中先要把加数与被加数由十进制ASCII码转化为十六进制的数字串,然后将他们进行带进位相加并做AAA调整,然后将结果保存。

六、程序清单:

定义堆栈段:

STACK_SEGSEGMENTPARASTACK

'STACK'DB100DUP(?

STACK_SEGENDS

;定义数据段

DATA_SEGSEGMENTPARAPUBLIC'DATA'

;定义被加数与加数(DATA1\DATA2)的存放(低位在前):

DATA1DB'4','A','5','9','C'

DATA2DB'6','8','1','6','B'

DATA_SEGENDS

;定义代码段

CODE_SEGSEGMENTPARAPUBLIC'CODE'

MAINPROCFAR

ASSUMECS:

CODE_SEG,DS:

DATA_SEG,SS:

STACK_SEG

START:

PUSHDS

MOVAX,0

PUSHAX

MOVAX,DATA_SEG

MOVDS,AX

MOVSI,PFFESTDATA1

MOVDI,OFFESTDATA2

CALLADDA

RET

MAINENDP

ADDAPROCNEAR

MOVDX,SI

MOVBP,DI

MOVBX,05H

AD1:

SUBBYTEPTR[SI+BX-1]

SUBBYTEPTR[DI+BX-1]

DECBX

JNZAD1

MOVSI,DX

MOVDI,BP

MOVCX,05H

CLC

AD2:

MOVAL,[SI]

MOVBL,[DI]

ADCAL,BL

AAA

MOV[SI],AL

INCSI

INCDI

LOOPAD2

MOVSI,DX

MOVBX,05H

AD3:

ADDBYTEPTR[SI+BX-1],30H

ADDBYTEPTR[DI+BX-1],30H

DECBX

JNZAD3

RET

ADDAENDP

CODE_SEGENDS

ENDSTART

七、实验体会:

通过本次实验学会了对DVCC实验系统的使用。

同时编写了一个代码,在DVCC实验系统上编译,发现如果编译成功的话,出现的结果会是errornotincluded.一旦出现错误就需要根据所在的行进行结果。

至于实验的结果由于还没有连接硬件和以上程序没有显示的代码。

所以在masm下演示出结果。

南昌航空大学实验报告

课程名称:

微机原理实验名称:

硬件实验

班级:

学生姓名:

学号:

教师评定:

签名:

一、实验目的:

加深理解逐次逼近模数转换器的特征和工作原理,掌握ADC0809的接口方法以及A/D输入程序的设计和调试方法。

二、实验内容:

2.1系统硬件安装(各种开关设置和连线必须在断电状态下进行)

2.1.1设置实验台开关:

开关名称

开关位

ON/OFF

KB1

1--5

6--10

OFF

ON

KB2

1--2

OFF

KB3

1--8

OFF

KB4

1--8

ON

KB5

1--8

ON

KBB卧式

86

KBB立式

86

2.1.2设置短路块:

DL3-DL4:

3-4位相联

2.1.3安装插板:

将88CPU卡插入J6和J9;

2.1.4实验台通电:

打开实验台电源,显示闪烁的‘P’为正常;否则,不正常,关掉电源检查。

2.2当DVCC微机仿真实验系统独立工作时

八、将固化区EPROM中实验程序目标码传送到仿真RAM区,操作如下:

输入0后按F1键,再输入0FFF后按F2键,再输入0后按EPMOV稍等,系统返回初始状态,显示“P.”。

九、按F2键进入仿真1态,仿真实验系统显示闪动“P.................."时,根据表一所示,通过键盘输入实验程序的起始地址0030H,再按执行键EXEC,表示连续运行该程序,稍后,按RESET键退出运行,如果以单步运行程序,则输入0300后,按STEP键,按一次执行一条语句,直到执行到003CH为止,按MON键退出运行,如果以断电运行程序,则先输入003C,再按F1键,再输入0030,然后再按EXEC键执行程序,当执行到003CH时自动停下来,此时按MON键退出。

十、用存储器读写方法检查7000H-70FFH中的内容应为00H。

三、实验体会:

通过本次实验,对硬件的设置有了一定的了解,同时通过硬件上的键盘输入相应的数据,得到与理论上相同的结果。

由于实验箱上缺少一些按钮和有些数码管的路线坏了,导致无法得到理想中的结果。

但是可以很确定它的有效性,得到验证。

南昌航空大学实验报告

课程名称:

微机原理实验名称:

并行口8255A应用

班级:

学生姓名:

学号:

教师评定:

签名:

一、实验目的:

进一步掌握8255A可编程并行口使用方法。

二、实验内容:

1、实验原理

PB4~PB7和PC0~PC7分别为发光二极管电路L1~L12相连,本实验为模拟交通灯实验。

交通灯的亮灭规律如下:

设有一个十字路口,1、3为南北方向,2、4为东西方向,初始为四个路口的红灯全亮,之后,1、3路口的绿灯亮,2、4路口的红灯亮,1、3路口方向通车:

延时一段时间后,1、3路口的绿灯熄灭,而1、3路口的黄灯开始闪烁,闪烁若干次以后,1、3路口红灯亮,而同时2、4路口的绿灯亮,2、4路口方向通车;延时一段时间后,2、4路口的绿灯熄灭,而黄灯开始闪烁,闪烁若干次后,再切换到1、3路口方向,之后重复上述过程。

8255A的PB4~PB7对应黄灯,PC0~PC3对应红灯,PC4~PC7对应绿灯。

8255A工作于模式0,并置为输出。

由于各发光二极管为反向驱动,使其点亮使8255A相应端口置1.

2、实验线路连接

L1---PC0L4---PC1L7----PC2L10---PC3

L2---PB4L5---PB5L8----PB6L11---PB7

L3---PC4L6--PC5L9---PC6L12--PC7

三、实验步骤:

运行实验程序:

单机时,实验程序起始地址为F000:

90E0。

在系统显示监控提示符“P."时:

输入F000按F1键输入90E0按EXEC键在系统上显示执行符"T",同时L1~L12发光二级管模拟交通灯显示。

四、实验结果:

通过观察L1~L12发光二级管的灯的亮灭情况,发现与本实验要求的交通灯的亮灭规律情况一样。

在实验中,假设L1~L3和L7~L9的亮灯情况完全一样,同理也可验证其他的灯。

十一、实验参考程序:

ORG0630H;?

HA4S:

MOVSP,#60H

MOVDPTR,#0FF2BH

MOVA,#80H

MOVX@DPTR,A

MOVDPTR,#0FF29H

MOVA,#49H

MOVX@DPTR,A

INCDPTR

MOVA,#49H

MOVX@DPTR,A

MOVR2,#25H

LCALLDELAY

HA4S3:

MOVDPTR,#0FF29H

MOVA,#08H

MOVX@DPTR,A

INCDPTR

MOVA,#61H

MOVX@DPTR,A

MOVR2,#55H

LCALLDELAY

MOVR7,#05H

HA4S1:

MOVDPTR,#0FF29H

MOVA,#04H

MOVX@DPTR,A

INCDPTR

MOVA,#51H

MOVX@DPTR,A

MOVR2,#20H

LCALLDELAY

MOVDPTR,#0FF29H

MOVA,#00H

MOVX@DPTR,A

INCDPTR

MOVA,#41H

MOVX@DPTR,A

MOVR2,#20H

LCALLDELAY

DJNZR7,HA4S1

MOVDPTR,#0FF29H

MOVA,#03H

MOVX@DPTR,A

INCDPTR

MOVA,#0cH

MOVX@DPTR,A

MOVR2,#55H

LCALLDELAY

MOVR7,#05H

HA4S2:

MOVDPTR,#0FF29H

MOVA,#02H

MOVX@DPTR,A

INCDPTR

MOVA,#8aH

MOVX@DPTR,A

MOVR2,#20H

LCALLDELAY

MOVDPTR,#0FF29H

MOVA,#02H

MOVX@DPTR,A

INCDPTR

MOVA,#08H

MOVX@DPTR,A

MOVR2,#20H

LCALLDELAY

DJNZR7,HA4S2

LJMPHA4S3

DELAY:

PUSH02H

DELAY1:

PUSH02H

DELAY2:

PUSH02H

DELAY3:

DJNZR2,DELAY3

POP02H

DJNZR2,DELAY2

POP02H

DJNZR2,DELAY1

POP02H

DJNZR2,DELAY

RET

END

南昌航空大学实验报告

课程名称:

微机原理实验名称:

定时、计数器8253A应用

班级:

学生姓名:

学号:

教师评定:

签名:

一、实验目的:

学习8253A可编程定时、计数器与8088CPU的接口方法;了解8253A的工作方式;掌握8253A在各种方式下的编程方法。

二、实验内容:

1、实验原理

8253A的A0、A1接系统地址总线A0、A1,故8253

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 幼儿教育 > 唐诗宋词

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2