实验一 DEBUG的启动及其基本命令的使用.docx

上传人:b****6 文档编号:7123086 上传时间:2023-01-20 格式:DOCX 页数:18 大小:105.80KB
下载 相关 举报
实验一 DEBUG的启动及其基本命令的使用.docx_第1页
第1页 / 共18页
实验一 DEBUG的启动及其基本命令的使用.docx_第2页
第2页 / 共18页
实验一 DEBUG的启动及其基本命令的使用.docx_第3页
第3页 / 共18页
实验一 DEBUG的启动及其基本命令的使用.docx_第4页
第4页 / 共18页
实验一 DEBUG的启动及其基本命令的使用.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

实验一 DEBUG的启动及其基本命令的使用.docx

《实验一 DEBUG的启动及其基本命令的使用.docx》由会员分享,可在线阅读,更多相关《实验一 DEBUG的启动及其基本命令的使用.docx(18页珍藏版)》请在冰豆网上搜索。

实验一 DEBUG的启动及其基本命令的使用.docx

实验一DEBUG的启动及其基本命令的使用

实验一DEBUG的启动及其基本命令的使用

一、实验学时

1学时。

二、实验目的

掌握DEBUG的基本命令及其功能。

三、实验设备

计算机。

四、实验内容

DEBUG是专门为汇编语言设计的一种调试工具,它通过步进,设置断点等方式为汇编语言程序员提供了非常有效的调试手段。

1、DEBUG程序的启动

在DOS提示符下,可键入命令:

C>DEBUG[d:

][path][文件名][参数1][参数2]

其中文件名是被调试文件的名称,它须是执行文件(EXE),两个参数是运行被调试文件时所需要的命令参数,在DEBUG程序调入后,出现提示符“-”,此时,可键入所需的DEBUG命令。

在启动DEBUG时,如果输入了文件名,则DEBUG程序把指定文件装入内存。

用户可以通过DEBUG的命令对指定文件进行修改、显示和执行。

如果没有文件名,则是以当前内存的内容工作,或者用命名命令和装入命令把需要的文件装入内存,然后再用DEBUG的命令进行修改、显示和执行。

2、DEBUG的主要命令

(1)汇编命令A,格式为:

-A[地址]

该命令从指定地址开始允许输入汇编语句,把它们汇编成机器代码相继存放在从指定地址开始的存储器中。

(2)反汇编命令U,有两种格式:

1)-U[地址]

该命令从指定地址开始,反汇编32个字节,若地址省略,则从上一个U命令的最后一条指令的下一个单元开始显示32个字节。

2)-U范围

该命令对指定范围的内存单元进行反汇编,例如:

-U04BA:

01000108或–U04BA:

0100L9

此二命令是等效的。

(3)运行命令G,格式为:

-G[=地址1][地址2[地址3。

]]

其中地址1规定了运行起始地址,后面的若干地址均为断点地址。

(4)追踪命令T,有两种格式:

1)逐条指令追踪:

-T[=地址]

该命令从指定地址起执行一条指令后停下来,显示寄存器内容和状态值。

2)多条指令追踪:

-T[=地址][值]

该命令从指定地址起执行n条命令后停下来,n由[值]确定。

(5)显示内存单元内容的命令D,格式为:

-D[地址]或-D[范围]

(6)修改内存单元内容的命令E,它有两种格式:

1)用给定的内容代替指定范围的单元内容:

-E地址内容表

例如:

-E2000:

0100F3“XYZ”8D

其中F3,“X”“Y”“Z”和8D各占一个字节,用这五个字节代替原内存单元2000:

0100到0104的内容,“X”“Y”“Z”将分别按它们的ASCII码值代入。

2)逐个单元相继地修改:

-E地址

例如:

-E100:

18E4:

010089.78

此命令是将原100号单元的内容89改为78。

78是程序员键入的。

(7)检查和修改寄存器内容的命令R,它有三种方式:

1)显示CPU内部所有寄存器内容和标志位状态;格式为:

-R

R命令显示中标志位状态的含义如下表所示:

标志名

置位

复位

溢出Overflow(是/否)

OV

NV

方向Direction(减量/增量)

DN

UP

中断Interrupt(允许/屏蔽)

EI

DI

符号Sign(负/正)

NG

PL

零Zero(是/否)

ZR

NZ

辅助进位AuxiliaryCarry(是/否)

AC

NA

奇偶Parity(偶/奇)

PE

PO

进位Carry(是/否)

CY

NC

2)显示和修改某个指定寄存器内容,格式为:

-R寄存器名

例如打入:

-RAX

系统将响应如下:

AXFIF4

表示AX当前内容为F1F4,此时若不对其作修改,可按ENTER键,否则,打入修改后内容,如:

-RBX

BX0369

059F

则BX内容由0369改为059F

3)显示和修改标志位状态,命令格式为:

-RF

系统将给出响应,如

OVDNEINGZRACPECY-

这时若不作修改可按ENTER键,否则在“-”号之后键入修改值,键入顺序任意。

OVDNEINGZRACPECY-PONZDINV

(8)命名命令N,格式为:

-N文件名

此命令将文件名格式化在CS:

5CH的文件控制块内,以便使用L或W命令把文件装入内存进行调试或者存盘。

(9)装入命令L,它有两种功能:

1)把磁盘上指定扇区的内容装入到内存指定地址起始的单元中,格式为:

-L地址驱动器扇区号扇区数

2)装入指定文件,格式为:

-L[地址]

此命令装入已在CS:

5CH中格式化的文件控制块所指定的文件。

在用L命令前,BX和CX中应包含所读文件的字节数。

(10)写命令W,有两种格式:

1)把数据写入磁盘的指定扇区:

-W地址驱动器扇区号扇区数

2)把数据写入指定文件中:

-W[地址]

此命令把指定内存区域中的数据写入由CS:

5CH处的FCB所规定的文件中。

在用W命令前,BX和CX中应包含要写入文件的字节数。

(11)退出DEBUG命令Q,该命令格式为

Q

它退出DEBUG程序,返回DOS,但该命令本身并不把在内存中的文件存盘,如需存盘,应在执行Q命令前先执行写命令W。

五、实验要求:

用汇编语言编写一个计算“3+5”的加法程序

六、实验报告:

1.实验目的

 

2.程序清单

 

3.试验中出现的问题及解决方法

 

4.写出在DEBUG状态下编写、运行程序的过程以及调试所中遇到的问题是如何解决的,并对调试过程中的问题进行分析,对执行结果进行分析。

 

实验二仿真软件EMU8086的认识实验

一、实验学时

1学时。

二、实验目的

熟悉EMU8086的开发环境,为后续的汇编语言程序设计与调试运行做好准备。

三、实验设备

计算机。

四、实验内容

1.熟悉EMU8086开发环境的菜单命令以及工具栏按钮的功能。

2.熟悉汇编程序的编辑、编译、仿真运行及调试的基本过程。

五、实验步骤

1.进入EMU8086的开发环境,新建一个文件,使用“COMTemplate”选项。

2.在编辑窗口中的ORG100h后键入如下程序:

3.使用Emulate仿真功能编译程序并进入Emulator仿真界面。

如果编译过程中报错,请根据提示信息除错,然后重新编译直到通过。

4.在仿真界面中使用SingleStep单步执行程序,观察程序的运行状况及各寄存器的变化(蓝色高亮显示)。

利用ALU和FLAGS按钮可以查看运算过程及各标志位的变化情况。

5.程序运行结束后记录AX、BL和CX的值。

(重新加载程序请使用RELOAD按钮)。

6.更改源程序里AX的初始值为7FF8H,重复步骤3~5。

比较两次结果的不同之处,解释原因。

(数值转换查看功能在MATH菜单中)

7.对已讲授的各类汇编指令用上面的步骤调试运行,加深对指令功能及要点的掌握。

六、实验报告

1.实验目的

 

2.程序清单

 

3.试验中出现的问题及解决方法

 

4.无符号数和有符号数在汇编程序里如何区分?

 

实验三综合程序设计

一、实验学时

2学时。

二、实验目的

1、掌握分支、循环、子程序调用、DOS功能调用等基本的程序结构。

2、掌握综合程序的编制及调试方法。

三、实验设备

计算机。

四、实验内容

设有若干个学生考试成绩,试编制一个子程序,统计低于60分,60~69分,70~79分,80~89分,90~99分和100分的人数,并输出显示统计结果。

五、实验步骤

1.进入EMU8086的开发环境,新建一个文件,使用“EXETemplate”选项。

2.编写本程序,对上述成绩进行统计。

3.使用Emulate仿真功能编译、调试及运行。

4.记录正确的统计结果。

六.实验报告:

1.程序说明。

说明程序的功能、结构。

 

2.调试说明。

包括上机调试的情况、上机调试步骤、调试所遇到的问题是如何解决的,并对调试过程中的问题进行分析,对执行结果进行分析。

 

3.画出程序框图。

 

4.写出源程序清单和执行结果。

 

5.体会和意见。

 

附:

参考源程序

;******************************SORT.ASM**************************

DATASEGMENT

MES0DB‘92,85,74,81,70,68,65,78,54,43’,0AH,0DH

DB’94,100,83,88,79,83,79,69,62,60’,0AH,0DH,’$’

MES1DB‘SCORE[<60]:

’,’$’

MES2DB‘SCORE[<60-69]:

’,’$’

MES3DB‘SCORE[<70-79]:

’,’$’

MES4DB‘SCORE[<80-89]:

’,’$’

MES5DB‘SCORE[<90-99]:

’,’$’

MES6DB‘SCORE[=100]:

’,’$’

MES7DB‘TOTALNUMBER:

’,’$’

RESULTDB92,85,74,81,70,68,65,78,54,43

DB94,100,83,88,79,83,79,69,62,60

;----------------------------------------------------------------

TOTALDB00

S5DB00

S6DB00

S7DB00

S8DB00

S9DB00

S10DB00

DATAENDS

;----------------------------------------------------------------

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA

;----------------------------------------------------------------

START:

MOVAX,DATA

MOVDS,AX

MOVSI,OFFSETRESULT;送分类数据的指针

MOVAX,0020

COMP:

MOVAL,[SI]          ;取数据

CMPAL,60

JLFIVE           ;<60转FIVE入口处理

CMPAL,70

JLSIX           ;<70转SIX入口处理

CMPAL,80

JLESVEN          ;<80转ESVEN入口处理

CMPAL,90

JLEIGHT          ;<90转EIGHT入口处理

CMPAL,100

JLNINE           ;<100转NINE入口处理

CMPAL,100

JETEN           ;=100转TEN入口处理

JMPNEXT

FIVE:

MOVAL,[S5]

ADDAL,01          ;S5存入<60的个数

DAA

MOV[S5],AL

JMPNEXT

SIX:

MOVAL,[S6]

ADDAL,01          ;S6存入60-69的个数

DAA

MOV[S6],AL

JMPNEXT

SEVEN:

MOVAL,[S7]

ADDAL,01          ;S7存入70-79的个数

DAA

MOV[S7],AL

JMPNEXT

EIGHT:

MOVAL,[S8]

ADDAL,01          ;S8存入80-89的个数

DAA

MOV[S8],AL

JMPNEXT

NINE:

MOVAL,[S9]

ADDAL,01          ;S9存入90-99的个数

DAA

MOV[S9],AL

JMPNEXT

TEN:

MOVAL,[S10]

ADDAL,01          ;S10存入=100的个数

DAA

MOV[S10],AL

NEXT:

MOVAL,[T0TAL]

ADDAL,01

DAA

MOV[TOTAL],AL        ;TOTAL保存分类数据的个数

INCSI

LOOPCOMP

;----------------------------------------------------------------

MOVDX,OFFSETMES0      ;显示分类的结果

MOVAH,09H

INT21

MOVDX,OFFSETMES1

MOVAH,O9H

INT21H

MOVAL,[S5]

CALLDISP

MOVDX,OFFSETMES2

MOVAH,O9H

INT21H

MOVAL,[S6]

CALLDISP

MOVDX,OFFSETMES3

MOVAH,O9H

INT21H

MOVAL,[S7]

CALLDISP

MOVDX,OFFSETMES4

MOVAH,O9H

INT21H

MOVAL,[S8]

CALLDISP

MOVDX,OFFSETMES5

MOVAH,O9H

INT21H

MOVAL,[S9]

CALLDISP

MOVDX,OFFSETMES6

MOVAH,O9H

INT21H

MOVAL,[S10]

CALLDISP

MOVDX,OFFSETMES7

MOVAH,O9H

INT21H

MOVAL,[TOTAL]

CALLDISP

MOVAX,4C00H

INT21H

;----------------------------------------------------------------

DISPPROCNEAR          ;显示分类的结果子程序。

PUSHCX;用于将数据转换成ASCII码,

MOVBL,AL;并在屏幕上显示

ANDAL,0F0H

MOVCL,04

RORAL,CL

ADDAL,30H

MOVDL,AL

MOVAH,02H

INT21H

MOVAL,BL

ANDAL,OFH

ADDAL,30H

AMVDL,AL

MOVAH,02H

INT21H

MOVDL,0DH

MOVAH,O2

INT21H

MOVDL,0AH

MOVAH,02

INT21H

POPCX

RET

DISPENDP

CODEENDS

ENDSTART

 

实验四存储器(RAM6264)扩展

一、实验学时

2学时。

二、实验目的

1.熟悉随机存储器RAM6264的使用方法及计算机扩展存储器的方法。

2.了解PC机62芯总线信号的定义及其选用方法。

3.掌握对外部存储器进行读、写的编程方法。

4.学习用软件编辑、汇编、连接和调试源程序。

三、实验设备

计算机;微机原理实验系统;RAM6264芯片。

四、实验内容

1.设计扩展一片数据存储器6264芯片实验系统的外部存储器。

2.设计一段程序,将一组数据(00H,01H,02H,…,0FEH,0FFH)传送到扩展的外部数据存储器6264中去。

五、实验原理

6264是8K×8位的静态随机读写存储器。

微处理器通过数据总线、地址总线和控制总线与存储器连接。

6264有13条地址线A0~A12。

其片选信号由译码电路产生。

计算机通过总线信号MEMR、MEMW对6264进行读写处理。

六.编程提示

1.通过实验接线图,确定扩展的6264在实验系统中的地址范围。

2.扩展的6264的段地址送入段寄存器DS,偏移地址送入BX。

七.实验步骤

1.按实验要求连接硬件线路;

2.编辑按实验要求设计的汇编语言源程序;

3.汇编、连接汇编语言源程序生成可执行文件;

4.装载可执行文件,调试、运行程序并检验、记录结果;

八.预习要求

1.复习有关存储器及其扩展的内容;

2.复习PC机62芯总线信号的内容;

3.按照实验要求事先设计好有关硬件线路;

4.按照实验要求事先设计、编写好汇编语言源程序。

九.实验报告

1.画出硬件原理图,分析各部分的功能。

 

2.写出程序清单并进行注释。

 

3.画出程序流程框图。

 

4.分析调试、运行结果。

 

5.RAM6264的存储空间有多大?

寻址范围是多少?

实验五8259A中断控制器实验

一、实验学时:

2学时。

二、实验目的:

1.了解8259A中断控制器的工作原理。

2.了解PC机中断的原理和过程。

3.学会中断处理程序的编写。

三、实验设备:

EAT598三合一实验箱,或其他微机原理与接口技术类试验箱(台);计算机;各种连接线。

四、实验内容

1.实验电路

2.实验连线

+PLUSE接8259的INT_0;8259上的INT接EAT598_88CPU板上的INTR;8259上的INTA59接EAT598_88CPU板上的88/INTA;CS8259接200H。

3.实验方法

(1)运行LCA88软件后,先加载主程序。

打开示例程序8259A_88.ASM,在“设置”-“仿真机”中设置加载地址为8100:

0,“编译”-“编译连接”。

再打开中断服务程序IRQ0_88.ASM,加载地址设为8200:

0,编译连接。

(2)“窗口”-“对话窗口”,键入“SW0:

0020↙”,“0000,8200”,“G8100:

0↙”,“Y”。

此时数码管显示“IRQ”,说明中断设置准备完毕,可以开始进入中断

(3)按下21模块的白色按键,进入中断,数码管显示“IRQ0”,中断服务程序执行完毕后,数码管显示“E_IRQ”。

4.实验程序框图

五、实验报告

1.实验目的

 

2.程序清单

 

3.试验中出现的问题及解决方法

 

4.画出实验模块电路并标出实验连线。

 

5.试叙述基于8086/8088的微机系统处理硬件中断的过程。

 

6.8259A中断控制器的功能是什么?

实验六数模与模数转换接口实验

一、实验学时:

2学时。

二、实验目的:

1.了解D/A转换的基本原理。

2.掌握DAC0832芯片的性能、使用方法及对应硬件电路。

3.掌握A/D芯片AD0809的转换性能及编程方法。

4.学习A/D芯片与其他芯片(如8279)接口的方法,初步建立系统的概念。

三、实验设备:

EAT598实验箱,或其他微机原理与接口技术类试验箱(台);计算机;各种连接线。

四、实验内容

1.实验电路

a.数模转换

b.模数转换

2.实验连线

数模转换

DAC0832的片选CS0832孔接译码处228H孔;用示波器测量Vout脚波形。

模数转换

CS0809插孔接译码处208H插孔;0809的IN0接至

模块电位器中心抽头Wout(即0~5v)孔。

模块中的十个短路套都套8279侧。

3.实验程序编写说明

数模转换

编制程序循环产生一系列数据,将这些数据传送给数模转换模块后转换成相应的电压,用示波器将这些电压显示出来即可。

要求循环输出三角波、锯齿波、方波。

模数转换

编制程序要求0809循环采样,并将转换后的数字量(0-255)转化为0-15,编码后用数码管显示(0-F)。

五、实验报告

1.实验目的

 

2.程序清单

 

3.试验中出现的问题及解决方法

 

4.编写实验所需的数模、模数转换程序。

 

5.若一个D/A芯片的满量程(对应于数字量255)为10V。

若是输出信号不希望从0增长到最大,而是有一个下限2.0V,增长到上限8.0V。

分别确定上下限所对应的数。

 

6.A/D芯片为什么要进行采样?

采样频率应根据什么选?

 

高等教育自学考试实验报告评分栏

完成实验数量:

___________________________________________

实验单位:

_______________________________________(公章)

实验日期:

___________________________________________

指导教师:

___________________________________________

指导教师初评成绩:

_______________________________________

主考院校审定成绩:

_______________________________________

审定成绩时间:

___________________________________________

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

当前位置:首页 > 幼儿教育 > 幼儿读物

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1