当前位置:文档之家› 微机原理与接口技术实验指导书(带程序)

微机原理与接口技术实验指导书(带程序)

微机原理与接口技术实验指导书(带程序)
微机原理与接口技术实验指导书(带程序)

《微机原理与接口技术》实验指导书

计算机与信息工程系

2012年9月

目录

实验概述............................................. 错误!未定义书签。实验仪器使用简介 (5)

实验项目一学生考试成绩统计实验 (11)

实验项目一两个多位十进制数相减实验............... 1错误!未定义书签。实验项目一 8259中断控制器实验.. (16)

实验项目一具有优先通行权的十字路口交通灯控制设计 (21)

实验项目一 8253定时器/计数器实验 (26)

实验项目一继电器控制实验 (28)

实验概述

一、实验的目的

本实验课是配合理论教学内容,帮助学生加深理解和掌握本门课程内容的重要手段。由于本课程具有理论与实际相结合紧密的特点,通过实验使学生掌握微型计算机的原理及接口电路的设计应用技术。

二、实验前的准备工作

1.了解所用的计算机系统(包括汇编编译系统)的性能和使用方法。

2.复习和掌握与本实验有关的DOS命令以及相关指令。

3.准备好上机所需的程序,切忌不编程或抄别人的程序去上机。

三、实验的步骤

上机实验应一人一组,独立实验。上机过程中出现的问题,除了是系统的问题以外,不要轻易举手问老师。上机实验一般应包括以下几个步骤:

1、编辑汇编语言源程序

使用一种文本编辑软件(word、记事本、写字板等),编辑保存一个“文件名.ASM”的汇编语言源程序文件

2、汇编源程序

用宏汇编(MASM)对汇编源程序进行汇编,产生目标程序(文件名.OBJ

3、连接程序

用连接程序(LINK)将若干目标模块连同库子程序连接在一起,产生可执行文件(文件名.EXE)

4、运行调试DEBUG

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

格式:DEBUG [驱动器][路径][文件名][参数]

四、实验报告

实验报告应包括以下内容:实验目的、实验内容、程序清单、运行结果、对运行结果的分析以及本次调试程序所取得的经验。实验报告格式见附录1。

五、实验任务与时间安排

注:实验类型为选做和必做;实验类别为综合性、设计性、创新性、验证性、演示性等。六、参考教材

教材:

微型计算机原理及接口技术(第二版),裘雪红著. 西安电子科技大学出版社,2007 主要参考书:

1. 微型计算机技术及应用(第二版),戴梅萼著. 清华大学出版社,2005

2. 微机原理与接口技术(第二版),周明德著. 人民邮电出版社,2007

3. 微型计算机原理及接口技术(第一版),赵全利著. 机械工业出版社,2006

实验仪器使用简介

一.监控程序使用方法

1 引言

监控程序控制仪器以键盘操作方式运行调试实验程序。仪器一经上电后,数码显示器显示监控提示符“P.”。

2 键盘与显示

(1) 仪器LED数码显示器有6位,左4位显示地址,右2位显示该地址内容。

(2) 仪器键盘有28键,左边16个是数字键,右边12个是功能键。

在键盘监控状态,用户可以通过命令键组合完成下列操作。

● 读存贮器内容

● 写存贮器内容

● 数据块移动

● 读写I/O端口

● 通过单步、断点、连续运行等方式来调试RAM中的程序。

监控指示符“P.”状态下,寄存器的初始值如下:SP=0683H,CS=0000H,DS=0000H,SS=0000H,ES=0000H,IP=1000H,FL=0000H。

“P.”状态下,监控命令才会有效,此时段地址缺省值为0000H。

(1) 存贮器单元内容的显示及修改

操作:×××× MRW

● “P.”状态下,输入4位存贮单元地址,按MRW键,则显示2位该单元内容;

● 按数键可修改内容;

● 按NEXT键,地址加1,地址单元内容刷新;

● 按LAST键,地址减1,地址单元内容刷新;

● 按MON键,返回“P.”状态。

(2) 寄存器内容的显示及修改

操作:× REG

● “P.”状态下,先输入寄存器代号,再按REG键,显示寄存器名及其内容;

● 按数键可修改寄存器的内容;

● 按NEXT键,依次显示下一个寄存器名及其内容;

● 按LAST键,依次显示上一个寄存器名及其内容;

操作:×××× IOR

● “P.”状态下,输入4位口地址,再按IOR键,则显示其状态数据;

● 按IOR键再次读入该口地址的状态数据;

● 按NEXT键,口地址加1,状态数据刷新;

● 按LAST键,口地址减1,状态数据刷新;

● 按MON键,返回“P.”状态。

(4) I/O写

操作:×××× IOW

● “P.”状态下,先输入4位口地址,再按IOW键,则显示其内容为00,

此时输入数据,I/O状态会随写入的内容而变化;

● 按NEXT键,口地址加1;

● 按LAST键,口地址减1;

● 按MON键,返回“P.”状态。

(5) 数据块移动

操作:×××× F1 ×××× F2 ×××× MOVE

● “P.”状态下,先输入4位源首址,再按F1键,再输入4位源末址,按F2键,再输入4位目标块首地址,按MOVE键,则开始数据传送,传送结束返回监控“P.”状态。

(6) 单步运行

操作:有三种状态都可以执行单步操作(段地址固定为0000H)。

● “P.”状态下,按STEP键,从起始地址IP=1000H开始,单步执行一条指令;

● 存储器读写状态,按STEP键,从当前存贮器地址开始单步执行一条指令;

● 在输入4位起始地址的状态下,按STEP键则从起始地址开始单步执行一条的指令,然后显示下一条指令的地址及其内容。

(7) 断点运行

操作:×××× F2 ×××× EXEC

● “P.”状态下,先输入4位断点地址,按F2键,再输入4位起始地址,按EXEC键,程序从起始地址开始运行,显示器显示“┏”执行符,程序停在断点处后显示断点地址和其内容,同时保护所有寄存器的值。

当程序不能运行到断点(俗称“跑飞”)。可按STOP键,中止程序运行,从显示器确定程序运行到何处,同时必须用存贮器读写功能键MRW来恢复断点处的一字节内容。注意EPROM中的实验程序不能以断点方式运行。

(8) 连续运行

操作:有三种状态,可以进入连续运行

● “P.”状态下,按EXEC键,从地址CS=0000H,IP=1000H开始连续执行程序;

● 存储器读写状态下,按EXEC键,从当前存贮器地址开始,连续执行程序(开始时CS=0000H);

● 先输入4位起始地址,按F1键,再输入4位偏移地址,最后按EXEC键,则从设定的段地址和偏移地址开始程序,当用户返回监控,可用MON键或Reset键。注意Reset键会初始化各寄存器。

(9) 程序运行实例

如有小程序ORG 1000H

MOV AX,1000H

MOV BX,2000H

MOV CX,3000H

MOV DX,4000H

经微机汇编生成的列表文件里的机器码如下:

1000 B8 1000

1003 BB 2000

1006 B9 3000

1009 BA 4000

“P.”状态下按键,输入程序机器码:

1000 MRW B8 NEXT 00 NEXT 10 NEXT BB NEXT 00 NEXT 20 NEXT B9 NEXT 00 NEXT 30 NEXT BA NEXT 00 NEXT 40 MON

“P.”状态下用户单步执行程序输入1000 STEP后显示“1003 bb”,STEP

后显示“1006 b9”,STEP后显示“1009 bA”,STEP后显示“100C ××”,按MON 返回“P.”。

“P.”状态下用户检查寄存器内容,输入0 Reg 显示“A1000”NEXT 显示“b2000”,NEXT显示“C3000”,NEXT显示“D4000”。

二.实验电路的硬件调试

初学者做实验往往忽略了对硬件线路的调试(即在无程序运行的情况下调试硬件),而硬件电路的正确无误,对实验而言是至关重要的。试想如果实验硬件不好,甚至损毁了那么无论你的程序写得如何精彩,结果终归失败。而在这种情况下,初学者却大多不会正确地调试硬件。另外一种情况是程序不对,虽然没有语法错误,但却有其它的毛病,这时初学者又往往不会去找毛病,却怀疑是否硬件有问题,至于如何去判断硬件电路的好坏又无从下手。为此本章通过大量实例,介绍8088计算机接口实验箱的有关硬件调试方法。

1、测发光二极管电路

(1) 紧锁线一端接地,另一端点击L1~L16插座,点击时发光二极管亮。

(2) 紧锁线一端接Ki(Ki下拨),另一端点击L1~L16插座,现象同上。

2、数码显示器与键盘电路

开机显示“P.”,按数字键,功能键,观察显示是否正确。

3、测拨动开关电路

用扁平电缆线连K1~K8与L1~L8,观察开关与发光二极管的关系。

4、可调电压

可调电压两组,一组是0~5V可调,另一组是-12V~+12V可调,可调电压输出端连直流电压表,观察调压结果。

注意:-12V~+12V输出电压,不用时调至0V,以免与TTL信号线不慎相碰。

5、12V风扇电路

DJ1插座连+12V(开关旁),风扇正常启动。

6、单路输出电路

Vin插座连地,开关在BELL处、蜂鸣器响;在LED处、发光二极管亮。

7、脉冲发生器电路

插座用紧锁线连直流电压表指示0V,按AN键,电压指示3.5V。

插座用紧锁线连直流电压表指示3.5V,按AN键,电压指示0V。

8M插座用紧锁线连直流电压表指示2V,按AN键,电压指示不变。

8、继电器电路

该电路的输入端JIN、JZ、JB、JK分别是输入的控制信号,中心抽头,常闭触点,常开触点。

1.可将JIN接K1,JZ接地,JB接L12,JK接L16,即用开关K1控制发光二极管L12与L16。

K1打下,JK合,JB开,则L16亮,L12灭。

K1打上,JB合,JK开,则L12亮,L16灭。

2.JIN接K1,JZ接+12V,JK接风扇DJ1插孔,即用开关K1控制风扇旋转,K1打下,JK合上,风扇旋转;K1打上,JK开断,风扇停转。

9、A/D转换电路

若0809片选信号选A000H,对IN3采样,那么CS4用紧锁线接A000插孔,IN3用紧锁线连0~5V可调电压,再接直流电压表。三个短路环均在下方(DABC处)。扁平电缆连数据线。

可调电压0V,“P.”状态下,输入A000,按IOW,键入03,按MON。

“P.”状态下,输入A000,按IOR,显示“00”,电压指示0V。

可调电压5V,“P.”状态下,输入A000,按IOW,键入03,按MON。

“P.”状态下,输入A000,按IOR,显示“FF”,电压指示5V。

10、D/A转换电路

1.0832直通方式:CS5、XFER,WR1、WR2用紧锁线接地,V Ref用紧锁线接+5V,扁平电缆连K8-K1、D0~D7,Vout按直流电压表。

拨动开关K8~K1,全部打下,数据00,电压指示0V。

K1打上,等于输出80H,电压指示-2.5V。

K1、K2打上,等于输出数据C0H,电压指示-3.75V。

2.单缓冲方式:CS5、XFER接B000,WR1、WR2接IOWR,扁平电缆把0832的D0~D7与数据总线D0~D7相连。

“P.”状态下,键入B000,按IOW,键入00,则电压指示0V;键入80,则电压指示-2.5V,键入FF,则电压指示-5V。

11、简单输入电路74LS244

1.直通方式:K1~K 8连I0~I7,实验区的D0~D7用扁平电缆接L1~L8,即输入开关量,经74LS244输出到D0~D7再由发光二管指示。

CS1接地,再用紧锁线将IORD接地,拨动开关,观察LED显示与开关状态是否对应。

2.选通方式:K1~K8连I0~I7,实验区的D0~D7用扁平电缆线接数据总线D0~D7,CS1接C000,开关量经74LS244输出到数据显示。

“P.”状态下,K1~K8全部打下,键入C000、IOR、显示“00”、按MON键。

“P.”状态下,K1~K8全部打上,键入C000、IOR、显示“FF”、按MON键。

“P.”状态下,K1~K7全部打下,K8打上,键入C000、IOR、显示“80”。

12、简单输出电路74LS273

1.直通方式:O0~O7用紧锁线连L16~L9,实验区的D0~D7用扁平电缆连K8~K1,CS2接地。这样连线使开关量由74LS273输出显示,拨动开关,观察显示情况与开关状态是否相符。

2.选通方式:O0~O7用紧锁线连L16~L9,实验区的D0~D7用扁平线连数据总线D0~D7,CS2按D000。“P.”状态下,键入D000,IOW,输入00,显示L16~L9全亮。输入0F,则L9~L12亮,输入FE则L16亮。

13、8255电路

1.如果控制字90H,那么A口定义方式0输入,B口方式0输出。

扁平电缆PA连K8~K1开关,PB连L1~K8显示。用发光二极管显示开关状态。若K1~K4打下,K5~K8打上。

“P.”状态下,键入FF2b,IOW输入90,按MON键。

“P.”状态下,键入FF28,IOR显示0F,按MON键。

“P.”状态下,键入FF29,IOW输入0F,则L4~L8亮。

2.如果ABC三口均为方式0,输出,控制字80H。

扁平电缆K1~K8与PA口。

“P.”状态下,键入FF2b,IOW输入80,按MON键。

“P.”状态下,键入FF28,IOW输入××,观察数据与LED的关系。

扁平电缆连K1~K8与PB口。

“P.”状态下,键入FF29,IOW输入××,观察数据与LED的关系。

扁平电缆连K1~K8与PC口。

“P.”状态下,键入FF2A,IOW输入××,观察数据与LED的关系。

14、8253定时器电路

实验区给出T0、T2两个定时器的相关端口,如果不考虑Gate、CLK信号,只向定时器的命令寄存器写命令字,那么它的输出口应有初始电平。

方式0:是下降沿开始,计数延时,计数结束后上跳沿触发中断,那么初始电平应为低电平。

方式3:是对称方波,先是正脉宽,再是负脉宽,故此初始化电平是高电平。

8253片选CS3连EX0(命令寄存器地址0043H)OUT0接直流电压表。

“P.”状态下,键入0043,IOW输入30,电平指示0V(T0方式0);输入36,电平指示4V(T0方式3)。把OUT0的插头插到OUT2插孔,按Reset键。

“P.”状态下,键入0043,IOW输入b0,电平指示0V(T2方式0);输入b6,电平指示4V(T2方式3)。

如果Gate接5V,CLK接Ti,除了写命令字外,再写计数初值,那么可用示波器看输出波形。

15、打印机电路

电路是由8255 A口输出数据(ASCII),C口提供握手信号(BUSY、STB)。键盘操作不用考虑打印机BUSY回答信号,故控制字80H(全部口输出)。键盘操作只要使A口输出ASCII码,C口输出选通信号即可。若要打印@字符,只要送出40H,发选通信号,再送0DH,发选通信号即可。

操作如下:

接上打印电缆(25芯),电源线(+5V)。

“P.”状态下,输入FF2b IOW 80 Last Last Last 40

NEXT NEXT FF 00 Last Last 0d NEXT NEXT FF。

实验项目一学生考试成绩统计实验

一、实验目的

1. 掌握在该系统上如何进行编辑、编译、连接和运行一个汇编程序。

2. 学习汇编基本指令的应用。

3. 掌握数据段data的使用。

二、主要仪器设备

1.计算机一台

三、实验要求

要求学生自己编写程序并调试通过。

四、实验内容与步骤

1.实验题目:

在当前数据段(由DS决定)的偏移地址为以DATAB开始的顺序80个单元中,存放着某班80个同学某门考试的成绩。

(1) 编写程序统计高于90分、80~89分、70~79分、60~69分、低于60分的人数各为多少,并将结果放在同一数据段、偏移地址为以BTRX开始的顺序单元中。

(2) 试编写程序,求该班这门课的平均成绩为多少,并放在该数据段的LEVT单元中。

2.上机过程

(1) 编辑原文件,生成*.ASM文件

(2) 汇编,生成*.OBJ文件

(3) 链接,生成*.EXE文件

(4) 调试,单步执行程序,用DEBUG调试命令T查看运行结果,用D命令查看内存单元是否正确。

五、实验报告要求

1.总结并写出在微机中使用汇编语言进行开发的过程。

2.写出实现预定功能的汇编程序。

3. 描述实验结果并分析实验结果的正确性。

实验项目二两个多位十进制数相减实验

一、实验目的

1. 掌握汇编语言各段的定义,掌握数据段中数据的书写方法,掌握堆栈段的使用方法。

2. 学会使用汇编语言中断调用的命令,特别是中断调用中显示在显示器中的命令的使用。

3. 进一步熟悉汇编语言程序的编辑、编译、连接和调试的过程。

二、主要仪器设备

1.计算机一台

三、实验要求

要求学生自己编写程序并调试通过。

四、实验内容与步骤

1.实验题目

在DATA1和DATA2中各有5个字节的十进制数。将其进行相减,结果显示在显示器上。

2.上机过程

(1)编辑原文件,生成*.ASM文件

(2)汇编,生成*.OBJ文件

(3)链接,生成*.EXE文件

(4)执行,直接在屏幕上观察运算结果是否正确

五、实验报告要求

1.总结并写出汇编语言中断调用的命令,特别是中断调用中显示在显示器中的命令的使用。

2.写出实现预定功能的汇编程序。

3. 描述实验结果并分析实验结果的正确性。

实验项目三8259中断控制器实验一、实验目的

1.掌握8259中断控制器与微机的接口方法。

2.掌握8259中断控制器的应用编程。

二、主要仪器设备

1.计算机一台

2. thwj-1 微机原理与接口实验装置

三、实验要求

要求学生自己编写程序并调试通过。

四、实验内容与步骤

1.硬件线路原理图如图3-1所示。

图3-1 8259硬件线路原理图2.硬件连线

(1) 8259的CS6插孔连线EX1插孔。

(2) 8259的INT插孔连线INTR插孔。

(3) 8259的INTA插孔连线INTA插孔。

(4) 8259的IR3插孔连线插孔。

(5) D0~7数据线用扁平电缆连接数据总线。

3.编程提示

(1) 8259芯片介绍

8259是专用控制中断优先级而设计的集成电路,可对中断源的优先级排队、识别、及提供中断矢量。单块8259可编程实现8级中断管理,并可选择优先模式及中

3 程序每按一次AN 键产生一次中断,满5次中断,显示“8259 Good”。如果中断触发信号不符合要求,则自动转到7号中断,显示“Err”,以示出错。

1. 程序方框图 (1) 主程序

(2) IR 3中断服务程序

(3)IR 7中断服务程序

4.实验步骤

(1)按图3-1连好实验线路。

(2)运行实验程序

“P.”状态下,先输入F000后按F1键,再输入91A0按EXEC键,系统显示“8259-1”。

(3)按AN键,显示“1”,再按一次,显示“2”,直到显示“5”,再按一次AN键,显示“Good”。

五、实验报告要求

1.画出硬件原理图。

2.写出实现能过实现预定功能并运行正常的程序。

3. 简单描述实验过程及最后的实验结果,并分析其正确性。

实验项目四具有优先通行权的十字路口交通灯控制设计一、实验目的

掌握用8255并行口输出不同数据来控制发光二极管的亮与灭。同时掌握中断方式下对紧急事件的优先处理方法。

二、主要仪器设备

1.计算机一台

2. thwj-1 微机原理与接口实验装置

三、实验要求

要求学生自己编写程序并调试通过。

四、实验内容与步骤

1. 硬件原理图如图4-1所示。

图4-1 8255硬件原理图

2.硬件连线。

PB4~L1 PC4~L2 PC0~L3

PB5~L5 PC5~L6 PC1~L7

PB6~L9 PC6~L10 PC2~L11

PB7~L13 PC7~L14 PC3~L15

将拨码开关连到8259的IR0端。在交通灯正常运行后,将拨码开关搬至“1”的位置,以此模拟紧急车辆将要通过,这时交通灯应全部变红灯,只允许紧急车辆通过。待延时一段时间紧急车辆通过后,交通灯又恢复正常状态。

3程序框图

4. 编程提示

(1) 8255控制发光二极管,模拟交通灯运行情况。PB 4~PB 7对应4只黄灯,PC 4~PC 7对应4只绿灯,PC 0~PC 3对应的4只红灯。

(2) 交通灯亮灭规则,假设有个十字路口,东西南北两个方向,南北方向的为1、3路口,东西方向的为2、4路口。从框图可知初始状态4路口红灯全亮,不准通行。之后1、3路口绿灯亮,2、4路口红灯不灭,则1、3路口南北方向通行,延时一段时间后,1、3路口绿灯灭,黄灯闪烁8次,而后红灯亮,同时2、4路口红灯灭,绿灯亮,2、4路口东西方向通行,延时一段时间后,2、4路口绿灯灭,黄灯闪烁8次,而后红灯亮,同时1、3路口红灯灭,绿灯亮,循环上述过程。

(3) 各发光二极管共阳极接法,8255端口“0”电平发光二极管点亮。

(4)在交通灯正常运行后,将拨码开关搬至“1”的位置,以此模拟紧急车辆将要通过,这时交通灯应全部变红灯,只允许紧急车辆通过。待延时一段时间紧急车辆通过后,交通灯又恢复正常状态。

5. 实验步骤

(1)按图4-1连好实验线路。将拨码开关连到8259的IR0端。 (2)运行实验程序 “P.”状态下,先输入F000,按F1键后,再输入90E0,按EXEC 键,系统显示“┏”,L 1-L 3,L 5-L 7,

L 9-L 11,L 13-L 15,12只发光二极管模拟十字路口交通灯的工作情况。

五、实验报告要求

1.画出硬件原理图。

2.写出实现能过实现预定功能并运行正常的程序。

3.简单描述实验过程及最后的实验结果,并分析其正确性。

8255并行接口实验二(交通灯)

0000 CODE SEGMENT

ASSUME CS: CODE

= FF28 IOAPT EQU 0FF28H ;8255各寄存器地址

= FF29 IOBPT EQU 0FF29H

= FF2A IOCPT EQU 0FF2AH

= FF2B IOCS EQU 0FF2BH

90E0 ORG 90E0H

90E0 B0 82 START: MOV AL,82H ;控制字:方式0,AC口出,B口入 90E2 BA FF2A MOV DX,IOCS

90E5 EE OUT DX,AL

90E6 BA FF29 MOV DX,IOBPT

90E9 EC IN AL,DX ;B口输入存601H

90EA A2 0601 MOV BYTE PTR DS:[0601H],AL

90ED BA FF2A MOV DX,IOCS

90F0 B0 80 MOV AL,80H ;控制字:方式0,ABC口输出 90F2 EE OUT DX,AL

90F3 BA FF29 MOV DX,IOBPT

90F6 A0 0601 MOV AL,DS:[0601H]

90F9 0C F0 OR AL,0F0H

90FB EE OUT DX,AL ;黄灯灭

90FC BA FF2A MOV DX,IOCPT

90FF B0 F0 MOV AL,0F0H

9101 EE OUT DX,AL ;没灯亮,绿灯灭

9102 E8 9162 R CALL DELY1

9105 B0 A5 LED0: MOV AL,0A5H

9107 BA FF2A MOV DX,IOCPT

910A EE OUT DX,AL ;1、3绿灯亮,2、4红灯亮 910B E8 9162 R CALL DELY1 ;延时

910E E8 9162 R CALL DELY1

9111 0C F0 OR AL,0F0H

9113 EE OUT DX,AL ;1、3路口绿灯灭

9114 B9 0008 MOV CX,8

9117 BA FF29 LED1: MOV DX,IOBPT

911A A0 0601 MOV AL,DS:[0601H]

911D 24 AF AND AL,0AFH

911F EE OUT DX,AL ;1、3路口黄灯亮

9120 E8 916F R CALL DELY2

9123 0C 50 OR AL,50H

9125 EE OUT DX,AL ;1、3路口黄灯灭

9126 E8 916F R CALL DELY2

9129 E2 EC LOOP LED1 ;闪烁8次

912B BA FF2A MOV DX,IOCPT

912E B0 F0 MOV AL,0F0H

9130 EE OUT DX,AL ;红灯全亮,绿灯全灭

9131 E8 916F R CALL DELY2

9134 B0 5A MOV AL,5AH

9136 EE OUT DX,AL ;2、4绿灯亮,1、3红灯亮 9137 E8 9162 R CALL DELY1 ;延时

913A E8 9162 R CALL DELY1

913D 0C F0 OR AL,0F0H

913F EE OUT DX,AL ;2、4路口绿灯灭

9140 B9 0008 MOV CX,8

9143 BA FF29 LED2: MOV DX,IOBPT

9146 A0 0601 MOV AL,DS:[0601H]

9149 24 5F AND AL,5FH

914B EE OUT DX,AL ;2、4路口黄灯亮

914C E8 916F R CALL DELY2

914F 0C A0 OR AL,0A0H

9151 EE OUT DX,AL ;2、4路口黄灯灭

9152 E8 916F R CALL DELY2

9155 E2 EC LOOP LED2 ;闪烁8次

9157 BA FF2A MOV DX,IOCPT

915A B0 F0 MOV AL,0F0H

915C EE OUT DX,AL ;红灯全亮、绿灯全灭 915D E8 916F R CALL DELY2

9160 EB A3 JMP LED0 ;循环

9162 50 DELY1: PUSH AX ;延时子程序

9163 51 PUSH CX

9164 B9 0030 MOV CX,30H

9167 E8 916F R DLY1: CALL DELY2

916A E2 FB LOOP DLY1

916C 59 POP CX

916D 58 POP AX

916E C3 RET

916F 51 DELY2: PUSH CX

9170 B9 8000 MOV CX,8000H

9173 E2 FE LOOP $

9175 59 POP CX

9176 C3 RET

9177 CODE ENDS

END START

电子技术基础实验指导书

《电子技术基础》实验指导书 电子技术课组编 信息与通信工程学院

实验一常用电子仪器的使用 一、实验类型-操作型 二、实验目的 1、学习电子电路实验中常用的电子仪器——示波器、函数信号发生器、直流稳压电源、交流毫伏表、频率计等的主要技术指标、性能及正确使用方法。 2、初步掌握用双踪示波器观察正弦信号波形和读取波形参数的方法。 三、实验原理 在模拟电子电路实验中,经常使用的电子仪器有示波器、函数信号发生器、直流稳压电源、交流毫伏表及频率计等。它们和万用电表一起,可以完成对模拟电子电路的静态和动态工作情况的测试。 实验中要对各种电子仪器进行综合使用,可按照信号流向,以连线简捷,调节顺手,观察与读数方便等原则进行合理布局,各仪器与被测实验装置之间的布局与连接如图1-1所示。接线时应注意,为防止外界干扰,各仪器的共公接地端应连接在一起,称共地。信号源和交流毫伏表的引线通常用屏蔽线或专用电缆线,示波器接线使用专用电缆线,直流电源的接线用普通导线。

图1-1 模拟电子电路中常用电子仪器布局图 1、示波器 示波器是一种用途很广的电子测量仪器,它既能直接显示电信号的波形,又能对电信号进行各种参数的测量。现着重指出下列几点: 1)、寻找扫描光迹 将示波器Y轴显示方式置“Y1”或“Y2”,输入耦合方式置“GND”,开机预热后,若在显示屏上不出现光点和扫描基线,可按下列操作去找到扫描线:①适当调节亮度旋钮。②触发方式开关置“自动”。③适当调节垂直()、水平()“位移”旋钮,使扫描光迹位于屏幕中央。(若示波器设有“寻迹”按键,可按下“寻迹”按键,判断光迹偏移基线的方向。) 2)、双踪示波器一般有五种显示方式,即“Y1”、“Y2”、“Y1+Y2”三种单踪显示方式和“交替”“断续”二种双踪显示方式。“交替”显示一般适宜于输入信号频率较高时使用。“断续”显示一般适宜于输入信号频率较低时使用。 3)、为了显示稳定的被测信号波形,“触发源选择”开关一般选为“内”触发,使扫描触发信号取自示波器内部的Y通道。 4)、触发方式开关通常先置于“自动”调出波形后,若被显示的波形不稳定,可置触发方式开关于“常态”,通过调节“触发电平”旋钮找到合适的触发电压,使被测试的波形稳定地显示在示波器屏幕上。 有时,由于选择了较慢的扫描速率,显示屏上将会出现闪烁的光迹,但被

微机原理实验指导书

微机原理及应用实验指导书 南京理工大学机械工程学院 2011年10月10日

实验1 基本操作实验 1. 实验目的 (1) 掌握TD-PITC 80X86 微机原理及接口技术教学实验系统的操作,熟悉Wmd86联机集成开发调试软件的操作环境。 (2) 掌握使用运算类指令编程及调试方法; (3) 掌握运算类指令对各状态标志位的影响及其测试方法; (4) 学习使用软件监视变量的方法。 2. 实验设备 PC机一台,TD-PITC 实验装置一套。 3. 实验内容及步骤 通过对样例程序的操作,学会在TD-PITC境下,如何输入汇编语言程序,如何进行汇编语言源程序的汇编、连接、下载和运行;在调试程序的学习过程中,应学会: ●如何设置断点; ●如何单步运行程序; ●如何连续运行程序; ●怎样查看寄存器的内容; ●怎样修改寄存器的内容; ●怎样查看存储器的内容; ●怎样修改存储器的内容。 3.1 实验内容1――――BCD码转换为二进制数 实验内容: 将四个二位十进制数的BCD 码存放于3500H 起始的内存单元中,将转换的二进制数存入3510H 起始的内存单元中,自行绘制流程图并编写程序。 参考实验程序清单如下: SSTACK SEGMENT STACK DW 64 DUP(?) SSTACK ENDS CODE SEGMENT ASSUME CS:CODE START: XOR AX, AX MOV CX, 0004H MOV SI, 3500H MOV DI, 3510H A1: MOV AL, [SI] ADD AL, AL MOV BL, AL

ADD AL, AL ADD AL, AL ADD AL, BL INC SI ADD AL, [SI] MOV [DI], AL INC SI INC DI LOOP A1 A2: JMP A2 CODE ENDS END START 实验步骤: 1)运行Wmd86 软件,进入Wmd86 集成开发环境。 2)根据程序设计使用语言的不同,通过在“设置”下拉列表来选择需要使用的语言,如图1-1所示。语言选择后,下次再启动软件,语言环境保持这次的修改不变。在这里,我们选择汇编语言。 图1-1 语言环境选择界面 3)语言选择后,点击新建或按Ctrl+N 组合键来新建一个文档,如图1-2所示。默认文件名为Wmd861。 图1-2 新建文件界面 4)编写实验程序,如图1-3所示,并保存,此时系统会提示输入新的文件名,输完后点击保存。

微机原理与接口技术实验汇总

实验要求 1、带预习报告上机 根据实验要求,作好充分预习,设计实验硬件原理及接线图(必须标出相关的管脚号,以备硬件连线及测试),画出程序流程图,写出源程序清单,规划好调试步骤,上机时带预习报告。注意:无预习报告者不得做实验。 2、认真实验,经教师检查后,方可离开 注意掌握软、硬件调试方法,提高分析问题、解决问题的能力。对所编写的程序必须十分清楚,作到知其然,亦知其所以然,硬件电路原理清楚,熟练应用常规的仪器(如万用表、示波器等)检查测试硬件电路。指导教师还会根据实验要求,提出问题。3、按时提交实验报告 实验结束后,在预习报告的基础上,完成实验报告,并于下次实验时交给指导教师。 实验报告格式 实验* ***** ***** ***** 一、实验目的 二、实验内容 三、硬件原理及接线图 四、程序流程图 五、程序清单 六、实验步骤 七、实验结果及现象分析 八、收获及建议 测13实验安排: 地点:综合实验楼0701 实验周次星期小节 一 6 五1,2 二8 五1,2 三10 五1,2 四12 五1,2 五14 五1,2

实验一汇编语言程序的调试 一、实验目的 1、掌握8086汇编程序的编辑、编译、连接及运行过程。 2、掌握使用HQFC软件调试程序的方法。 二、实验内容:编制程序并调试 1、上机调试P45 项目1程序。 要求:1)写出调试步骤 2)记下代码段数据。 3)记下数据段数据 4)用单步调试法调试,记下每句程序目的操作数执行结果。观察每句程序 执行过程中CS、 IP、 FLAGS寄存器的变化。 2、上机调试P54 项目2程序,用单步调试法指出每句程序的调试结果。 要求:1)记下代码段数据。 2)记下数据段数据 3)记下程序执行前附加段数据、程序执行后附加段数据。 3)用单步调试法调试,记下lop句之前每句程序目的操作数执行结果。 观察其它句程序的执行结果,观察每句程序执行过程中CS、 IP、 FLAGS寄存器的 变化。 三、调试步骤 1、编辑源程序,形成****.ASM文件(可用HQFC软件或XP系统下的记事本编辑源程序) (注:在E:盘上建立一个你自己的文件夹,保存你自己的文件) 2、编译,形成****.OBJ文件(可用HQFC软件的编译功能) 3、链接,形成****.EXE文件(可用HQFC软件的构建功能) 4、运行(或调试)(可用HQFC软件的重构运行功能或开始调试) 四、调试步骤参考 1、编译(编译) 在当前运行环境下,选择菜单栏中的“ASM文件编译”菜单,选择编译选项则程序对当前ASM源文件进行编译,编译调试窗口中输出汇编的结果,若程序汇编有错,则详细报告错误信息。双击输出错误,集成开发环境会自动将错误所在行代码显示。 2、构建(汇编+链接) 在当前运行环境下,选择菜单栏中的“ASM文件编译”菜单,选择汇编+链接选项则程序对当前ASM源文件进行汇编与链接,编译调试窗口中输出汇编与链接的结果,若程序汇编或链接有错,则详细报告错误信息。双击输出错误,集成开发环境会自动将错误所在行代码显示。 3、重构运行(汇编+链接+执行) 在当前运行环境下,选择菜单栏中的“ASM文件编译”菜单,选择汇编+链接+执行选项则程序对当前ASM源文件执行,程序自动运行。

数据结构实验指导书(2016.03.11)

《数据结构》实验指导书 郑州轻工业学院 2016.02.20

目录 前言 (3) 实验01 顺序表的基本操作 (7) 实验02 单链表的基本操作 (19) 实验03 栈的基本操作 (32) 实验04 队列的基本操作 (35) 实验05 二叉树的基本操作 (38) 实验06 哈夫曼编码 (40) 实验07 图的两种存储和遍历 (42) 实验08 最小生成树、拓扑排序和最短路径 (46) 实验09 二叉排序树的基本操作 (48) 实验10 哈希表的生成 (50) 实验11 常用的内部排序算法 (52) 附:实验报告模板 .......... 错误!未定义书签。

前言 《数据结构》是计算机相关专业的一门核心基础课程,是编译原理、操作系统、数据库系统及其它系统程序和大型应用程序开发的重要基础,也是很多高校考研专业课之一。它主要介绍线性结构、树型结构、图状结构三种逻辑结构的特点和在计算机内的存储方法,并在此基础上介绍一些典型算法及其时、空效率分析。这门课程的主要任务是研究数据的逻辑关系以及这种逻辑关系在计算机中的表示、存储和运算,培养学生能够设计有效表达和简化算法的数据结构,从而提高其程序设计能力。通过学习,要求学生能够掌握各种数据结构的特点、存储表示和典型算法的设计思想及程序实现,能够根据实际问题选取合适的数据表达和存储方案,设计出简洁、高效、实用的算法,为后续课程的学习及软件开发打下良好的基础。另外本课程的学习过程也是进行复杂程序设计的训练过程,通过算法设计和上机实践的训练,能够培养学生的数据抽象能力和程序设计能力。学习这门课程,习题和实验是两个关键环节。学生理解算法,上机实验是最佳的途径之一。因此,实验环节的好坏是学生能否学好《数据结构》的关键。为了更好地配合学生实验,特编写实验指导书。 一、实验目的 本课程实验主要是为了原理和应用的结合,通过实验一方面使学生更好的理解数据结构的概念

电子技术实验指导书

实验一常用电子仪器的使用方法 一、实验目的 了解示波器、音频信号发生器、交流数字毫伏表、直流稳压电源、数字万用电表的使用方法。二实验学时 2 学时 三、实验仪器及实验设备 1、GOS-620 系列示波器 2、YDS996A函数信号发生器 3、数字交流毫伏表 4、直流稳压电源 5、数字万用电表 四、实验仪器简介 1、示波器 阴极射线示波器(简称示波器)是利用阴极射线示波管将电信号转换成肉眼能直接观察的随时间变化的图像的电子仪器。示波器通常由垂直系统、水平系统和示波管电路等部分组成。垂直系统将被测信号放大后送到示波管的垂直偏转板,使光点在垂直方向上随被测信号的幅度变化而移动;水平系统用作产生时基信号的锯齿波,经水平放大器放大后送至示波管水平偏转板,使光点沿水平方向匀速移动。这样就能在示波管上显示被测信号的波形。 2、YDS996A函数信号发生器通常也叫信号发生器。它通常是指频率从0.6Hz至1MHz的正弦波、方波、三角波、脉冲波、锯齿波,具有直流电平调节、占空比调节,其频率可以数字直接显示。适用于音频、机械、化工、电工、电子、医学、土木建筑等各个领域的科研单位、工厂、学校、实验室等。 3、交流数字毫伏表 该表适用于测量正弦波电压的有效值。它的电路结构一般包括放大器、衰减器(分压器)、检波器、指示器(表头)及电源等几个部分。该表的优点是输入阻抗高、量程广、频率范围宽、过载能力强等。该表可用来对无线电接收机、放大器和其它电子设备的电路进行测量。 4、直流稳压电源: 它是一种通用电源设备。它为各种电子设备提供所需要的稳定的直流电压或电流当电网电压、负载、环境等在一定范围内变化时,稳压电源输出的电压或电流维持相对稳定。这样可以使电子设备或电路的性能稳定不变。直流电源通常由变压、整流、滤波、调整控制四部分组成。有些电源还具有过压、过流等保护电路,以防止工作失常时损坏器件。 6、计频器 GFC-8010H是一台高输入灵敏度20mVrms,测量范围0.1Hz至120MHz的综合计频器,具备简洁、高性能、高分辨率和高稳定性的特点。 5、仪器与实验电路的相互关系及主要用途:

微机原理及应用实验(题目)

微机原理及应用实验 实验一开发环境的使用 一、实验目的 掌握伟福开发环境的使用方法,包括源程序的输入、汇编、修改;工作寄存器内容的查看、修改;内部、外部RAM内容的查看、修改;PSW中个状态位的查看;机器码的查看;程序的各种运行方式,如单步执行、连续执行,断点的设置。二、实验内容 在伟福开发环境中编辑、汇编、执行一段汇编语言程序,把单片机片内的 30H~7FH 单元清零。 三、实验设备 PC机一台。 四、实验步骤 用连续或者单步的方式运行程序,检查30H-7FH 执行前后的内容变化。五、实验思考 1.如果需把30H-7FH 的内容改为55H,如何修改程序? 2.如何把128B的用户RAM全部清零? 六、程序清单 文件名称:CLEAR.ASM ORG 0000H CLEAR: MOV R0,#30H ;30H 送R0寄存器 MOV R6,#50H ;50H 送R6寄存器(用作计数器) CLR1: MOV A,#00H ;00 送累加器A MOV @R0,A ;00 送到30H-7FH 单元 INC R0 ;R0 加1 DJNZ R6,CLR1 ;不到50H个字节,继续 WAIT: LJMP WAIT END 实验二数据传送 一、实验目的 掌握MCS-51指令系统中的数据传送类指令的应用,通过实验,切实掌握数据传送类指令的各种不同的寻址方式的应用。 二、实验内容 1.编制一段程序,要求程序中包含7中不同寻址方式。 2.编制一段程序,将片内RAM30H~32H中的数据传送到片内RAM38H~3AH中。 3.编制一段程序,将片内RAM30H~32H中的数据传送到片外RAM1000H~1002H 中。 4.编制一段程序,将片内RAM40H~42H中的数据与片外RAM2000H~2002H中的数据互换。 三、实验设备 PC机一台。

微机原理与接口技术实验报告

微机原理与接口技术实验报告

2

3

实验一:数据传送 实验学时:2 实验类型:验证 实验要求:必修 一.实验目的 1.学习程序设计的基本方法和技能,掌握用汇编语言设计、编写、调试和运行程序的方法; 学习用全屏幕编辑软件QEDIT.EXE建立源程序(.ASM文件); 学习用汇编软件MASM.EXE对源文件汇编产生目标文件(.OBJ文件); 学习用连接程序LINK.EXE对目标文件产生可执行文件(.EXE文件); 学习用调试软件TD.EXE调试可执行文件; 2.掌握各种寻址方法以及简单指令的执行过程。 二.实验器材 PC机 三.实验组织运行要求 1.利用堆栈实现AX的内容与BX的内容进行交换。堆栈指针SP=2000H,AX=3000H,BX=5000H; 2.汇编、调试、观察、记录结果; ⑴用QEDIT.EXE软件输入汇编语言源程序,以.ASM格式文件存盘; ⑵用MASM对源程序进行汇编产生二进制目标文件(.OBJ文件),再用连接程序LINK产生可执行文件(.EXE文件); ⑶用调试软件TD调试、运行程序,观察、记录结果。 四.实验步骤 1.进入子目录E:>\SY86后,利用QEDIT.EXE(简称Q)送入以下汇编语言源程序,并以M1.ASM文件存盘 ⑴汇编语言程序的上机过程 ①进入\SY86子目录 E:>CD\SY86 E:\SY86> ②进入QEDIT.EXE 编辑界面 E:\SY86> Q ③输入文件名*.ASM(如M1.ASM)后,输入源程序 源程序 DATA SEGMENT PARA PUBLIC’DATA’ ;数据段定义 DB 512 DUP(0) DATA ENDS STACK SEGMENT PARA STACK’STACK’ ;堆栈段定义 DB 512 DUP( ?) 4

数据结构实验指导书

《数据结构》实验指导书 实验一顺序表 实验目的: 熟悉顺序表的逻辑特性、存储表示方法和顺序表的基本操作。 实验要求: 了解并熟悉顺序表的逻辑特性、存储表示方法和顺序表的基本操作的实现和应用。 实验内容: 1、编写程序实现在线性表中找出最大的和最小的数据元素,并符合下列要求: (1)设数据元素为整数,实现线性表的顺序存储表示。 (2)从键盘输入10个数据元素,利用顺序表的基本操作建立该表。 (3)利用顺序表的基本操作,找出表中最大的和最小的数据元素(用于比较的字段为整数)。 2、编写一个程序实现在学生成绩中找出最高分和最低分,并符合下列要求: (1)数据元素为学生成绩(含姓名、成绩等字段)。 (2)要求尽可能少地修改第一题的程序来得到此题的新程序,即要符合第一题的所有要求。(这里用于比较的字段为分数) 实验二链表 实验目的: 熟悉链表的逻辑特性、存储表示方法的特点和链式表的基本操作。 实验要求: 了解并熟悉链式表的逻辑特性、存储表示方法和链式表的基本操作的实现和应用。

实验内容: 1、编写一个程序建立存放学生成绩的有序链表并实现相关操作,要求如下: (1)设学生成绩表中的数据元素由学生姓名和学生成绩字段组成,实现这样的线性表的链式存储表示。 (2)键盘输入10个(或若干个,特殊数据来标记输入数据的结束)数据元素,利用链表的基本操作建立学生成绩单链表,要求该表为有序表 并带有头结点。(用于比较的字段为分数)。 (3)输入关键字值x,打印出表中所有关键字值<=x的结点。(用于比较的关键字字段为分数)。 (4)输入关键字值x,删除表中所有关键字值<=x的结点。(用于比较的关键字字段为分数)。 (5)输入关键字值x,并插入到表中,使所在的链表仍为有序表。(用于比较的字段为分数)。 实验三栈的应用 实验目的: 熟悉栈的逻辑特性、存储表示方法和栈的基本操作。 实验要求: 了解并熟悉栈的逻辑特性、顺序和链式存储表示方法和栈的基本操作的实现和应用。 实验内容: (1)判断一个表达式中的括号(仅有一种括号,小、中或大括号) 是否配对。编写并实现它的算法。 (2)用不同的存储方法,求解上面的问题。 (3)* 若表达式中既有小括号,又有大括号(或中括号),且允许 互相嵌套,但不能交叉,写出判断这样的表达式是否合法的算 法。如 2+3*(4-{5+2}*3)为合法;2+3*(4-{5+2 * 3} 、 2+3*(4-[5+2 * 3)为不合法。

数字电子技术实验指导书

数字电子技术实验指导书 (韶关学院自动化专业用) 自动化系 2014年1月10日 实验室:信工405

数字电子技术实验必读本实验指导书是根据本科教学大纲安排的,共计14学时。第一个实验为基础性实验,第二和第七个实验为设计性实验,其余为综合性实验。本实验采取一人一组,实验以班级为单位统一安排。 1.学生在每次实验前应认真预习,用自己的语言简要的写明实验目的、实验原理,编写预习报告,了解实验内容、仪器性能、使用方法以及注意事项等,同时画好必要的记录表格,以备实验时作原始记录。教师要检查学生的预习情况,未预习者不得进行实验。 2.学生上实验课不得迟到,对迟到者,教师可酌情停止其实验。 3.非本次实验用的仪器设备,未经老师许可不得任意动用。 4.实验时应听从教师指导。实验线路应简洁合理,线路接好后应反复检查,确认无误时才接通电源。 5.数据记录 记录实验的原始数据,实验期间当场提交。拒绝抄袭。 6.实验结束时,不要立即拆线,应先对实验记录进行仔细查阅,看看有无遗漏和错误,再提请指导教师查阅同意,然后才能拆线。 7.实验结束后,须将导线、仪器设备等整理好,恢复原位,并将原始数据填入正式表格中,经指导教师签名后,才能离开实验室。

目录实验1 TTL基本逻辑门功能测试 实验2 组合逻辑电路的设计 实验3 译码器及其应用 实验4 数码管显示电路及应用 实验5 数据选择器及其应用 实验6 同步时序逻辑电路分析 实验7 计数器及其应用

实验1 TTL基本逻辑门功能测试 一、实验目的 1、熟悉数字电路试验箱各部分电路的基本功能和使用方法 2、熟悉TTL集成逻辑门电路实验芯片的外形和引脚排列 3、掌握实验芯片门电路的逻辑功能 二、实验设备及材料 数字逻辑电路实验箱,集成芯片74LS00(四2输入与非门)、74LS04(六反相器)、74LS08(四2输入与门)、74LS10(三3输入与非门)、74LS20(二4输入与非门)和导线若干。 三、实验原理 1、数字电路基本逻辑单元的工作原理 数字电路工作过程是数字信号,而数字信号是一种在时间和数量上不连续的信号。 (1)反映事物逻辑关系的变量称为逻辑变量,通常用“0”和“1”两个基本符号表示两个对立的离散状态,反映电路上的高电平和低电平,称为二值信息。(2)数字电路中的二极管有导通和截止两种对立工作状态。三极管有饱和、截止两种对立的工作状态。它们都工作在开、关状态,分别用“1”和“0”来表示导通和断开的情况。 (3)在数字电路中,以逻辑代数作为数学工具,采用逻辑分析和设计的方法来研究电路输入状态和输出状态之间的逻辑关系,而不必关心具体的大小。 2、TTL集成与非门电路的逻辑功能的测试 TTL集成与非门是数字电路中广泛使用的一种逻辑门。实验采用二4输入与非门74LS20芯片,其内部有2个互相独立的与非门,每个与非门有4个输入端和1个输出端。74LS20芯片引脚排列和逻辑符号如图2-1所示。

微机原理及应用实验

实验报告1 实验项目名称:I/O地址译码;简单并行接口同组人: 实验时间:实验室:微机原理实验室K2-407 指导教师:胡蔷 一、实验目的: 掌握I/O地址译码电路的工作原理,简单并行接口的工作原理及使用方法。 二、预备知识: 输入、输出接口的基本概念,接口芯片的(端口)地址分配原则,了解译码器工作原理及相应逻辑表达式,熟悉所用集成电路的引线位置及各引线用途;74LS245、74LS373的特性及作用。 三、实验内容245输入373输出 使用Protues仿真软件制作如下电路图,使用EMU8086编译软件编译源程序,生成可执行文件(nn . exe),在Protues仿真软件中加载程序并运行,分析结果。 编程实现:读8个开关的状态,根据输入信号控制8个发光二极管的亮灭。 图1-1 245输入373输出 四、程序清单

五、实验结果 六、结果分析 七、思考题: 1、如果用74LS373作输入接口,是否可行?说明原因;用74LS245作输出接口,是否可行?说明原因。

实验报告2 实验项目名称:可编程定时器/计数器;可编程并行接口同组人: 实验时间:实验室:微机原理实验室K2-407 指导教师:胡蔷 一、实验目的: 掌握8253的基本工作原理和编程应用方法。掌握8255的工作原理及使用方法。 二、预备知识: 8253的结构、引脚、控制字,工作方式及各种方式的初始化编程及应用。 8255的内部结构、引脚、编程控制字,工作方式0、1、2的区别,各种方式的初始化编程及应用。 三、实验内容: ⑴8253输出方波 利用8253的通道0和通道1,设计产生频率为1Hz的方波。设通道0的输入时钟频率为2MHz,8253的端口地址为40H,42H,44H,46H。通道0的输入时钟周期0.5μs,其最大定时时间为:0.5μs×65536 = 32.768ms,要产生频率为1Hz(周期= 1s)的方波,利用;一个通道无法实现。可用多个通道级连的方法,将通道0的输出OUT0作通道1的输入时钟信号。设通道0工作在方式2(频率发生器),输出脉冲周期= 10 ms,则通道0的计数值为20000(16位二进制)。周期为4 ms的脉冲作通道1的输入时钟,要求输出端OUT1输出方波且周期为1s,则通道1工作在方式3(方波发生器),计数值为100(8位;二进制)。硬件连接如图2-1。

微机原理与接口技术李珍香版十个实验程序说课讲解

微机原理与接口技术李珍香版十个实验程 序

实验一 1.实验目的:掌握汇编语言源程序的结构。 2.实验内容:显示一串字符串“hellow world! 班级,学号”。3.实验代码: DATA SEGMENT MS DB ' Hello,World!$' NS DB ' 151044A,151044106$' DATA ENDS STACK SEGMENT STACK DW 50 DUP(?) STACK ENDS CODE SEGMENT ASSUME DS:DATA,CS:CODE:CODE,SS:STACK START:MOV AX,DATA MOV DS,AX MOV DX,OFFSET MS MOV AH,9 INT 21H MOV AX,DATA MOV DS,AX

MOV DX,OFFSET NS MOV AH,9 INT 21H MOV AH,4CH INT 21H CODE ENDS END START 4.实验结果:

实验二 1.实验目的:熟悉汇编语言源程序的编辑、汇编、连接、调试 过程 2.实验内容:两个8位16进制数相加(生日+当天日期) 3.实验代码: DATA SEGMENT SR DD 19970925H RQ DD 20171111H DATA ENDS STACK SEGMENT STACK DB 50 DUP(0) STACK ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK START:MOV AX,DATA MOV DS,AX MOV AX,WORD PTR SR ADD AX,WORD PTR RQ

2017数据结构实验指导书

《数据结构》实验指导书 贵州大学 电子信息学院 通信工程

目录 实验一顺序表的操作 (3) 实验二链表操作 (8) 实验三集合、稀疏矩阵和广义表 (19) 实验四栈和队列 (42) 实验五二叉树操作、图形或网状结构 (55) 实验六查找、排序 (88) 贵州大学实验报告 (109)

实验一顺序表的操作 实验学时:2学时 实验类型:验证 实验要求:必修 一、实验目的和要求 1、熟练掌握线性表的基本操作在顺序存储和链式存储上的实现。 2、以线性表的各种操作(建立、插入、删除等)的实现为重点。 3、掌握线性表的动态分配顺序存储结构的定义和基本操作的实现。 二、实验内容及步骤要求 1、定义顺序表类型,输入一组整型数据,建立顺序表。 typedef int ElemType; //定义顺序表 struct List{ ElemType *list; int Size; int MaxSize; }; 2、实现该线性表的删除。 3、实现该线性表的插入。 4、实现线性表中数据的显示。 5、实现线性表数据的定位和查找。 6、编写一个主函数,调试上述算法。 7、完成实验报告。 三、实验原理、方法和手段 1、根据实验内容编程,上机调试、得出正确的运行程序。 2、编译运行程序,观察运行情况和输出结果。 四、实验条件 运行Visual c++的微机一台 五、实验结果与分析 对程序进行调试,并将运行结果进行截图、对所得到的的结果分析。 六、实验总结 记录实验感受、上机过程中遇到的困难及解决办法、遗留的问题、意见和建议等,并将其写入实验报告中。

【附录----源程序】 #include #include using namespace std; typedef int ElemType; struct List { ElemType *list; int Size; int MaxSize; }; //初始化线性表 bool InitList(List &L) { L.MaxSize=20; L.list=new ElemType[L.MaxSize]; for(int i=0;i<20&&L.list==NULL;i++) { L.list=new ElemType[L.MaxSize]; } if(L.list==NULL) { cout<<"无法分配内存空间,退出程序"<L.Size+1||pos<1) { cout<<"位置无效"<

80x86微机原理与接口技术实验指导书

80x86微机原理与接口技术 实验指导书 长安大学信息工程学院电子信息与通信工程实验室

第1章 80X86 微机原理及其程序设计实验 本章主要介绍汇编语言程序设计,通过实验来学习80X86 的指令系统、寻址方式以及程序的设计方法,同时掌握联机软件的使用。 1.1 系统认识实验 1.1.1 实验目的 掌握TD-PITE 80X86 微机原理及接口技术教学实验系统的操作,熟悉Wmd86联机集成开发调试软件的操作环境。 1.1.2 实验设备 PC机一台,TD-PITE 实验装置一套。 1.1.3 实验内容 编写实验程序,将00H~0FH 共16 个数写入内存3000H 开始的连续16 个存储单元中。 1.1.4 实验步骤 1. 运行Wmd86 软件,进入Wmd86 集成开发环境。 2. 根据程序设计使用语言的不同,通过在“设置”下拉列表来选择需要使用的语言,如图1-1-1所示。语言选择后,下次再启动软件,语言环境保持这次的修改不变。在这里,我们选择汇编语言。 图1-1-1 语言环境选择界面 3. 语言选择后,点击新建或按Ctrl+N 组合键来新建一个文档,如图1-1-2所示。默认文件名为Wmd861。 图1-1-2 新建文件界面 4. 编写实验程序,如图1-1-3所示,并保存,此时系统会提示输入新的文件名,输完后

点击保存。 图1-1-3 程序编辑界面 5. 点击,编译文件,若程序编译无误,则输出如图1-1-4所示的输出信息,然后再点击进行链接,链接无误输出如图1-1-5所示的输出信息。 图1-1-4 编译输出信息界面图1-1-5 链接输出信息界面 6. 连接PC与实验系统的通讯电缆,打开实验系统电源。 7. 编译、链接都正确并且上下位机通讯成功后,就可以下载程序,联机调试了。可以通过端口列表中的“端口测试”来检查通讯是否正常。点击下载程序。为编译、链 接、下载组合按钮,通过该按钮可以将编译、链接、下载一次完成。下载成功后,在输出区的结果窗中会显示“加载成功!”,表示程序已正确下载。起始运行语句下会有一条绿色的背景。如图1-1-6所示。

微机原理及应用实验报告81487

实 验 报 告 课 程 名 称 实 验 名 称 实 验 日 期 学 生 专 业 学 生 学 号 学 生 姓 名 教 师 姓 名 成 绩 南京理工大学机械工程学院 微机原理及应用 实验1 DEBUG 操作实验 实验2 汇编程序设计实验 实验3 8253定时/计数器实验 实验4 8255 并行接口实验 年 月 日 至 年 月 日

实验一DEBUG命令及其操作 一、实验目的 1.熟练掌握debug的常用命令,学会用debug来调试程序。 2.深入了解数据在存储器中的存取方法及堆栈中数据的压入与弹出。 3.掌握各种寻址方法以及简单指令的执行过程。 二、实验要求 1.实验前要作好充分准备,包括汇编程序清单、调试步骤、调试方法以及对程序结果的分析等。 2.本实验要求在PC机上进行。 3.本实验只要求在DEBUG调试状态下进行,包括汇编程序,调试程序,执行程序。三、实验内容 ●实验内容1:学习用DEBUG调试工具进行源程序的输入、汇编、调试和执行。 实验报告要求: 1.写出运行结果; 2.小结debug常用命令及使用体会 答:1.原文已给出(略) 2.a 汇编 d显示内存单元内容 e修改单元内存内容 g执行命令 t单步(或多步)调试 n指定文件路径文件名(含扩展名) u反汇编 r查看寄存器值及修改 l加载程序 w写盘命令 体会:提升学习热情和动手能力有助于理解代码执行过程 ●实验内容2 设AX=3000H,BX=5000H,请编一程序段将AX的内容和BX的内容进行交换。请用堆栈作为两寄存器交换内容的中间存储单元,用DEBUG调试程序进行汇编与调试。 实验报告要求: 1.写出完成上述功能的程序段; 2.单步执行,并记录寄存器AX, BX及堆栈指针SP的值 答: A100 Mov ax,3000 ;ax:3000 bx:0000 sp:ffee Mov bx,5000 ;ax:3000 bx:5000 sp:ffee Push ax ;ax:3000 bx:5000 sp:ffec

微机原理与接口技术实验指导书1_[1]...

微机原理与接口技术实验指导书 编者:王亭岭 华北水利水电学院 电气学院自动化教研室 二零一二年三月

目录 实验一标志寄存器应用 (1) 实验二指令寻址方式练习 (4) 实验三分支结构程序设计 (6) 实验四循环结构程序设计 (7) 实验五子程序结构程序设计 (8) 实验六DOS系统功能调用程序设计 (10) 实验七BIOS中断调用程序设计 (12) 实验八定时器中断程序设计 (14)

实验一标志寄存器应用 一、实验目的与要求 1.掌握汇编程序的编译过程; 2.掌握8086的标志寄存器的特点。 二、实验内容 微型计算机(80x86系列)。 四、实验参考程序 DATA SEGMENT A DW 123 B DW 456 SUM DW ? DATA ENDS CODE SEGMENT ASSUME CS:CODE , DS:DATA START: MOV AX , DATA MOV DS , AX MOV AX , A SUB AX , B MOV SUM , AX MOV AH,4CH INT 21H CODE ENDS END START 五、实验步骤 步骤一、用鼠标单击开始菜单,单击运行。如下图所示:

步骤二、在运行窗口中键入cmd,回车进入命令提示符。如下图所示: 步骤三、在命令提示符中编译汇编源程序并连接*.obj文件。如下图所示:1.C:\>D: 回车 2.D:\ >CD MASM 回车 3.D:\MASM>MASM SY1.ASM 回车 4.D:\MASM>LINK SY1.OBJ 回车

步骤四、在命令提示行中运行并调试汇编程序。如下图所示:1.D:\MASM>SY1.EXE 回车 2.D:\MASM>DEBUG SY1.EXE 回车 六、实验结论 1.程序运行后变量SUM的值是多少? 2.程序运行前后标志寄存器的各标志位有何变化? 3.分析实验结果及所遇到的问题,并说明解决的方法。

《数据结构》实验指导书

《数据结构》实验指导书 实验类别:课内实验实验课程名称:数据结构 实验室名称:软件工程实验室实验课程编号:N02070601 总学时:64 学分: 4 适用专业:计算机科学与技术、网络工程、物联网工程、数字媒体专业 先修课程:计算机科学导论、离散数学 实验在教学培养计划中地位、作用: 数据结构是计算机软件相关专业的主干课程,也是计算机软硬件专业的重要基础课程。数据结构课程实验的目的是通过实验掌握数据结构的基本理论和算法,并运用它们来解决实际问题。数据结构课程实验是提高学生动手能力的重要的实践教学环节,对于培养学生的基本素质以及掌握程序设计的基本技能并养成良好的程序设计习惯方面发挥重要的作用。 实验一线性表的应用(2学时) 1、实验目的 通过本实验,掌握线性表链式存储结构的基本原理和基本运算以及在实际问题中的应用。 2、实验内容 建立某班学生的通讯录,要求用链表存储。 具体功能包括: (1)可以实现插入一个同学的通讯录记录; (2)能够删除某位同学的通讯录; (3)对通讯录打印输出。 3、实验要求 (1)定义通讯录内容的结构体; (2)建立存储通讯录的链表结构并初始化; (3)建立主函数: 1)建立录入函数(返回主界面) 2)建立插入函数(返回主界面) 3)建立删除函数(返回主界面) 4)建立输出和打印函数(返回主界面) I)通过循环对所有成员记录输出 II)输出指定姓名的某个同学的通讯录记录 5)退出 实验二树的应用(2学时) 1、实验目的 通过本实验掌握二叉排序树的建立和排序算法,了解二叉排序树在实际中的应用并熟练运用二叉排序树解决实际问题。 2、实验内容 建立一个由多种化妆品品牌价格组成的二叉排序树,并按照价格从低到高的顺序 打印输出。 3、实验要求 (1)创建化妆品信息的结构体; (2)定义二叉排序树链表的结点结构; (3)依次输入各类化妆品品牌的价格并按二叉排序树的要求创建一个二叉排序树链表;(4)对二叉排序树进行中序遍历输出,打印按价格从低到高顺序排列的化妆品品牌信息。 实验三图的应用(2学时)

15电力电子实验指导书

《电力电子技术》 实 验 指 导 书

实验一锯齿波同步移相触发电路实验 一、实验目的 (1)加深理解锯齿波同步移相触发电路的工作原理及各元件的作用。 (2)掌握锯齿波同步移相触发电路的调试方法。 二、实验所需挂件及附件 三、实验线路及原理 锯齿波同步移相触发电路的原理图参见挂件说明。锯齿波同步移相触发电路由同步检测、锯齿波形成、移相控制、脉冲形成、脉冲放大等环节组成,其工作原理可参见挂件说明和电力电子技术教材中的相关内容。 四、实验内容 (1)锯齿波同步移相触发电路的调试。 (2)锯齿波同步移相触发电路各点波形的观察和分析。 五、预习要求 (1)阅读电力电子技术教材中有关锯齿波同步移相触发电路的内容,弄清锯齿波同步移相触发电路的工作原理。 (2)掌握锯齿波同步移相触发电路脉冲初始相位的调整方法。 六、思考题 (1)锯齿波同步移相触发电路有哪些特点? (2)锯齿波同步移相触发电路的移相范围与哪些参数有关? (3)为什么锯齿波同步移相触发电路的脉冲移相范围比正弦波同步移相触发电路的移相范围要大? 七、实验方法 (1)将DJK01电源控制屏的电源选择开关打到“直流调速”侧,使输出线电压为200V(不能打到“交流调速”侧工作,因为DJK03-1的正常工作电源电压为

220V 10%,而“交流调速”侧输出的线电压为240V。如果输入电压超出其标准工作范围,挂件的使用寿命将减少,甚至会导致挂件的损坏。在“DZSZ-1型电机及自动控制实验装置”上使用时,通过操作控制屏左侧的自藕调压器,将输出的线电压调到220V左右,然后才能将电源接入挂件),用两根导线将200V交流电压接到DJK03-1的“外接220V”端,按下“启动”按钮,打开DJK03-1电源开关,这时挂件中所有的触发电路都开始工作,用双踪示波器观察锯齿波同步触发电路各观察孔的电压波形。 ①同时观察同步电压和“1”点的电压波形,了解“1”点波形形成的原因。 ②观察“1”、“2”点的电压波形,了解锯齿波宽度和“1”点电压波形的关系。 ③调节电位器RP1,观测“2”点锯齿波斜率的变化。 ④观察“3”~“6”点电压波形和输出电压的波形,记下各波形的幅值与宽 度,并比较“3”点电压U 3和“6”点电压U 6 的对应关系。 (2)调节触发脉冲的移相范围 将控制电压U ct 调至零(将电位器RP2顺时针旋到底),用示波器观察同步电压 信号和“6”点U 6的波形,调节偏移电压U b (即调RP3电位器),使α=170°,其波 形如图2-1所示。 图2-1锯齿波同步移相触发电路 (3)调节U ct (即电位器RP2)使α=60°,观察并记录U 1 ~U 6 及输出“G、K” 脉冲电压的波形,标出其幅值与宽度,并记录在下表中(可在示波器上直接读出,读数时应将示波器的“V/DIV”和“t/DIV”微调旋钮旋到校准位置)。 (4)

微机原理实验指导书

微机原理实验指导书汕头大学机电系摘录

实验一P1口实验及延时子程序设计 1.实验目的 利用单片机的P1口作为I/O口进行实验验证,掌握利用P1口作为输入口和输出口的编程方法,理解并掌握延时子程序的设计方法。 2.实验设备及器件 IBM PC机一台 DP-51PRO单片机综合仿真实验仪一台 3.实验内容 (1)编写一段程序,用P1口作为控制端口,使D1区的LED轮流点亮。 (2)编写一段程序,用P1.0~P1.6口控制LED,P1.7控制LED的亮和灭(P1.7接按键,按下时LED 亮,不按时LED灭)。 图 1 4.实验要求 学会使用单片机的P1口作I/O口。如果时间充裕,也可以考虑利用P3口作I/O口来做该实验。 5.实验步骤 ①用导线把A2区的J61接口与D1区的J52接口相连。原理如图1所示。 ②先编写一个延时程序。 ③将LED轮流点亮的程序编写完整并调试运行。 ④使用导线把A2区J61接口的P1.0~P1.6与D1区J52接口的LED1~LED7相连,另外A2区J61接口的P1.7与D1区J53的KEY1相连。原理如图3.2(b)所示。 ⑤编写P1.7控制LED的程序,并调试运行(按下K1看是否全亮)。 ⑥A2区J61接口P1.7与D1区J54的SW1相连,然后再运行程序,拨动开关SW1查看结果。

6.实验预习要求 阅读附录内容,理解实验的硬件结构。可以先把程序编好,然后在Keil C51环境下进行软件仿真。 7.实验参考程序 程序1: ORG 8000H ;此为硬件仿真调试程序,使用软件仿真或直接运行,应改为0000H LJMP M ain ORG 8100H ;此为硬件仿真调试程序,使用软件仿真或直接运行,应改为0100H Main: MOV A,#0FFH CLR C MainLoop: CALL Delay RLC A MOV P1,A ;把A的值输出到P1口 SJMP MainLoop Delay: MOV R7, #0 ;延时 Loop: MOV R6, #0 DJNZ R6, $ DJNZ R6, $ DJNZ R6, $ DJNZ R7, Loop RET ; END 程序2: ORG 8000H ;此为硬件仿真调试程序,使用软件仿真或直接运行,应改为0000H LJMP Main ORG 8100H ;此为硬件仿真调试程序,使用软件仿真或直接运行,应改为0100H Main:JB P1.7,SETLED ;按键没有按下时,跳转到SETLED CLRLED: CLR P1.0 CLR P1.1 CLR P1.2 CLR P1.3 CLR P1.4 CLR P1.5 CLR P1.6 SJMP Main SETLED: SETB P1.0 SETB P1.1

数据结构实验指导书(C版)

数据结构实验指导书(C语言版) 2017年9月

目录 1、顺序表的实现 (1) 2、链栈的实现 (3) 3、前序遍历二叉树 (5) 4、图的深度优先遍历算法 (7) 5、散列查找 (9)

1、顺序表的实现 1. 实验目的 ⑴掌握线性表的顺序存储结构; ⑵验证顺序表及其基本操作的实现; ⑶理解算法与程序的关系,能够将顺序表算法转换为对应的程序。 2. 实验内容 ⑴建立含有若干个元素的顺序表; ⑵对已建立的顺序表实现插入、删除、查找等基本操作。 3. 实现提示 定义顺序表的数据类型——顺序表结构体SeqList,在SeqList基础上实现题目要求的插入、删除、查找等基本操作,为便于查看操作结果,设计一个输出函数依次输出顺序表的元素。简单起见,本实验假定线性表的数据元素为int型,要求学生: (1)将实验程序调试通过后,用模板类改写; (2)加入求线性表的长度等基本操作; (3)重新给定测试数据,验证抛出异常机制。 4. 实验程序 在编程环境下新建一个工程“顺序表验证实验”,并新建相应文件,文件包括顺序表结构体SeqList的定义,范例程序如下: #define MaxSize 100 /*假设顺序表最多存放100个元素*/ typedef int DataType; /*定义线性表的数据类型,假设为int型*/ typedef struct { DataType data[MaxSize]; /*存放数据元素的数组*/ int length; /*线性表的长度*/ } SeqList; 文件包括建立顺序表、遍历顺序表、按值查找、插入操作、删除操作成员函数的定义,范例程序如下: int CreatList(SeqList *L, DataType a[ ], int n) { if (n > MaxSize) {printf("顺序表的空间不够,无法建立顺序表\n"); return 0;} for (int i = 0; i < n; i++) L->data[i] = a[i]; L->length = n; return 1; }

相关主题
文本预览
相关文档 最新文档