微机原理实验指导书
微机原理实验指导书
实验一初级程序的编写与调试
一、实验目的
1、熟练掌握的DEBUG常用命令,学会用DEBUG调试程序;
2、深入了解数据在存储器中的存取方法,及堆栈中数据的压入与
弹出;
3、掌握各种寻址方法以及简单指令的执行过程。
二、实验内容
1、设堆栈指针SP=2000H,AX=3000H,BX=5000H,请编一程序
段将AX的内容和BX的内容进行交换。请用堆栈作为两寄存
器交换内容的中间单元,用DEBUG调试程序进行汇编与调试。
2、设DS=当前段地址,BX=0300H,SI=0002H,请用DEBUG的
命令将存储器偏移地址300H—304H连续单元顺序装入0AH、
OBH、0CH、0DH、0EH。在DEBUG状态下送入下面程序,
并用单步执行的方法,分析每条指令源地址的形成过程。当每
条数据传送完毕时,AX中的内容是什么。
程序清单如下:
MOV AX,BX
MOV AX,0304H
MOV AX,[0304H]
MOV AX,[BX]
MOV AX,0001[BX]
MOV AX,[BX][SI]
MOV AX,0001[BX][SI]
HLT
3、设AX=0002H,编一个程序段将AX的内容乘10,要求用移位
的方法完成。
三、实验要求
1、实验前要做好充分准备,包括汇编程序清单、调试步骤、调试
方法,对程序结果的分析等。
2、本实验要求在PC机上完成。
3、本实验只要求在DEBUG调试程序状态下进行,包括汇编程序,
调试程序,执行程序。
4、编程提示:
(1)、实验内容1
将两个寄存器内容进行交换时,必须有一个中间寄存器才能进行内容的交换。如果用堆栈作为中间存储单元,必须遵循先进后出的原则。
微机原理实验学生实验指导书
微型计算机原理实验指导书
河北大学电子信息工程学院
2017年10月
目录
实验一系统认识及编程初步实验 (1)
实验二输入输出程序设计实验 (7)
实验三8255并行接口实验 (9)
实验四8259中断控制实验 (13)
实验五8254定时/计数器应用实验 (19)
实验六综合实验 (24)
实验一系统认识及编程初步实验
一、实验目的
1. 掌握TD系列微机原理及接口技术教学实验系统的操作,熟悉Wmd86联机集成开发调试软件的操作环境。
2. 掌握使用运算类指令编程及调试方法。
3. 学习使用软件监视变量的方法。
二、实验设备
PC机一台,TD-PITE实验装置一套。
三、实验内容
(一)基础实验
1. 系统认识实验
编写实验程序,将00H~0FH共16个数写入内存3000H开始的连续16个存储单元中。
2. 运算编程实验
80X86指令系统提供了实现加、减、乘、除运算的基本指令,可对表1-1所示的数据类型进行算术运算。本实验以二进制双精度加法运算为例,计算X+Y=Z,将结果Z存入某存储单元。
表1-1 数据类型算术运算表
(二)提高实验
1. 在系统认识实验中,编写程序,将内存3500H单元开始的8个数据复制到3600H单元开始的数据区中。通过调试验证程序功能,使用E命令修改3500H单元开始的数据,运行程序后使用D命令查看3600H单元开始的数据。
2. 在运算编程实验中,求累加和程序设计,在偏移地址为1000H开始依顺序填入16个字(16个16位数),利用程序求和,存放在偏移地址2000H。
四、实验步骤
(一)系统认识实验
1. 运行Wmd86软件,进入Wmd86集成开发环境。
微机原理实验指导书-5
微机原理实验指导书
(版本0.1)
余有灵副教授
控制科学与工程系
2007年12月11日
说明
本实验指导书是依据西安唐都科教仪器公司的产品手册编制,在实验中心相关领导和实验工作人员的帮助下完成的,在此表示感谢。
本次实验包括三个实验系统。任意完成其中两个即可。但严重建议都完成三个实验。
实验5-1 8254定时/计数器应用实验
1.实验目的
(1)掌握8254的工作方式及应用编程。
(2)掌握8254的典型应用电路接法。
2.实验设备
PC微机一台、TD-PIT+ 实验系统一套。
3.实验内容
(1)计数应用实验。编写程序,应用8254的计数功能,用开关模拟
计数,使每当按动KK1-五次后,产生一次计数中断,并在屏幕
上显示一个字符…5‟。
(2)定时应用实验。编写程序,应用8254的定时功能,实现一个秒
表计时并在屏幕上显示。
4.实验原理
8254是Intel公司生产的可编程间隔定时器。是8253的改进型,比8253具有更优良的性能。8254具有以下基本功能:
(1)有3个独立的16位计数器;
(2)每个计数器可按二进制或十进制(BCD)计数;
(3)每个计数器可编程工作于6种不同工作方式;
(4)8254每个计数器允许的最高计数频率为10MHz(8253为2MHz);
(5)8254有读回命令(8253没有),除了可以读出当前计数单元的内
容外,还可以读出状态寄存器的内容。
(6)计数脉冲可以是有规律的时钟信号,也可以是随机信号。计数初
值公式为n=fCLKi÷fOUTi、其中fCLKi是输入时钟脉冲的频率,
fOUTi是输出波形的频率。
微机原理实验指导书
一、众友实验箱简介
1、系统组成
A、CPU
8088CPU。
B、系统存储器
EEPROM、SRAM。
C、接口芯片及实验模块
8250、8251、8253、8255、8259、8279、ADC0809、DAC0832、RAM6116、直流电机、步进电机模块、LED显示模块、键盘单元、音响模块、继电器模块、开关量输出及0-1指示模块、单脉冲触发器等。
D、外设接口
外接实验扩展板接口。
E、系统电源
带双重保护功能的开关电源。
2、系统功能与特点
A、该系统是基于DOS系统的,具有DOS操作系统内核;
B、该系统能使用通用键盘作为基本的输入工具;
C、该系统可以进行联机调试;也可单独处于脱机状态调试;脱机状态时可以进行类似DOS的DEBUG调试;
D、该系统可以在源程序级进行调试;
E、该系统功能齐全,既可进行上位机单独的软件仿真调试,也可进行下位机的脱机调试,也可联机进行通信调试;
F、该系统的调试命令与DOS下的DEBUG调试器的命令相同,没有额外的调试命令,用户无需学习机器独特的命令。
3、系统资源分配
系统监控区:0C0000H-0FFFFFH;程序调试区:10FB0H-20FAFH;中断向量区:
00000H-0003FFH;BIOS数据区:00400H-005FFH;系统RAM扩展:80000H-80800H。
4、注意事项
A.进行程序调试时,应该注意脱机和联机的区别,对同一个实验,脱机和联机的程序应不相
同;
B.进行联机调试的时候,如果要用到DS,请将数据段地址设为110BH;
C.由于使用的是RS_232接口,因此,联机调试时程序的运行可能会比较慢,请用户进行联
微机原理实验指导
微机原理实验指导
部门: xxx
时间: xxx
整理范文,仅供参考,可下载自行编辑
微机原理实验指导
第一部分实验的目的和要求
一实验要求
1、实验前作好充分准备,包括程序框图、源程序清单、调试步骤、测试方法、
对运行结果的分析等。
实验时要遵守实验室的规章制度,爱护实验设备。要熟悉与实验相关的系统软件<如编辑程序、汇编程序、连接程序和调试程序等)的使用方法。在程序的调试过程中,有意识地学习及掌握DEBUG程序的各种操作命令,以便掌握程序的调试方法及技巧。b5E2RGbCAP
3、为了更好地进行管理,要求用硬盘<注:D盘下)存储程序,以避免文件丢失。
注:文件名必须完整,源程序要带有后缀 .asm 。
路径名以及文件名中不能包含汉字,只能使用字符。
4、程序调试完后,须由实验辅导教师在机器上检查运行结果。
5、每个实验完成后,应写出实验报告。
二实验报告规范
1、要求使用学校专用的实验报告纸。
填写的信息包括:课程名称、实验序号、专业、班级、姓名、同组实验者、实验时间。
2、报告书写要规范,内容言简意赅。
内容应包括:实验名称、目的、内容、原理、实验步骤、实验记录、数据处理<或原理论证、或实验现象描述、或结构说明等)。p1EanqFDPw
3、一个实验对应一份实验报告。
三实验的目的
实验目的不仅是为了验证书本理论,更重要的是对实践能力的培养。其中包括:
实际调试程序的能力,例如修改程序参数的能力,查看结果的能力,设置断点调试运行的能力等。
开发汇编语言应用程序的能力,例如应用有关汇编软件的能力,进行系统调用和BIOS功能调用的能力,进行模块程序设计的能力等。DXDiTa9E3d
微机原理及实验指导
实验一、I/O程序设计一.实验内容:I/O程序设计
(一)实验内容:
1.编程由键盘输入任意一个字符,将该字符的ASCII码值显示在屏幕上。
2.从键盘输入两个1位十进制数,计算二者之和,并将结果显示在屏幕上。
3.编程由键盘输入任意一位数,将该数以二进制数形式显示在屏幕上,例:5=00000101B (二)实验步骤: 1. 画出实验流程图。2. 运行Tddebug软件,选择Edit菜单编写实验程序 3. 使用Compile菜单中的Compile和Link对实验程序进行汇编、连接,生成执行文件。4. 使用Rmrun菜单中的Run运行程序,观察运行结果。 5. 使用Rmrun菜单中的Debug调试程序。单步执行指令,观察各寄存器及数据区的内容。 6. 更改数据区中的数据,考察程序的正确性。
二.分析设计思想。设计思路:首先将该数以十六进制数形式分解,然后将每一位分别转换为ASCII码送屏幕显示。其中0H~9H之间的数加30H,即可得0H~9H的ASCII码,而AH~FH的ASCII码,则需再加7H,参见表5-1。参考程序流程如图2-1所示。示例程序参见参考程序清单。
三.程序清单及流程
DATA SEGMENT
MES DB 'Show a as hex:',0AH,0DH,'$'
SD DB 'a'
DA TA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DA TA
START: MOV AX,DATA
MOV DS,AX
MOV DX,OFFSET MES ;显示提示信息
MOV AH,09H INT 21H
微机原理实验指导书(新版)
微机原理与接口技术实验指导书
主编:王青岳
陈超波张晓倩许韫韬
西安工业大学电信学院
软件实验部分 (1)
1 汇编基本原理 (2)
1.1 程序,可直接运行的程序,汇编源程序,汇编 (2)
1.2 CPU取指令、执行指令的过程 (3)
2汇编工具MASM5.0使用方法 (3)
2.1汇编源程序文件的建立方法 (3)
2.2编译阶段 (5)
2.3链接阶段 (6)
2.4 程序调试阶段 (7)
3软件实验项目 (9)
软件实验一清零实验 (9)
软件实验二码制转换实验 (11)
软件实验三数据区移动实验 (13)
软件实验四冒泡法排序实验 (16)
软件实验五存储器校验实验 (18)
软件实验六实时时钟显示实验 (19)
硬件实验部分 (21)
1 微机实验系统简介 (22)
2 实验系统上位机软件使用方法 (23)
2.1 软件启动 (23)
2.2 如何使用星研集成环境软件 (23)
3 硬件实验项目 (32)
硬件实验一8255 PA口控制PB口实验 (32)
硬件实验二8255控制交通灯实验 (34)
硬件实验三74HC138译码器实验 (37)
硬件实验四8253方波实验 (39)
硬件实验五8259A中断控制器实验 (41)
硬件实验六8250可编程通信实验(与微机) (44)
硬件实验七简易电子琴实验 (49)
硬件实验八LED8 * 8点阵实验 (58)
软件实验部分
1 汇编基本原理
1.1 程序,可直接运行的程序,汇编源程序,汇编
程序
程序以文件的形式存在,它是由若干条“指令”顺序排列存储构成的。
指令是对符合CPU指令集的所有信息的统称,“指令”在程序中以两种形式存在,一种是以“指令代码”的形式(在可直接运行的程序文件中),另一种是以“助记符”的形式(在汇编源程序文件中)。
微机原理实验指导书
实验一数据传送
一、实验目的
1、熟悉SH51仿真器的使用方法。
2、练习设计简单的程序。
3、掌握8031片内RAM和片外RAM的数
据传送的方法,从而了解这两部分存储器的特点
二、实验设备和器件
PC一台、DP-51PROC单片机
实验仪一台、仿真器一台。
三、实验内容
将8031内容RAM40H—4FH置初值00H—0FH,然后将40H—4FH 的内
容传送到外RAM4800H—480FH,再将
4800H—480FH传回到内部RAM
50H—5FH。设置断点B1、B2、B3,
每运行到断点时检查相应的CPU现场
和存储单元的内容。
四、实验步骤
1、向机器输入程序
2、运行程序至第一个断点B1,检查内容
RAM40H—4FH单元的内容及累加器A 的内容;
3、运行程序至第二个断点B2,检查
RAM4800H—480FH单元的内容及累加器A、数据指针DPTR的内容;
4、运行程序至第三个断点B3,检查内容
RAM50H—5FH单元的内容及累加器
A、数据指针DPTR的内容;
五、实验程序
ORG 0000H
START: LJMP MAIN
ORG 0040H
MAIN: MOV R0, #40H
MOV R2, #10H
CLR A
A1: MOV @R0, A
INC R0
INC A
DJNZ R2, A1 B1: MOV R0, #40H
MOV DPTR, #4800H
MOV R2, #10H
A2: MOV A, @R0
MOVX @DPTR, A
INC R0
INC DPTR
DJNZ R2, A2
B2: MOV R0, #50H
MOV DPTR, #4800H
微机原理实验指导书(修改1023)
微机原理实验指导书
华中科技大学计算机学院
武汉豪申光电新技术有限公司
目录
微机原理实验 (3)
第一章16位汇编语言编程验 (3)
实验一系统认识实验 (3)
实验二分支程序设计实验 (6)
实验三循环程序设计实验 (9)
实验四排序程序设计实验 (12)
实验五子程序设计实验 (15)
微机接口实验 (19)
第一节并行接口实验(8255芯片实验) (19)
实验一8255并行接口实验 (19)
第二节定时/计数实验(8253芯片实验) (26)
实验二音乐发声器接口实验 (26)
第三节串行通信接口实验(8251芯片实验) (33)
实验三 RS-232标准全双工查询方式异步串行通信实验 (34)
第四节A/D D/A转换器接口实验 (42)
实验四查询方式A/D转换器接口实验(ADC0809) (42)
实验五 D/A函数波形发生器接口实验(DAC0832) (49)
微机原理实验
第一章16位汇编语言编程验
实验一系统认识实验
⑴实验目的
掌握在MF平台中汇编程序的编写、调试方法。
⑵实验内容
基本实验将存储区BUF1中的内容复制到BUF2中。
⑶实验步骤
(一)方式1(Debug方式)
1.在MF2KP环境下输入汇编程序,编译、连接,生成.exe文件。
2.启动调试程序(Debug)。
3.在程序的退出处设置断点,利用Add Watch命令查看BUF2中的内容是否正确。
(二)方式2(人-机交互方式)
1.在MF2KP环境下输入汇编程序,编译、连接、运行。
2.按提示输入数据,在屏幕显示的结果中查看BUF1,2中的内容是否正确。
3.输入不同的字符串,可得到不同的结果。
《微机原理》实验指导
《微机原理》实验指导书
制订教师:王晓锐
2015年4月
目录
实验1 EMU8086操作 (3)
实验2 简单程序设计 (4)
实验3 分支程序设计 (5)
实验4 循环程序设计 (6)
实验5 简单LED控制实验 (7)
附录A:Emu8086使用指南 (8)
附录B:源程序代码 (17)
实验1 EMU8086操作
1 实验目的:熟悉仿真软件emulator的使用。熟悉指令系统和常用的伪指令,掌握简单程序的设计方法。
2 实验内容1:编写计算F=XY+Z-500的程序,其中X,Y,Z均为无符号的字节操作数。程序代码如下所示。
DATA SEGMENT
X DB 29
Y DB 8
Z DB 25
F DW ?
DATA ENDS
CODE SEGMENT
ASSUME DS:DATA,CS:CODE
START: MOV AX,DATA
MOV DS,AX
MOV AL,X
MUL Y
MOV BH,0
MOV BL,Z
ADD AX,BX
SUB AX,500
MOV F,AX
MOV AX,4C00H
INT 21H
CODE ENDS
END START
(1)请阅读该程序,并写出注释。
(2)在emulator中输入以下代码,进行调试。
(3)请写出计算的结果是多少。
(4)请说明变量X,Y,Z和F的物理地址是多少。
4 实验报告:请采用标准的实验报告纸,按照以上实验要求完成实验报告,最后进行实验总结,给出在调试过程中遇到的问题以及如何
实验2 简单程序设计
实验题目:进一步熟悉指令系统和常用的伪指令,掌握简单程序设计的方法、熟悉逻辑运算指令与算术运算指令。
微机原理实验
微机原理实验
第二部分实验内容
《微机原理与应用》包括6个实验,其中前3个是软件编程,在PC机上完成,后3个是硬件实验,在TDN-MD实验箱上完成。
实验一顺序程序设计与调试
一、实验目的
1.熟悉汇编语言上机过程和上机步骤。
2.掌握汇编语言程序书写格式。
3.掌握顺序程序的设计与调试方法。
4.掌握汇编语言程序运行结果的观察方法。
二、实验设备
PC机一台(安装汇编软件)。
三、实验内容
分析并对比以下各程序段运行的结果。
1.两种加法指令比较
(1) STC
MOV AL,50H
MOV BL,60H
ADD AL,BL
(2)STC
MOV AL,50H
MOV BL,60H
ADC AL,BL
2.两种加1指令比较
(1) MOV AL,0FFH
INC AL
(2) MOV AL,0FFH
ADD AL,1
3.两种乘法指令比较
(1) MOV AL,0FFH MOV BL,0FFH MUL BL
(2) MOV AL,0FFH MOV BL,0FFH IMUL BL
4.逻辑指令比较(1) MOV AL,55H AND AL,0FH (2) MOV AL,55H OR AL,0FH (3) MOV AL,55H XOR AL,0FH (4) MOV AL,55H TEST AL,0FH 5.移位指令比较(1) MOV AL,55H SHL AL,1
(2) MOV AL,55H SHR AL, 1 (3) MOV AL,55H SAR AL, 1
(4) STC
MOV AL,55H ROL AL, 1 (5) STC
MOV AL,55H ROR AL, 1 (6) STC
微机原理实验指导一(2015-2)
一、系统认识实验
1.1 实验目的
掌握QASM轻松汇编(TD系列微机原理及接口技术教学实验系统)的操作,熟悉QASM(Wmd86联机集成开发调试软件)的操作环境。学习和掌握程序编写,汇编,调试的方法和技术。
1.2 实验设备
PC机一台,(TD-PITE实验装置或TD-PITC实验装置一套)。
1.3 实验内容
编写实验程序,将00H~0FH共16个数写入内存03000H开始的连续16个存储单元中。
1.4 实验步骤
1. 进入QASM编程环境:将TDASM和ASMPRO文件夹复制到D盘根目录上,运行TDASM下的QASM,进入集成开发环境。
2.输入汇编源程序:编写输入实验程序,如图所示,并保存为A1,此时系统会提示输入新的文件名,输完后点击保存。可以用打开文件方式将以前保存的源程序调入。
程序编辑界面
3. 程序的汇编与连接:点击,编译文件,若程序编译无误,则可以继续点击进行链接,链接无误后方运行调试程序。
编译输出信息界面
4.观察程序及变量分配:点击“交叉文件”,观察源程序代码与机器代码与存储形式。
点击“汇编程序”返回汇编程序窗口。
操作练习:1、对上述程序进行观察。看汇编源程序的指令与机器码指令的对应关系及程序存放形式。
2、打开程序EX1,观察变量定义及存放关系。
3、打开EX3—2,观察变量定义及内存分配。
5.集成调试环境的使用:
单步执行:点击“调试”菜单下的“单步”,可以一条一条的执行指令。
查看修改寄存器:在调试过程中,可能通过调试窗口的“调试”选单,观察和修改CPU中寄存器的内容。
查看变量和存储单元内容:在调试过程中,可能通过调试窗口的“查看”选单,可以添加要查看的存储单元或者变量的的内容。
【最新推荐】微机原理实验指导书-实用word文档 (18页)
本文部分内容来自网络整理,本司不为其真实性负责,如有异议或侵权请及时联系,本司将立即删除!
== 本文为word格式,下载后可方便编辑和修改! ==
微机原理实验指导书
篇一:微机原理实验指导书(新版)
微机原理与接口技术
实验指导书
主编:王青岳陈超波张晓倩许韫韬
西安工业大学电信学院
软件实验部
分 (1)
1 汇编基本原
理 .................................................................. . (2)
1.1 程序,可直接运行的程序,汇编源程序,汇
编 .................................................... 2 1.2 CPU取指令、执行指令的过
程 .................................................................. .............. 3 2汇编工具MASM5.0使用方
法 .................................................................. .. (3)
2.1汇编源程序文件的建立方
法 .................................................................. ................... 3 2.2编译阶段................................................................... .................................................. 5 2.3链接阶段................................................................... .................................................. 6 2.4 程序调试阶段 .................................................................. .......................................... 7 3软件实验项
微机原理实验指导一(2015-2)
一、系统认识实验
1.1 实验目的
掌握QASM轻松汇编(TD系列微机原理及接口技术教学实验系统)的操作,熟悉QASM(Wmd86联机集成开发调试软件)的操作环境。学习和掌握程序编写,汇编,调试的方法和技术。
1.2 实验设备
PC机一台,(TD-PITE实验装置或TD-PITC实验装置一套)。
1.3 实验内容
编写实验程序,将00H~0FH共16个数写入内存03000H开始的连续16个存储单元中。
1.4 实验步骤
1. 进入QASM编程环境:将TDASM和ASMPRO文件夹复制到D盘根目录上,运行TDASM下的QASM,进入集成开发环境。
2.输入汇编源程序:编写输入实验程序,如图所示,并保存为A1,此时系统会提示输入新的文件名,输完后点击保存。可以用打开文件方式将以前保存的源程序调入。
程序编辑界面
3. 程序的汇编与连接:点击,编译文件,若程序编译无误,则可以继续点击进行链接,链接无误后方运行调试程序。
编译输出信息界面
4.观察程序及变量分配:点击“交叉文件”,观察源程序代码与机器代码与存储形式。
点击“汇编程序”返回汇编程序窗口。
操作练习:1、对上述程序进行观察。看汇编源程序的指令与机器码指令的对应关系及程序存放形式。
2、打开程序EX1,观察变量定义及存放关系。
3、打开EX3—2,观察变量定义及内存分配。
5.集成调试环境的使用:
单步执行:点击“调试”菜单下的“单步”,可以一条一条的执行指令。
查看修改寄存器:在调试过程中,可能通过调试窗口的“调试”选单,观察和修改CPU中寄存器的内容。
查看变量和存储单元内容:在调试过程中,可能通过调试窗口的“查看”选单,可以添加要查看的存储单元或者变量的的内容。
《微机原理及应用技术》实验指导书
10. 跟踪命令 T
出文件可以有 3 个(分别为:.obj .lst .crf),便会出现三次提问,在这可以一路回车即
可。下面显示的信息是源程序中的错误个数,如果为 0 则表示顺利通过,就可进行下一步。
但如果不为 0 就说明有错误,并指出错误出现的行,可依据这个提示去进行修改。但如果错
2
《微机原理》实验指导书
误太多还未等看清就显示过去了,可用如下命令形式将错误信息存于一个用户自己指定的文 件,再用文本编辑器去查看。 MASM filename >filen (filen 为用户自己起的一个没用过 的文件名,用以存放出错信息)以后可查看 filen 来得到出错信息。
1
《微机原理》实验指导书
第一部分 实验预备知识
1.1 汇编语言程序的上机过程
一、所需文件 为运行汇编语言程序至少要在磁盘上建立以下文件: EDIT.COM(编辑程序)或其他编辑软件 MASM.EXE (汇编程序) LINK.EXE(连接程序) DEBUG.EXE(调试程序,DOS 外部命令文件) 二、运行汇编语言程序的操作步骤 1.用 EDIT 编辑程序建立.ASM 源文件; 2.用 MASM 汇编程序把 ASM 文件转换成.OBJ 文件; 3.用 LINK 连接程序把 OBJ 文件转换成.EXE 文件; 4.用 DOS 命令直接输入文件名就可执行该程序。 5.如果程序有错,还要用到 DEBUG 调试程序调试。 三、 汇编语言源程序上机操作过程
微机原理实验指导书
微机原理实验指导书
实验一数据传送
实验目的:
1.熟悉8086指令系统的数据传送指令及8086的寻址方式。
2.利用TurboDebugger调试工具来调试汇编语言程序。
实验任务:
1.通过下述程序段的输入和执行来熟悉TurboDebugger的使用,并通过显示器屏幕观察程序的执行情况。练习程序段如下:MOVBL,08H
MOVCL,BL
MOVAX,03FFH
MOVBX,AX
MOVDS:[0020H],BX
2.用以下程序段将一组数据压入(PUSH)堆栈区,然后通过不同的出栈顺序出栈,观察出栈后数据的变化情况。压栈程序段如下:MOVAX,0102H
MOVBX,0304H
MOVCX,0506H
MOVDX,0708H
PUSHAX
PUSHBX
PUSHCX
PUSHDX
出栈程序段请自行编写(用不同的出栈顺序)。
3.指出下列指令的错误并加以改正,上机验证之。
(1)MOV[BX],[SI]
(2)MOVAH,BX
(3)MOVAX,[SI][DI]
(4)MOVBYTEPTR[BX],2000H
(5)MOVCS,AX
(6)MOVDS,2000H
4.设置各寄存器及存储单元的内容如下:
(BX)=0010H,(SI)=0001H
(10010H)=12H,(10011H)=34H,(10012H)=56H,(10013H)=78H
(10120H)=0ABH,(10121H)=0CDH,(10122H)=0EFH
说明下列各条指令执行完后AX寄存器中的内容,并上机验证。
(1)MOVAX,1200H
(2)MOVAX,BX
(3)MOVAX,[0120H]
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
微型计算机原理与应用
实验指导书
上海大学通信学院
2010 年 4 月
PC微机原理实验一
一、目的:掌握PC机DEBUG调试程序有关命令的操作及8086各类指令的
功能。
二、要求:在PC机上完成下列程序的调试运行,并写出运行结果。1.DEBUG的基本操作:(详细容请参阅教材“4.5程序的调试,P173”和“附
录F调试程序DEUBG的使用,P499”)
(1)从WINDOWS进入DOS之后,输入命令启动DEBUG:
C:>DEBUG 回车
(2)输入R命令,查看和记录CPU各个寄存器的容:
-R回车
看到什么?
(3)输入A命令,汇编下面的字符“WINDOWS”显示程序:
-A100 ;从偏移地址是0100H处开始写指令
MOV AH,2
MOV DL, 57 ;57H 是“W”的ASCII码
INT 21 ;INT 21是DOS 功能调用,AH=2代表2号功能
;这3句合起来的功能是:显示DL中的字符
MOV DL, 49
INT 21
MOV DL, 4E
INT 21
MOV DL, 44
INT 21
MOV DL, 4F
INT 21
MOV DL, 57
INT 21
MOV DL, 53
INT 21
INT 3 ;功能是产生一个断点,不要省略
(4)输入U命令反汇编上面的程序:
-U 100
问:这里100代表什么?
(5)输入G命令连续运行上面的程序,记录运行结果:
-G=100
(6)输入E命令把上面程序中的数据57,49,4E,44,4F,57,53依次分别改为57,45,4C,43,4F,4D,45:
-E 103 回车(以下同)
-E 107
-E 10B
-E 10F
-E 113
-E 117
-E 11B
(7)输入D命令查看程序机器码的存放情况:
-D 100 11E ;看从100开始到11E的机器码
(8)输入G命令再连续运行程序,并记录运行结果:
-G=100
(9)依次输入下面的T命令(单步执行)和G命令(设置断点并启动运行),记录各命令的运行结果:
-T=100 回车
-G=100 106 回车
-G=100 10A 回车
-G=100 10E 回车
-G=100 11E 回车
注意:
下面第2—第8段程序是7个实用的小程序,若不小心打错指令,可以这样修改:例如:CS:0100 B300 MOV BL,0
0102 53 PUSH BX
0103 B220 LP1: MOV DL,20
要修改“PUSH BX”,因为这条指令的IP是0102,所以按以下操作:
-A 0102 回车,然后把正确的指令打入,“-A ”是汇编指令。
如果要查看0100以后的指令及相应的机器代码,可以
-U 0100 回车,能够看到CS:0100开始的指令及相应的机器代码。“-U ”是反汇编若发现有误用,用“-A XXXX 回车”,重打这条指令即可
2.编制一个能在CRT上连续显示A,B,C,D······Z大写英文字符的源程序,并在源程序下汇编调试机运行。
参考源程序(DEBUG调试环境中,源程序的十六进制数后面不写H):
CS:0100 B300 MOV BL,0
0102 53 PUSH BX
0103 B220 LP1: MOV DL,20
0105 B402 MOV AH,02
0107 CD21 INT 21
0109 5B POP BX
010A 88D8 MOV AL,BL
010C FEC0 INC AL
010E 3C1B CMP AL,1B
0110 7502 JNZ LP2(0114) ;不能写LP2,应写0114
0112 B001 MOV AL,01
0114 88C3 LP2: MOV BL,AL
0116 53 PUSH BX ;
0117 0440 ADD AL,40
0119 88C2 MOV DL,AL
011B B402 MOV AH,02
011D CD21 INT 21
011F B9FFFF MOV CX,FFFF
0122 49 DL: DEC CX
0123 75FD JNZ DL(0122);不能写DL,应写0122
0125 EBDC JMP LP1(0103);
按CTRL+C,可中止程序运行。
运行正确后,改写程序为0,1,2,3,4,5,7,8,9的循环显示。
3.编制一个3字节压缩BCD加法源程序
若要实现123456+456789,根据低地址放低字节,高地址放高字节原则,请用E命令在DS:1000-1002单元正确存放被加数123456,在DS:1010-1012单元正确存放加数456789。
参考程序如下:
CS:0200 BE0010 MOV SI,1000
0203 BF1010 MOV DI,1010
0206 BB2010 MOV BX,1020
0209 B103 MOV CL,3
020B B500 MOV CH,0
020D F8 CLC
020E 8A04 MAD: MOV AL,[SI]
0210 1205 ADC AL,[DI]
0212 27 DAA
0213 8807 MOV [BX],AL
0215 46 INC SI
0216 47 INC DI
0217 43 INC BX
0218 E2F4 LOOP MAD(020E)
021A F4 HLT
运行结果:
[1020]=______ [1021]=______ [1022]=______ SI=______ DI=______ BX=_____ 相加后结果是:_________________
F标志:O=______ S=______ Z=______ A=______ P=______ C=______
注意:按CRT的实际显示填写。(参考书P502)
思考:DAA的作用,如果没有DAA结果会如何?