第七部分 基本实验(8086)

合集下载

微机原理实验报告 8086最小系统构建和IO接口电路

微机原理实验报告 8086最小系统构建和IO接口电路

实验12:8086最小系统构建和I/O地址译码实验1、实验目的:(1)掌握I/O地址译码的工作原理和电路设计(2)掌握Proteus ISIS中电路原理图的模块化设计方法(3)绘制通用的8086最小系统电路图和I/O地址译码电路图供后续实验使用2、实验设备:安装有Proteus的PC一台3、实验过程:编写测试程序,对8086最小系统和I/O地址译码电路模块进行仿真测试。

(1)所绘制电路图如下面截屏所示:首先是8086最小系统电路图,如下:第二个是I/O地址译码子电路图,如下:实验电路图如下面所示:(2)实验仿真运行画面截图如下所示:(对所给程序稍微作了变动)(3)程序源代码如下所示:.model small.8086.stack.data.code.startupmov dx,1000hlp0:mov bx,0e001hlp1:mov al,blout dx,almov ah,1call delaycmp bl,0jz lp2rol bx,1jmp lp1lp2:mov ah,8call delayjmp lp0delay:mov cx,5000d: loop ddec ahjnz delayretend4、实验总结:(1)绘制实验电路图时主要问题包括标号的设置(如果未设置则会出现八个灯同时亮的情况),总线等的连接(注意对应接口相同,引脚线与总线的连接末端采用斜线)等。

(2)程序中,lp0中将点亮的模式传送给bx寄存器,可改变该值从而改变点亮的模式(如改为0e004h则变为有4个灯同时亮);Lp1中,将每个周期中灯与灯的时间间隔设为一个基本单位并存入了ah中,可改变该值以延长时间(如实验习题中);Lp2中,将不同周期直接的时间间隔设为8个时间单位并存放入ah中,与上一个值一起可以调控灯亮的持续时间和周期等。

(3)注意总线标号的输入为中为XD[0..15]而非XD[0,,15];另外注意合理安排位置以使电路图更加美观。

微机接口(8086)基本实验指导书

微机接口(8086)基本实验指导书

目录实验须知 (2)实验一系统介绍 (3)一.系统特点 (3)二、8086系统概述 (3)三、系统电源 (5)四、硬件介绍 (5)实验二简单I/O口扩展实验 (9)实验三存储器读写实验 (11)实验四I/O口扩展和存储器扩展设计实验 (14)实验五8255并行口实验 (17)实验六8253定时器/计数器接口实验 (19)实验七LCD显示实验 (22)实验须知一、预习要求1.实验前认真阅读实验教程中有关内容,明确实验目的和实验任务。

2.每次实验前应有预习报告,未预习者不允许参加实验。

预习报告中:对软件实验,要求画出程序流程图,编好上机程序;对硬件实验,要求画出实验线路图,拟定实验步骤,画出程序流程图,编好上机程序。

二、实验要求1.实验是学习“汇编语言程序设计”和“微机原理与接口技术”这两门课程的重要环节,实验课请勿迟到,缺席。

2.爱护设备,保持清洁,不随意更换设备。

3.认真完成实验任务,实验结果经教师检查,教师对实验内容提问,对完成者做记录。

4.做硬件实验时,注意断电操作,即所有的接线、改线及拆线操作均应在不带电的状态下进行,严禁带电操作,并注意防止导线堵塞插孔。

5.发生事故,应立即切断电源,并马上向教师报告,检查原因,吸取教训。

6.实验完毕,请整理实验设备,再离开实验室。

三、报告要求每次实验后,应递交一份实验报告,报告中应包括下列内容:1.实验名称、实验人姓名、学号、班级、所用的设备号。

2.实验目的、任务。

3.各任务程序流程图、程序清单(应加适量注释)。

4.硬件实验应画出各任务的完整电路图,包括PC总线与实验用到芯片间全部电路。

5.记录和分析实验结果。

6.据实验目的认真做小结。

实验一系统介绍一.系统特点EL-MUT-III 型微机/单片机教学实验系统是北京精仪达盛科技有限公司根据广大学者和许多高等院校实验需求,结合电子发展情况而研制的具有开发、应用、实验相结合的高科技实验设备。

旨在尽快提高实验者的动手能力、分析解决问题能力。

8086微机原理实验报告

8086微机原理实验报告

8086微机原理实验报告实验名称:8086微机原理实验实验目的:1.深入了解8086微处理器的内部结构和指令系统。

2.掌握汇编语言的编程方法和技巧。

3.熟悉微机系统的输入输出操作原理。

4.掌握8086微机系统的调试方法和程序调试技巧。

实验器材:1.8086微处理器芯片2.Intel 8086学习板3.编程器4.示波器5.实验箱实验步骤:1.熟悉8086微处理器的内部结构和指令系统在开始实验前,首先需要熟悉8086微处理器的内部结构和指令系统。

通过阅读教材和讲义,了解到8086微处理器采用16位结构,具有4个寄存器组,支持16种不同寻址方式的指令。

熟练掌握常用的指令系统和汇编语言的编程方法。

2.设计并编制简单的汇编程序在熟悉8086微处理器的内部结构和指令系统后,我们开始设计并编制简单的汇编程序。

本实验中,我们编写了一个简单的汇编程序,用于实现两个数的加法操作,并将结果存储在内存中。

程序中使用了mov指令将操作数送入寄存器,add指令将它们相加,再用mov指令将结果存储到内存中。

程序流程图如下所示:a. 将第一个数送入累加器A中。

b. 将第二个数送入寄存器B中。

c. 执行add指令,将A和B相加,结果保存在A中。

d. 将结果存储到内存中。

e. 程序结束。

3.调试程序并进行测试在完成汇编程序的编写后,我们需要使用调试器对程序进行调试,并进行测试。

首先,将程序加载到学习板上进行调试。

在调试过程中,我们使用示波器观察各个信号的波形,以确定程序的正确性。

通过逐步单步执行程序并观察寄存器和标志位的变化,我们验证了程序的正确性。

接下来,我们使用输入设备输入两个数,并观察输出结果是否正确。

测试结果表明程序正确实现了两个数的加法操作。

4.总结体会和改进建议通过本次实验,我们深入了解了8086微处理器的内部结构和指令系统,掌握了汇编语言的编程方法和技巧,熟悉了微机系统的输入输出操作原理,以及掌握了8086微机系统的调试方法和程序调试技巧。

微机原理8086实验指导书

微机原理8086实验指导书

实验一循环程序、分支程序与运算程序的设计一. 实验内容1.在ABC地址处有20个字节数据,今要求传送到CBA地址处,并在屏幕上显示目的串的内容。

试用两种方法实现。

(字节串传送,字节传送循环)2.以BLOCK1和BLOCK2开头的2个字符串,其长度均为LEN,试编程实现:(1)将BLOCK1开头的字符串送到BLOCK2开始的内存空间。

(2)将BLOCK1开始的内存空间全部清零。

3.试编一程序,要求比较两个字符串STRING1和STRING2所含字符是否完全相同,若相同则屏幕显示“MATCH”,若不相同则屏幕显示“NO MATCH”4.在ABC和BCD两地址起,各有两个字节的无符号数,试编程实现这两个无符号数的加法以及减法运算,并将结果分别存放到CBA和DCB开始的存储单元中去。

二. 实验目的:1.使学生掌握MASM汇编环境下程序的编辑、编译、连接、调试过程及方法。

2.掌握程序框图的设计方法;3.掌握分支程序的设计方法;4.掌握循环程序的设计方法;三. 实验说明1.实验之前,一定写好预习报告(包括画出程序框图;写出程序),否则不准做实验;2.调试程序程序,改正语法错误和其他错误。

四. 实验报告要求:1.画出程序框图;2.写出预习过程中所写的两个程序;3.写出调试之后的程序和两个程序;实验二主程序与子程序的设计一. 实验内容1.试用子程序结构编写一程序:从键盘输入一个2位十进制的月份数(01~12),然后显示出相应的英文缩写名。

提示:根据题目要求实现的功能,可编写用一个主程序MAIN分别调用几个子程序。

(1)INPUT从键盘接收一个2位数,并把它转换为对应的二进制数。

(2)LOCATE 把输入的月份数与其英文缩写名(如JAN,FEB,MAR,APP,MAY,JUN等)对应起来,制成一个字符表以便查找。

DISPLAY 将找到的缩写字母在屏幕上显示出来,显示可用DOS所提供的显示功能(INT 21H的09号功能)。

8086实验指导书

8086实验指导书

开放式微机教学实验系统8086实验指导书西安唐都科教仪器公司目录实验一系统认识实验 (3)实验二数码转换编程及程序调试 (5)实验三运算类编程实验 (8)实验四分支程序设计实验 (10)实验五循环程序设计 (12)实验六子程序设计实验 (14)实验七存储器扩展实验 (15)实验八中断特性及8259应用编程实验 (17)实验七存储器扩展实验 (24)实验七存储器扩展实验 (26)实验一系统认识实验一、实验目的掌握TDN86/51教学系统的基本操作二、实验设备TDN86/51教学实验系统一台三、实验内容及步骤1.系统认识实验(1)(1)程序的输入与修改从3500H内存单元开始建立0-15共16个数据。

实验步骤a.使用串行通讯电缆将实验系统与PC微机相连。

b.将位于线路板右下角的系统状态选择开关拨至86档,开启实验系统。

c.在系统软件所在目录下键入MD86↙,选择对应串口号,进入集成操作软件环境,出现系统提示符“>”。

按下F1功能键,进入全屏幕编辑界面,按ALT+F建立新文件(NEW),即可开始输入源程序。

实验程序及流程如下:STACK SEGMENT STACK ;8088宏汇编程序DW 64 DUP(?) ;定义堆栈段STACK ENDSCODE SEGMENT;定义代码段ASSUME CS:CODESTART: MOV DI,3500H ;程序开始设数据区首址MOV CX,0010H ;字节数送入CX中MOV AX,0000HSAHFA1: MOV [DI],AL ;写入一字节INC DI ;修改地址指针INC AX ;修改数据DAA ;十进制调整LOOP A1 ;未填完转移A2: JMP A2CODE ENDS ;代码段结束END START ;程序段结束d.输入程序后,按F2保存程序(规定扩展名为*.asm),使用ALT+X返回集成软件环境。

e.按F2,输入源程序名↙(省略扩展名,系统默认为.asm),对源程序进行汇编,生成目标文件(*.obj)及错误信息文件(*.m)。

8086实验指导书

8086实验指导书

频率 300KHz 8088
AEDK88ET
与PC机连
ADC0809
8279
VCC GND
8259 蜂呜器 8位开关
8251 8253 62256
39
I/O译码电路
40
第四章 硬件接口实验
41

实验一
一、实验要求
双色灯实验
编写程序,以8255为输出口,控制四个双色灯按红、绿、黄的要求发光。
二、实验目的
35
8. 实验仪必须如下显示才算加载成功
只有显示8688 2.1 才算加载成功
36
9.如何知道程序是不是处在执行状态,可观察如下几个位 置:

交替闪烁

交替闪烁
37
10.如何中止程序的执行
1.中止执行程 序按HALT
2 .恢复初始 状态按RST
38
电位器 译码器地址 8位LED 电源开关
交通灯 DAC0832 8255
26
主程序 调用inword 调用sort BUFF→SI [SI]→AL 调用display SI+1
Display子程序 AL/10→AL,AH AL+30H→AL AH+30H→AH AH→DH AH=2 调用 INT21H显示 显示空格 CX-1 CX=0? 结束
27
A
DH → AL
AH=2调用 INT21H显示 RET
23
实验二 从键盘输入并换
一. 实验要求 从键盘输入5个有符号2位十进制数,将它转换成有符号二进制数, 将结果送入内存中buff开始的单元中。 二. 实验目的 掌握键盘接受数据的方法,码制转换。 三. 实验程序框图 算法: ①符号字符串→标识符MINU。若为负, MINU=1; ②数字字符(31H~39H)→一位十进制数(0~9)a0,a1,a2… ③十进制数转换成十六进制数: 十六进制数=a2x100+a1x10+a0 =(a2x10+a1) x10+a0 ④ 转换后查符号,如果是负数,取补 码制转换部分流程图: 24

8086汇编课程设计

8086汇编课程设计

8086汇编课程设计一、课程目标知识目标:1. 理解8086汇编语言的基本概念,掌握汇编语言的程序结构。

2. 学会使用8086汇编语言进行基本的输入输出操作,理解寄存器、内存的使用方法。

3. 掌握汇编语言中的条件判断、循环等控制语句,并能够运用到实际编程中。

技能目标:1. 能够运用汇编语言编写简单的程序,解决实际问题。

2. 培养学生的逻辑思维能力和编程技能,提高解决复杂问题的能力。

3. 培养学生独立调试汇编程序的能力,学会使用汇编器的常用功能。

情感态度价值观目标:1. 培养学生对计算机硬件及底层编程的兴趣,激发学习热情。

2. 增强学生的团队合作意识,学会在团队中沟通、协作、共同解决问题。

3. 培养学生严谨、细致的学习态度,养成良好的编程习惯。

分析课程性质、学生特点和教学要求,本课程目标旨在使学生在理解汇编语言基本概念的基础上,通过实际编程实践,掌握汇编语言的核心技能,培养具备实际编程能力和逻辑思维能力的高年级学生。

课程目标分解为具体学习成果,便于后续教学设计和评估。

二、教学内容1. 汇编语言基本概念:介绍8086汇编语言的发展历程、特点,理解汇编语言与机器语言的关系,掌握汇编程序的基本结构。

教材章节:第一章 汇编语言概述2. 寄存器与内存操作:讲解8086处理器寄存器、内存地址空间,学会使用寄存器和内存进行数据存储和运算。

教材章节:第二章 寄存器与内存操作3. 汇编指令系统:学习汇编语言的基本指令、数据传输指令、算术运算指令、逻辑运算指令等,并掌握其使用方法。

教材章节:第三章 汇编指令系统4. 程序控制语句:介绍条件判断、循环等控制语句,学会编写具有分支、循环结构的汇编程序。

教材章节:第四章 程序控制语句5. 字符串处理:学习字符串处理指令,掌握字符串输入输出、比较、复制等操作。

教材章节:第五章 字符串处理6. 中断与子程序:讲解中断的概念、中断处理程序,学会编写和调用子程序。

教材章节:第六章 中断与子程序7. 汇编语言编程实践:结合实际案例,进行汇编语言编程实践,培养实际编程能力。

8086实验安排

8086实验安排

8086实验安排•软件实验•硬件实验1•硬件实验2•综合实验硬件实验2安排时间实验分类实验内容具体要求第十周8086硬件实验ISA总线接口设计4×4键盘实验七第十一周长假第十二周显示器实验七第十三周D/A实验八第十四周A/D实验九第十五周串行通信及定时器实验九硬件实验2具体内容实验名称ISA总线接口设计--显示器、键盘(2周)实验目的掌握LED显示器或LCD显示器的原理与接口设计技术。

掌握扫描式键盘的工作原理与接口设计实验要求设计LED显示器或LCD显示器接口电路。

设计扫描式键盘的接口电路。

基本内容实验7-1(难度系数1)(P252)1、2或实验7-2(难度系数2),(P253)1、2 实验7-5(P254)1附加内容z实验7-1 3* z实验7-2 3* z实验7-5 2*预习内容教材第七章硬件实验2具体内容实验名称ISA总线接口设计--串行接口(1周)实验目的z掌握基于PC机的INTEL 8251接口的设计方法。

z掌握利用INTEL 8251进行通信的方法。

实验要求掌握串行接口的工作原理及INTEL 8251的接口设计及应用基本内容实验8-1(P289)预习内容教材第八章硬件实验2具体内容实验名称ISA总线接口设计--D/A、A/D(2周)实验目的z了解D/A、A/D转换的工作原理。

z掌握基于ISA总线的D/A转换器接口和A/D转换器设计方法。

实验要求设计D/A和A/D的接口电路。

基本内容z实验9-1(P318)1 z实验9-2(P318)1附加内容z实验9-1 2* z实验9-2 2*预习内容教材第九章键盘与CPU的连接5V•4X4键盘的工作原理当无键按下时,行线与列线断开,所有列线均为高电平。

当有一个键按下时,则与此键对应的行线与列线接通。

如此行线为低电平,则此列线也为低电平。

键盘与CPU的连接•标准电路实现4X4键盘的接口行线与并行输出接口相连,列线与并行输入接口相连。

输出口为无条件输出的数据锁存器,输入口为无条件输入的三态缓冲器,行锁存与驱动列缓冲DATAWRRD5V74LS27374LS2448255A D_BUS WRRD 5V 设置为方式0输出设置为方式0输入键盘与CPU的连接可编程接口电路实现4X4键盘接口采用可编程并行接口电路,如INTEL 8255A等,但必须将它们编程为无条件输出和输入的方式方式0输出方式0输入74LS374Q 0Q 1Q 2Q 3Q 4Q 5Q 6Q 7CLK D 0D 1D 2D 3D 4D 5D 6D 774LS2441Y11Y21Y31Y42Y12Y22Y32Y41A11A21A31A42A12A22A32A41G 2G +5OE A 0A 1A 2A 3A 4A 5A 6A 7A 8A 9A 10A 11A 12A 13A 14A 15A 16A 17A 18A 19D 0D 1D 2D 3D 4D 5D 6D 774LS138C B A G 2A Y 0Y 1Y 2Y 3Y 4Y 5Y 6Y 7G 2B G 1AENIOR IOW ISA总线A8A7A6A9A5A4A2A1A0键盘接口设计•4X4键盘与ISA 总线的接口输出口输入口译码静态显示的原理与接口用一个74LS273或74LS374构成的输出锁存器来控制一位显示器。

8086实验指导书-2016(定稿20161009)

8086实验指导书-2016(定稿20161009)

PROTEUS-8086实验指导书编者段绪红、李德智、李崇维电气工程专业实验中心2016年9月目录PROTEUS的操作 (1)PROTEUS简介 (1)实验原理 (1)新建工程 (2)编译工程 (4)原理图绘制 (6)仿真调试技巧 (13)8086软件部分实验 (18)实验一系统认识实验 (18)实验二循环程序设计 (20)实验三分支程序设计 (23)实验四数码转换实验 (26)实验五子程序设计 (30)8086硬件部分实验 (33)实验一IO口读写实验(245、373) (33)实验二8255并行I/O扩展实验 (36)实验三可编程定时/计数器8253实验 (39)实验四七段数码管显示实验 (42)附录:DEBUG调试程序的使用及其上机过程 (45)PROTEUS的操作PROTEUS简介PROTEUS是本实验箱进行8086实验的必备软件,是电路设计、电路仿真与调试、程序编译的环境。

PROTEUS教学实验系统(8086/8051)主要由教学实验箱、实验指导书及其配套光盘组成。

通过USB连接线把电脑与实验箱相连接,能完成针对8086的各种交互式仿真实验;通过WWISP下载器,可以对8051芯片进行ISP编程,进行单片机实验课程。

本教学实验箱摒弃以往的设计思想,采用模块化设计,总线器件都可以挂在总线上,只须要接上CS片选就可以实验,减少了实验过程中的接线问题,同时也可极大地提高学生的实验速度。

结合PROTEUS的电路仿真功能,能够大大提高学生实验的动手设计能力。

实验原理大部分实验的开展,我们都采用在PROTEUS平台下的交互式仿真,使用硬件平台与电脑软件仿真同时进行的方法,实验的开展流程如下:在进行硬件实验中,有几点需要注意:1、尽量保持线束的整齐,对于控制线少交叉缠绕。

2、拔线时请逐根拔除,切忌强行硬拔整股连线(易造成整股损坏)。

3、液晶类实验涉及到液晶对比度的调节,请通过邻近电位器来调整。

新建工程首先,打开PROTEUS软件,打开菜单“File->New Project”。

8086实验报告

8086实验报告

8086实验报告8086实验报告引言:8086微处理器是Intel公司于1978年推出的一款16位微处理器,它在计算机发展历史上具有重要的地位。

本实验旨在通过对8086微处理器的实际应用,深入了解其工作原理和功能。

一、实验目的本实验的目的是通过对8086微处理器的实际操作,掌握其基本指令的使用方法,并了解其内部结构和工作原理。

二、实验材料和方法1. 实验材料:- 8086微处理器开发板- 电源线- 串口线- 电脑2. 实验方法:- 将8086开发板与电脑通过串口线连接- 将电源线插入开发板并连接电源- 打开电脑,启动开发板上的操作系统- 使用汇编语言编写程序,并通过串口线将程序下载到开发板中- 在开发板上运行程序,观察结果并进行分析三、实验过程1. 硬件连接:将8086开发板与电脑通过串口线连接,并确保连接稳定。

2. 软件操作:打开电脑,启动开发板上的操作系统。

使用汇编语言编写程序,并通过串口线将程序下载到开发板中。

3. 程序运行:在开发板上运行程序,并观察结果。

通过分析程序的运行过程,了解8086微处理器的工作原理和功能。

四、实验结果与分析在本次实验中,我们编写了一个简单的程序,用于在开发板上显示一段文字。

通过观察开发板上的显示屏,我们可以看到程序成功地在8086微处理器上运行,并显示出我们编写的文字。

通过对程序的分析,我们可以了解到8086微处理器具有强大的计算和控制能力。

它能够执行各种指令,完成各种复杂的计算任务。

同时,8086微处理器还具有较大的存储空间和高速的数据传输能力,使得它能够处理大量的数据和信息。

此外,8086微处理器还具有良好的扩展性和兼容性。

它可以与其他外部设备进行连接,实现更多的功能和应用。

同时,8086微处理器与其后续型号的兼容性也非常好,这使得它在计算机领域得到了广泛的应用。

五、实验总结通过本次实验,我们深入了解了8086微处理器的工作原理和功能。

我们通过编写程序并在开发板上运行,亲身体验了8086微处理器的强大计算能力和高效数据传输能力。

8086 实验指导书

8086 实验指导书

第一部分实验系统简介1.1 QTH软件环境介绍QTH-2008PCI实验仪提供了16位和32位两种微机接口集成实验环境,16位的开发环境“QTH-2008PCI-B”是通过PC机的串行接口与实验仪上的8088/8086H模块相连来实现系统开发的,它实际上是通过RS232接口仿真8088/8086的ISA总线环境的;32位的开发环境“QTH-2008PCI-B”是通过PC机的PCI插槽与实验仪上的PCI9052模块相连来实现系统开发的,它通过PCI插卡和PCI9052桥接芯片为用户提供了一个仿真ISA接口,同时它也提供了PCI总线控制芯片全开放的用户总线接口,使用户可以直接开发32位的应用程序。

“QTH-2008PCI-B”可运行于Windows98/Me/2000/XP操作系统。

但由于从Windows2000/XP操作系统开始,不再提供用汇编语言直接对低层口地址的操作以及BIOS、DOS功能调用的支持。

因此,在Windows2000/XP操作系统下“QTH-2008PCI-B”系统暂不支持BIOS、DOS功能调用,进行一般的汇编语言实验时也必须先打开实验仪电源;而“QTH-2008PCI-B”系统目前只能通过C语言对端口地址进行操作,虽不能用汇编语言直接对端口地址操作,但可进行一般的汇编语言练习,包括部分DOS 功能调用,而且可以运行于没有安装QTH-2008PCI实验仪的PC机。

因此,在进行纯汇编语言练习时,使用“QTH-2008PCI-B”系统;进行接口操作时,则应使用“QTH-2008PCI”系统。

两种系统的使用方法非常接近,掌握一种系统的使用后,另一种系统自然就会使用了。

1.2 QTH软件系统的使用一、安装及进入QTH 系列开发系统QTH 系列开发系统的软件安装非常简单,只要运行随机光盘提供的Setup.exe 应用程序,所有操作均按默认选项进行即可。

安装完成后会在桌面和“开始”菜单生成对应的图标和程序组。

8086实验

8086实验

实验一、寻址方式与基本指令实验一、实验目的1.熟悉8086寻址方式及基本指令功能,进一步理解和巩固课学习内容。

2.掌握汇编语言程序设计上机过程和汇编语言源程序结构。

3.熟悉Microsoft的DEBUG调试工具的使用方法。

二、实验预习要求1.认真阅读教科书第三章,了解并熟悉汇编语言程序的上机步骤及DEBUG调试工具的使用方法。

2.复习8086操作数寻址方式及基本指令功能(数据传送、算术运算和逻辑运算等)。

3.了解实验内容,并在实验前根据课堂所学知识回答有关问题(个别取决于程序实际运行环境的问题外),以便在实验时进行验证。

三、实验内容1.读懂下列源程序,使用EDIT生成名为EX11.ASM的源程序,汇编生成EX11.OBJ文件和EX11.LST文件,连接生成EX11.EXE文件;用EDIT打开EX11.LST文件,了解.LST文件包含的信息;使用DEBUG调试工具单步执行EX11.EXE程序,注意观察IP值的变化,并回答下列问题。

1)程序装入后,代码段寄存器CS的内容为H,代码段第一条可执行指令“MOV AX,DATA”对应的机器代码为H,它是一个字节指令,注意观察执行该指令时IP的变化情况,该指令源操作数DATA的寻址方式是,其值为。

2)执行完“MOV DS,DATA”指令后,数据段寄存器DS的内容为H,源程序在数据段中定义的数据库82H、68H和88H被装入的存储单元的物理地址分别为H,H和H。

3)程序中第一条“ADD AL,[BX]”指令对应的机器代码H,它是一个字节指令,注意观察执行该指令时IP的变化情况,该指令中源操作数的寻址方式为,该操作数所在存储单元的逻辑地址(DS):(BX)为,物理地址为H;执行完该指令后(AL)= H,CF= ,OF= ,ZF= ,SF= ,AF= ,PF= ;若两操作数为无符号数,计算结果是否正确?若两操作数为带符号数,计算结果是否正确?若计算结果正确,结果是正数还是负数?4)执行完第二条“ADD AL,[BX]”指令后,(AL)= H,CF= ,OF= ,ZF= ,SF= ,AF= ,PF= ;若两操作数为无符号数,计算结果是否正确?若两操作数为带符号数,计算结果是否正确?5)指令“MOV SUM,AL”中,目的操作数的寻址方式为,该指令执行完后,注意观察(DS):0003H单元中值的变化,该单元的值变为H。

第七部分 基本实验(8086)

第七部分   基本实验(8086)

第七部分 基本实验(8086)实验一 简单I/O口扩展实验一、实验目的1、 熟悉74LS273,74LS244的应用接口方法。

2、掌握用锁存器、三态门扩展简单并行输入、输出口的方法。

二、实验设备MUT—Ⅲ型实验箱、8086CPU模块。

三、实验内容逻辑电平开关的状态输入74LS244,然后通过74LS273锁存输出,利用LED显示电路作为输出的状态显示。

四、实验原理介绍本实验用到两部分电路:开关量输入输出电路,简单I/O口扩展电路。

五、实验步骤1、实验接线:(表示相互连接)CS0 CS244; CS1CS273; 平推开关的输出K1~K8 IN0~IN7(对应连接); O0~O7LED1~LED8。

2、编辑程序,单步运行,调试程序3、调试通过后,全速运行程序,观看实验结果。

4、编写实验报告。

六、实验提示74LS244或74LS273的片选信号可以改变,例如连接CS2,此时应同时修改程序中相应的地址。

七、实验结果程序全速运行后,逻辑电平开关的状态改变应能在LED上显示出来。

例如:K2置于L位置,则对应的LED2应该点亮。

八、程序框图(实验程序名: T244273.ASM)九、程序源代码清单assume cs:codecode segment publicorg 100hstart: mov dx,04a0h ;74LS244地址in al,dx ;读输入开关量mov dx,04b0h ;74LS273地址out dx,al ;输出至LEDjmp startcode endsend start实验二 存储器读写实验一、实验目的1.掌握PC机外存扩展的方法。

2.熟悉6264芯片的接口方法。

3.掌握8086十六位数据存储的方法 。

二、实验设备MUT—Ⅲ型实验箱、8086CPU模块。

三、实验内容向02000~020FFH单元的偶地址送入AAH,奇地址送入55H。

四、实验原理介绍本实验用到存储器电路五、实验步骤1、实验接线本实验无需接线。

8086实验手册

8086实验手册

微机实验报告班级学号姓名本次成绩日期 20 年月日星期时间实验地点实验一汇编语言入门实验目的:熟悉并掌握在TPC2003集成环境下宏汇编程序的设计,包括编辑源程序、汇编、连接和调试的全过程;在现有条件下,了解和熟悉常用系统功能调用的使用方法;掌握TDEBUG调试界面的使用方法,如单步、宏单步,并学会通过观察寄存器的内容,排除程序中的逻辑错误。

实验环境:在基于Window XP的TPC2003集成环境下,设计和运行程序,该程序可以在x86的DOS或模拟DOS上运行。

实验内容1:1 输入以下源程序,并进行汇编、连接和运行,观察运行情况;2 在TDEBUG环境进行单步调试,记录观察数据段寄存器DS的设置过程。

3 添加程序功能,使能提示“Press any key to exit…”(DOS功能调用INT21 h,功能09h),然后就处于空闲的循环中,直到敲击任一按键就退出(DOS功能调用INT 21h,功能0Bh)。

经调试成功后,添加的语句抄到下面程序的空行中。

DATA SEGMENTPARS DB 100DB ?DB 100 DUP(?)MESG DB 10,13,'You are welcome to 8088/8086 ',10,13DB 10,13,'We hope you enjoy ASM program ',10,13DB 10,13,'GOOD LUCK TO YOU',10,13,'$'DATA ENDSCODE SEGMENTASSUME CS : CODE, DS : DATA,SS : STACKSTART P ROC FARMOV AX, DATAMOV DS, AXDISP: M OV DX, OFFSET MESGMOV AH, 9INT 21HMOV AH, 4CHINT 21HSTART E NDPCODE ENDSEND START实验现象记录(不能为空)实验内容2:1.在调试(Tdebug) 环境下单步运行。

8086实验

8086实验

8086实验1 设备使用及简单示例程序验证一.实验目的1 熟悉软件编程环境和硬件设备资源2 熟悉工程创建的步骤,其中各个文件作用3 掌握软件菜单的使用,掌握程序的调试基本步骤。

二.实验内容以课本例4-1为源文件创建工程进行工程的调试,查看程序运行过程和结果三.实验仪器微机、WAVE6000编程环境,实验箱注意:文件不要用中文名称,保存时不要用中文路径(目录),不要放在“桌面”上,源文件和工程要放在同一个文件夹下,文件名称和路径名称不要太长。

调试过程:2 查看存储器菜单使用:窗口---数据窗口---MEMORY,观察或者修改MEMORY内容。

3 查看CPU寄存器:窗口---CPU窗口,CPU寄存器4 单步执行:执行---单步执行(F8),每执行一步,查看每条语句涉及到的寄存器和存储器内容的变化结果,是否是指令所要得到的结果,如不是,检查错误原因,修改。

ASSUME CS:CSEG , DS:DSEG , ES:ESEGSUM DW 2 DUP(?) DUP (duplicate) 含义如下:定义变量(数组)SUM,类型为字(DW),大小为2,内容不定(?)编译器设置:编译器将用户定义的数据段分配在0400H(0040H×16)开始的存储器中。

数据段段基址寄存器DS(0040H)。

查看数据的方法:窗口---数据窗口--- MEMORY ---0400的位置就是你定义的数据段的数据:物理地址=段基址(DS)×16+段内偏移参考程序及流程图:见课本例4-18086实验2 简单程序设计--存储块移动一.实验目的1 熟悉86汇编语言程序结构2 熟悉循环结构程序的编写,进一步熟悉指令系统寻址方式3 熟悉编程环境和程序的调试二.实验内容将指定源地址和长度(100字节)的存储块移动到目的地址。

三.实验仪器:微机、WAVE6000软件,实验箱注意:1 源数据块和目的数据块自己在数据段中定义。

2 要查看移动后结果,定义时对源和目的块赋不同的值S db 25 dup(11h) 含义? dup (duplicate)定义数组S,大小为25,类型为字节(DB),全部赋值为11h3 同实验一,数据段分配在0400H开始的存储器中流程图如右:两种移动的方式:1利用循环结构编程移动方式2利用重复指令(movsb)编程方式参考程序利用重复指令(movsb)编程方式移动 256 字节data segmentSource db 256 dup(055h)Target db 256 dup(0aah)data endscode segmentassume cs:code, ds:data, es:datastart:mov ax, datamov ds, axmov es, axmov si, offset Sourcemov di, offset Targetmov cx, 256rep movsbjmp $code endsend start8086实验3 数据排序一.实验目的1 了解数据排序的常用算法,掌握冒泡算法。

8086微机原理实验报告大连工业大学

8086微机原理实验报告大连工业大学

8086微机原理实验报告大连工业大学不知不觉,微机原理与接口技术实验课程已经结束了。

回忆起来收获颇丰,主如果加深了对计算机的一些硬件情况和运行原理的理解和汇编语言的编写汇编语言,对于学习机电工程的自动控制和计算机都是很重要的,因为它是和机械语言最接近的了,若是用它来编程序的话,会比用其它高级语言要快得多。

本学期咱们在老师的率领下,进行了微机原理实验六到十这五组实验。

它们别离是:实验六825PA口控制PB口。

实验目的
掌握单片机系统中扩展外围芯片的方式,了解8255芯片的结构及编程方式。

实验内容用8255PA口作开关量输入口,PB口作输出口。

实验步骤
1、用8芯线将8255PA口接至开关Kl~K8,PB口接至发光二极管L1~L8;
2、运行程序,拨动开关K1~K8,观察L1~L8发光二极管是不是对应点亮。

实验目的进一步了解8255芯片的结构及编程方式,学习模拟交通控制的实现方式实验内容用8255做输出口,控制六个发光二极管燃灭,模拟交通灯管理。

8086的微处理器结构(现场)的认识实验

8086的微处理器结构(现场)的认识实验

微机原理及接口技术实验报告班级:10自动化本1班姓名:吴正翔学号:1015026109成绩:实验1:8086的微处理器结构(现场)的认识实验一、实验目的1.通过debug工具了解8086的寄存器2.了解debug工具二、预习要点1. 8086微处理器的内部特征。

2. 8086的寄存器类型、名称和作用。

3.debug工具的作用和特点。

三、实验项目在DOS下利用debug调试工具的R命令查看8086微处理器的现场(数据结构)四、实验设备环境PC机1台DOS操作系统debug工具(注:对于win764位机,打不开debug的同学,可下载DOSBOX 软件来模拟环境后,就可以的打开debug。

)五、实验方法在DOS下利用debug调试工具的R命令查看8086微处理器的现场(数据结构)。

六、实验要求1.写出R命令的功能。

2.写出8086的当前现场的所有数据部件(寄存器)的名称及作用。

实验1报告1.windows下进入debug的方法。

2.执行R命令3.R命令的功能4.8086的当前现场的所有数据部件(寄存器)的名称及作用。

5.实验感受。

实验2:8086传送类指令的学习实验一、实验目的1了解8086指令的特点2.验证常用传送处理指令类型的功能3.通用传送指令和专用传送指令的对比4.处理类指令的作用二、预习要点1.8086的寻址方式2.8086的传送类指令三、实验项目在DOS下利用debug调试工具的A、R和T命令,验证所有传送类指令的类型、范围、寻址方式及执行过程。

四、实验设备环境PC机一台DOS操作系统debug调试工具五、实验方法用A命令输入以下指令,用T命令逐个执行指令,查看指令结果1.MOV AL ,01H2.MOV SI,DI3.MOV AL,[0000H]4.MOV AX,[BX]5.MOV AL,[BP+0001H]6.MOV AL,[BX][SI]7.MOV AL,[BP+SI-1] 8.XCHG AX,[BX] 9.PUSH AX10.POP AX 11.LEA BX,[SI] 12.LDS BX,[SI]13.ADD AL,01H 14.ADC AH,BH 15INC BYTEPTR [BX]六、实验要求写出指令的基本功能和背景功能,并举例验证说明。

8086软件实验

8086软件实验

存储器块清零1.指定存储器中某块的起始地址和长度,要求能将其内容清零1.掌握存储器读写方法2.了解存储器的块操作方法3.通过本实验,学生可以了解单片机读写存储器的读写方法,同时也可以了解微机编程调试方法•data segment•Block db 256 dup(55h) •data ends•code segment•assume cs:code, ds:data •start proc near•mov ax, data•mov ds, ax•mov bx, offset Block ; 起始地址•mov cx, 256 ; 清256 字节•Again:•mov [bx], byte ptr 0 ;当前地址清零•inc bx ;地址加一•Loop Again ; 记数减一•jmp $•code ends•end start内存块移动1.将指定源地址和长度的存储块移到指定目标位置•1.了解内存的移动方法•2.加深对存储器读写的认识data segmentSource db 256 dup(055h)Target db 256 dup(0aah)data endscode segmentassume cs:code, ds:data, es:datastart proc nearmov ax, datamov ds, axmov es, axmov si, offset Sourcemov di, offset Targetmov cx, 256rep movsbjmp $code endsend start•ABC:•mov ax,[si] •mov [di],ax •inc si •inc di •loop ABC。

8086仿真实验

8086仿真实验

1 微机接口实验篇1.1 仿真实验平台简介硬件仿真实验平台采用了英国Labcenter 公司开发的Proteus 电路分析与实物仿真及印制电路板设计软件..该软件包括两个软件模块:ISIS 和ARES;ISIS 主要用于原理图设计及电路原理图的交互仿真;ARES 主要用于印制电路板的设计..本章实验所使用的Proteus 软件的版本为7.10注意:7.5及其以后版本的Proteus 支持8086 CPU 仿真;只使用ISIS..ISIS 提供的Proteus VSMVirtual System Modeling 实现了混合式的SPICE 电路仿真;它可以将虚拟仪器、高级图表应用、CPU 仿真和第三方软件开发与调试环境有机结合起来;在搭建硬件模型之前即可在计算机上完成原理图设计、电路分析及程序代码实时仿真、测试及验证..1.1.1 仿真操作界面图 1-1Proteus ISIS 的工作界面安装Proteus 软件后;会在桌面建立两个图标;分别是ISIS 和ARES..双击桌面上的ISIS 图标或者单击“开始”→“程序”→“Proteus 7 Professional ”→“ISIS 7 Professional ”;都可以启动Proteus ISIS..启动后的工作界面如图 1-1所示;主要包括:菜单栏、标准工具栏、模式选择工具栏、旋转镜像工具栏、预览窗口、元器件选择按钮、元器件选择窗口、仿真菜单栏标准工具栏编辑模式工具栏旋转镜像工具栏 元器件选择窗口预览窗口仿真控制按钮 原理图编辑窗口 当前坐标元器件选择按钮控制按钮、图形编辑窗口等..其中:●原理图编辑窗口:用于编辑电路原理图放置元器件和进行元器件之间的连线;●预览窗口:用于显示显示原理图缩略图或预览选中的元器件;●编辑模式工具栏:用于选择原理图编辑窗口的编辑模式;●旋转镜像工具栏:用于对原理图编辑窗口中选中的对象进行旋转和镜像等操作;●元器件选择按钮:用于在元器件库中选择所需元器件;并将选择的元器件放入元器件选择窗口中;●元器件选择窗口:用于显示并选择从元器件库中挑选出来的元器件;●仿真控制按钮:用于控制实时交互式仿真的启动、前进、暂停和停止..表1-1列出了编辑模式工具栏中各按钮的功能注意:要想知道工具栏中某个按钮的功能;只要将鼠标指针指向该按钮并停留约1秒钟;就会在鼠标指针旁边弹出一个标签;显示鼠标所指向按钮的功能..;这些按钮可以划分到三个子工具栏中:●主模式工具栏:用于原理图的全局编辑..●部件模式工具栏:用于原理图中某个对象的编辑..●二维图形模式工具栏:用于编辑原理图中的图形..表1-1编辑模式工具栏中各按钮的功能子工具栏按钮功能及说明主模式选择模式:即时编辑任意选中的元器件..元件模式:选择元器件结点模式:在原理图中放置连接点..连线标号模式:在原理图中放置或编辑连线标签..文本脚本模式:在原理图中输入新的文本或编辑已有文本.. 总线绘制模式:在原理图中绘制总线..子电路模式:在原理图中放置子电路或放置子电路元器件..部件模式终端模式:在元器件选择窗口中列出7类终端包括:默认、输入、输出、双向、电源、接地、总线以供绘制原理图时选择..元件引脚模式:在元器件选择窗口中列出6种常用元器件引脚包括:默认、反向、正时钟、负时钟、总线以供绘制原理图时选择..图表模式:在元器件选择窗口中列出13种仿真分析图表包括:模拟、数字、混合、频率、传递、失真、傅里叶等;以供选择..录音机模式:对原理图进行分步仿真时;用于记录前一步仿真的输出;并作为下一步仿真的输入..激励源模式:在元器件选择窗口中列出14种模拟或数字激励源激励源类型包括:直流、正弦、时钟脉冲、指数等以供选择..电压探针模式:在原理图中添加电压探针;用来记录该探针处的电压值..可记录模拟或数字电压的逻辑值和时长..电流探针模式:在原理图中添加电流探针;用来记录该探针处的电流值..只能记录模拟电路的电流值..虚拟仪器模式:在元器件选择窗口中列出12种常用的虚拟仪器包括:示波器、逻辑分析仪、定时计数器、电压表、电流表等二维图形模式2D连线模式:在元器件选择窗口中列出各种连线以供画线时选择.. 2D图形框模式:用于在原理图上画方框..2D圆形模式:用于在原理图上画园..2D弧线模式:用于在原理图上画园弧..2D闭合路径模式:用于在原理图上画任意闭合图形..2D文本模式:用于在原理图上标注各种文字..2D符号模式:用于选择各种元器件的外形符号..2D标记模式:在元器件选择窗口中列出各种标记;用于创建或编辑元器件、符号和终端引脚时建立文本或图形标记..除了用编辑模式工具栏来选择编辑模式外;还可以在选择模式下原理图编辑窗口中的鼠标指针为箭头形状时单击右键;选择“放置”;在出现的子菜单中选择编辑模式..如图1-2所示..图1-2使用右键菜单来选择编辑模式除以上各种工具外;为方便原理图的编辑操作;Proteus ISIS提供了两种系统可视化工具:对象选择框是围绕对象的虚线框;当鼠标掠过元器件、符号、图形等对象时;将出现环绕对象的红色虚线框;如图1-3所示..当出现对象选择框时;单击鼠标左键即可对此元件进行操作..图1-3环绕对象的对象选择框智能鼠标指针是另一种可视化工具..编辑原理图时;鼠标对当前操作具有智能识别功能;鼠标会根据功能改变显示的外观样式..常见的鼠标指针外观样式如表1-2所示..表1-2鼠标指针外观样式外观名称功能说明默认指针用于选择操作模式..放置指针单击鼠标左键;然后将元器件轮廓拖动到合适的位置;再次单击鼠标左键;即可将在元器件选择窗口中选中的对象放置在当前位置上..“热”画线指针当指针移动到元器件引脚端点上时;单击鼠标左键;开始在元器件引脚之间画线..画至终点时;双击鼠标左键可结束画线..“热”画总线指针仅当绘制总线时出现..当指针移动到已画好的总线上时;单击鼠标左键;开始延伸已画的总线..画至终点时;双击鼠标左键可结束画延伸总线..当对象上出现此光标时;单击鼠标左键;对象即被选中..对象拖动指针当对象上出现此光标时;按住鼠标左键并拖动鼠标;即可将对象移动到期望的位置..添加属性指针单击鼠标左键即可为对象添加属性选择菜单“工具栏”->“属性设置工具”后;光标移动到对象上时将出现此光标样式..1.1.2绘制电路原理图1鼠标使用规则在ISIS的原理图编辑窗口中;鼠标使用的一般规则如表1-3所示:表1-3鼠标使用般规则鼠标操作方式左键右键单击空白处放置元器件弹出元器件放置菜单单击未选中的对象选择对象弹出对象操作菜单单击已选中的对象编辑对象属性或连线风格同上双击对象同上删除对象拖曳已选中的对象移动对象位置框选一个或多个对象此外;转动滚轮可以放大或缩小编辑窗口;单击中键可以拖动编辑窗口..2选取元器件Proteus ISIS提供了一个包含有8000多个元器件的元件库;包括:标准符号、晶体管、TTL和CMOS逻辑电路、微处理器和存储器件、各种开关和显示器件等..注意:并非元件库中的所有元器件都支持VSM仿真;在进行交互式仿真时;应选择支持VSM仿真的元器件..一般来说;通用逻辑电路元件的选取规则是:如果只是进行交互式仿真;而不进行电路板布线;应尽量在仿真器件Modeling Primitives中选择元件;如果仿真器件中没有所需的元件;可选择TTL74系列或CMOS 4000系列逻辑电路..Proteus ISIS从元件库中查找并选取元件的步骤如下:首先点击编辑模式工具栏上的的元件模式按钮或点击主模式子工具栏上的其他按钮也可..单击元器件选择图形按钮或者右键单击原理图编辑窗口的空白部位;在弹出的快捷菜单中选择“放置”->“元件”->“From Libraries”;打开元件选取窗口Pick Devices;如图1-4所示..图1-4元件选取窗口如果已知元件类别;则直接点击窗口左边的元件类别、子类别、制造商..也可在左上角的关键字区域中输入元件类别;例如要查找TTL 74系列集成电路;则输入“TTL 74”..如果已知元件名;则在左上角的关键字区域中输入元件名;例如要查找8086微处理器;则输入“8086”..查找结果会在中间的结果窗口中列出..在查找结果列表中双击所需的元件;该元件就会被选取并放入ISIS工作界面的元器件选择窗口中备用..一般来说;在画原理图前;应按照以上方法将所需的元器件全部选取出来..注意:Proteus ISIS中的与、或、非等逻辑门器件的图形符号采用了ANSI/IEEE 91-1984标准;而中国国家标准则采用了与IEC 60617-12标准相同的图形符号;二者的对应见表1-4..表1-4 ISIS中逻辑电路符号与国家标准逻辑电路符号对照表逻辑门与门与非门或门或非门非门名称ISIS中图形符号国家标&&≥1≥11准图形符号3 绘制电路原理图下面以图1-5所示的最小8086系统为例;简要介绍在Proteus ISIS中创建仿真电路设计原理图的基本步骤..启动Proteus ISIS后;系统就会自动建立一个空白的原理图设计文件原理图设计文件的扩展名为.DSN;选择菜单栏上的“文件”→“保存设计”或直接点击标准工具栏上的“保存设计”图形按钮;在弹出的窗口中选择文件夹;然后输入文件名保存..注意:每次实验时请及时备份原理图设计文件;以免丢失..图1-5所示的电路用到的元器件见表1-4..首先点击编辑模式工具栏上的“元件模式”图形按钮;使元器件选择窗口中显示出前一步选取出来的元件..在元器件选择窗口中左键单击8086;然后在编辑窗口中单击左键;这时编辑窗口中就会出现8086的虚影;将其拖曳到原理图编辑窗口合适的位置;再单击左键放置..依照上述方法;按照图1-5依次在编辑窗口中放置非门、或门、触发器、7段数码管、电阻等元件..注意:元件放置的方向和位置在绘图过程中还可以调整;开始时可以先粗略地放置到大致差不多的位置上即可..图1-5 8086最小系统电路原理图表1-5图1-5原理图中的元件清单图中标号元件名称元件功能U1 8086 微处理器U2、U8 NOT 非门U3-U6 OR_2 2输入或门U7 7474 D触发器R1 RES 电阻在属性窗口中将阻值改为47欧姆D1 LED-BIBY LED灯当要改变元器件的放置方向或者要对元器件进行镜像翻转时;可以采用以下两种方法;一种方法是在编辑窗口中放置元器件前先进行旋转或镜像;即在元器件选择窗口中左键单击所需的元件后;接着点击旋转镜像工具栏中相应的旋转或镜像按钮可在预览窗口中观察效果;然后再在编辑窗口中单击左键放置元件;第二种方法是在编辑窗口中放置元器件后再进行旋转或镜像;即放置元器件时先不考虑元件方向;放置后;右键点击放置的元件;在弹出的快捷菜单中选择旋转或镜像选项也可直接用数字小键盘上的+、-键进行旋转..移动元件时;需要先点击“选择模式”图形按钮;再左键单击元件;选中的元件会变为红色;也可按住鼠标左键拖曳;使元件包围在拖曳出的方框中进行框选此方法可选择多个元件..元件选中后;鼠标光标变为具有十字方向箭头的手形光标;按住鼠标左键即可移动元件..移到合适位置处后;在编辑窗口的空白处单击左键;撤销元件的选中状态..在编辑窗口中还可以编辑元件的属性..右键单击选中的元件;在弹出的快捷菜单中选择“编辑属性”;弹出“编辑元件属性”对话框;电阻R1的“编辑元件属性”对话框如图1-6所示..注意:不同元件其对话框中的属性名称和数目有所不同;但“元件标注”属性在所有元件的编辑属性对话框中都会出现有的属性对话框中显示为“标注”或“标号”..对话框中的“元件标注”是元件在原理图中惟一的参考名称;不允许重名..若要在标注的名称上面显示上横线时;只要在输入的标注名称前后各加上美元符号$即可..例如;输入的标注为$R1$时;在原理图中将显示为..“ResistanceOhms”是电阻R1的阻值;可根据要求将其修改为所需的值..图中“47R”表示R1的电阻值为47欧姆..如果阻值为4.7千欧姆;则可填写为“4.7k”;以此类推..图1-6电阻元件的编辑元件属性对话框连线时;需要移动鼠标到要连线的元件引脚上;光标会变成绿色铅笔样式;单击鼠标左键;移动鼠标定位到目标元件引脚的端点或目标连线上移动过程中光标会变成白色铅笔样式;再单击鼠标左键;即可完成两连接点之间的连线..在这个过程中;连线将随着鼠标的移动以直角方式延伸;直至到达目标位置..如果在连线过程中想自己决定走线路径;只需在希望放置拐点的地方单击即可..放置拐点的地方会显示一个临时性的“X”标记;如图1-7所示;连线完成后;“X”标记会自动清除..图1-7在连线过程中放置拐点有时还需要在连线上加标注;只要在连线上单击右键;打开快捷菜单;选择“放置连线标签”;在打开的编辑连线标签对话窗口中的“标号”栏中输入标签名即可;也可用下拉菜单选择已有的标签名称..注意:凡是名称相同的对象在电路图中认为是相连的..在系统自动走线过程中;按住Ctrl键;系统将切换到完全手动模式;可以利用此方法绘制任意角度的斜线和折线..绘制原理图时往往还需要放置并连接某些终端;如输入/输出、电源/地线、总线等..首先需要用鼠标左键单击“终端模式”图形按钮;元器件选择窗口中会显示出可供选择的终端;图1-5中用到4类终端:电源POWER、地线GROUND、默认终端DEFAULT、总线BUS..●放置并连接电源和地线从元器件选择窗口中选择“POWER”;将其放置于8086微处理器的左上方..右键单击电源终端;在弹出的快捷菜单中选择“编辑属性”;弹出属性编辑对话框..在属性对话框中的标号栏输入+5V或VCC;点击确定关闭对话框..将8086的REDAY和MN/MX引脚连接到电源终端..用同样的方法放置地线终端;并将RESET引脚连接到地线终端..●放置并连接默认终端一端有圆圈的短线从元器件选择窗口中选择“DEFAULT”;将其放置于8086的NMI、RD、WR、M/IO 引脚的旁边注意;要留有一定的间距..右键单击NMI引脚旁边的默认终端;在弹出的快捷菜单中选择“编辑属性”;弹出属性编辑对话框..在属性对话框中的标号栏输入NMI表示这个终端名字为NMI;是NMI信号的连接端子;点击确定关闭对话框..将8086的NMI引脚连接到此NMI终端..用同样的方法标注并连接RD、WR、M/IO等终端注意:标注时应输入$RD$、$WR$和M/$IO$;以便在符号上显示上横线..●放置并连接总线从元器件选择窗口中选择“BUS”总线终端;将其放置于8086的AD0..15引脚的右侧合适的地方并调整总线终端的方向如果需要..右键单击总线终端;在弹出的快捷菜单中选择“编辑属性”;弹出属性编辑对话框..在属性对话框中的标号栏输入AD0..15;点击确定关闭对话框..注意:AD0..15表示一组共16根连线;名称分别为AD0、AD1、…、AD15;AD0..15是这组连线名称的缩写..Proteus ISIS支持用一条粗线条总线;BUS代表多条并行的连接线..左键单击“总线绘制模式”按钮..移动鼠标到8086的AD0..15引脚端点;光标会从白铅笔变成蓝铅笔;按住鼠标左键并拖动到总线端子上;再单击左键..用同样的方法连接并标注总线A16..19..1.1.3仿真运行Proteus ISIS可以在没有实际物理器件的环境下进行电路的软硬件仿真..为此;其模型库中提供了大量的硬件仿真模型:●常见的CPU;如8086、Z80、68000、ARM7、PIC、Atmel AVR和805l/8052等;●数字集成电路;如TTL 74系列、CMOS 4000系列、82xx系列等;●D/A和A/D转换电路;●虚拟仪器;如示波器、逻辑分析仪、定时计数器、电压表、电流表等;●各种显示器件、键盘、按钮、开关、电机、传感器等通用外部设备..Proteus VSM 8086是Intel 8086处理器的指令和总线周期仿真模型..它能通过总线驱动器和多路输出选择器连接RAM、ROM及各种外部接口电路;能够仿真最小模式中所有的总线信号和器件的操作时序尚不支持最大模式..Proteus VSM 8086模型支持直接加载BIN、COM和EXE格式的文件到内部RAM中;而不需要DOS环境;并且允许对Microsoft Codeview和Borland格式中包含了调试信息的程序进行源或反汇编级别的调试;所有调试格式都允许全局变量的观察;但只有Borland格式支持局部变量的观察..下面简要介绍一下本章实验中8086模型的仿真步骤..1编辑电路原理图按前面介绍的原理图编辑方法在原理图编辑窗口中画出仿真实验电路原理图..2设置8086模型属性在编辑窗口中右键单击8086;在弹出的快捷菜单中选择“编辑属性”;弹出“编辑元件属性”对话框;如图1-8所示..然后按表3-4对8086模型的属性进行修改..设置好后;单击确定按钮关闭对话框..注意:表1-6中;前3项在编辑属性对话框中是一一对应的;而后5项则需要通过选择高级属性advanced properties下拉列表来逐个进行编辑..表1-6 8086模型属性External Clock No No 指定是否使用外部时钟模式Clock Frequency 1000KHz 1500KHz 指定8086的时钟频率..使用外部时钟时此属性被忽略Internal Memory Start Address 0x00000 0x00000 内部仿真存储区的起始地址Internal Memory Size 0x00000 0x10000 内部仿真存储区的大小Program Loading Segment 0x0000 0x0200 决定仿真程序加载到内部存储器中的位置BIN Entry Point 0x00000 0x02000 仿真程序从何处开始运行=载入段x16Stop on Int3 No Yes 运行到仿真程序中的INT 3指令时是否停止图1-8 编辑8086模型的属性3设置编译环境和环境变量Proteus ISIS支持的编译器包括Microsoft C/C++、Borland C++、MASM32、TASM等..由于本章实验的所有汇编语言源程序都是用MASM32编译器汇编/连接生成EXE文件的;因此可以按照下述方法设置MASM32的编译环境:1安装MASM32编译器到C:\MASM32目录;2建立编译批处理文件新建一个文本文件;文件名为MASM32.BA T..输入以下内容后;将文件保存到X:\Labcenter Electronics\Proteus 7 Professional\SAMPLES目录中X为Proteus安装的盘符..@echo offset path=%path%; C:\MASM32\BINml /c /Zd /Zi %1setstr=%1set str=%str:~0;-4%link16 /CODEVIEW %str%.obj;%str%.exe;nul.map;;nul.def3设置Windows环境变量为了在编译过程中能够找到编译器ml.exe和连接器link16.exe;需要在Windows环境变量中添加编译器和连接器的安装目录..右键单击“我的电脑”;选择“属性”;在弹出的对话框中选择“高级”选项卡;单击“环境变量”按钮;弹出“环境变量”对话框..在上面的“用户变量”区中单击“新建”;弹出“编辑用户变量”对话框;在变量名栏中输入“Path”;在变量值栏中输入“C:\MASM32\BIN;”;点击“确定”关闭对话框..4在Proteus中设置编译器选择Proteus的菜单栏中的“源代码”→“设置代码生成工具”;点击“新建”;选择第2步中保存的MASM32.BAT文件;然后在“源程序扩展名”栏中输入“ASM”;在“目标代码扩展名”栏中输入“EXE”;在“命令行”栏中输入“%1”;如图1-9所示..点击“确定”关闭对话框..图1-9设置代码编译器生成工具4添加源程序并编译1输入源程序用任意的文本编辑器如Windows的记事本输入实验源程序并保存到X:\Labcenter Electronics\Proteus 7 Professional\SAMPLES目录下X为Proteus安装的盘符;保存时源程序的文件名可以任意;但最好起一个有意义的名字;并且不要与已有的文件重名;扩展名必须为ASM..本章实验中仿真实验的MASM32汇编语言源程序框架如下:<常数定义和宏定义放在此处>.model small.8086.stack.code.startup<实验源程序指令放在此处>.data //若程序不需要定义数据变量;data段可以省略;位置也可放在code段前面..<源程序所需的数据变量放在此处>end下面的程序是用于图3-8的程序;输入此程序并保存为demo.asm...model small.stack.data.code.startupmov dx; 200hlp: out dx; alcall delayin al; dxcall delayjmp lpdelay:mov bx;50a: mov cx;2000loop $dec bxjnz aretend编写源程序时要注意:仿真运行的8086是一个裸机;没有操作系统..因此程序中不可以使用DOS或BIOS的功能调用..主程序应为永久循环结构用jmp <程序开始处的标号>指令实现;以使得仿真能够持续运行..要结束仿真运行可单击仿真控制按钮中的停止按钮..2在Proteus中添加汇编语言源程序文件..图1-10设置代码生成工具;添加源程序文件“源代码”→“添加/删除源代码文件”;在“代码生成工具”的下拉列表中选择MASM32..再点击“新建”;找到并选择刚才编写的源程序文件;单击“确定”关闭对话框..如图1-10所示..3编译源程序“源代码”→“编译全部”..若有错误;重新修改源程序后重新编译;直到无错误为止..5仿真调试运行点击界面左下角的仿真控制按钮如表1-7所示;可观察电路的仿真运行情况有一定的动画效果..仿真过程中;红色方块代表低电平;蓝色方块代表高电平;灰色方块代表不确定电平..表1-7仿真控制按钮按钮含义功能说明开始开始仿真运行帧进进入下一个“动画”帧暂停暂停仿真;进入调试模式停止停止仿真运行暂停仿真时;系统会弹出源程序调试窗口;可以在系统菜单的“调试”下;打开8086寄存器窗口、存储器窗口和其他观测窗口..若处于未运行状态时;选择菜单的“调试”→“开始/重新启动调试”选项;等价于单击仿真控制按钮中的“暂停”按钮;使电路进入调试模式..进入调试模式后;可以在源程序调试窗口中按F9键设置断点;再按F12键运行程序..6保存设计选择为“文件”→“保存设计”或直接单击工具栏上的保存设计按钮;保存原理图;以供以后修改和仿真..。

8086微机汇编实验报告

8086微机汇编实验报告

电梯模拟实验一、实验目的通过综合实验使学员复习并熟练掌握各个模块电路功能、基本原理、线路连接和驱动方法。

自己编写嵌入式代码进行驱动,掌握相关的程序设计、电路测试的基本能力。

通过动手实践进一步加深对理论知识的理解,提高动手能力。

二、实验原理1.使用模块:本实验使用了8254、8255、七段数码管、4*4键盘、步进电机、喇叭6大模块来进行模拟电梯的综合实验。

2.连接电路:(1).使用8255的C口的PC0~PC7连接4*4键盘的行3~列0,接收4*4键盘输入;(2).将8255的A口PA0~PA7分别与七段数码管的段码驱动输入端a~dp相连,位码驱动输入端S0接+5V,S1~S3接GND,编程实现在其显示电梯所处的楼层;(3).使用8255的B口的PB0~PB3分别与步进电机的驱动输入端BA~BD相连,编程实现根据键盘输入实现顺时针(反时针)转动;(4).8254的CLK0接1MHz时钟,GATE0接8255的PB5,OUT0和8255的PB4分别接与门的两个输入端A和B,与门输出端Y连接喇叭,编程实现电梯到达所要求的楼层后发出设定的声音进行提示,具体实验电路如下图.3.接线:4.程序流程三、关键点及难点1.关键点(1).8255的控制方式8255是通用并行接口芯片,但在具体应用时,要根据实际情况选择工作方式,连接硬件电路(外设),待进行初始化编程之后才能成为某一专用的接口电路。

8255的初始化编程比较简单,只需要一个方式控制字就把3个端口设置完成。

方式控制字决定端口A、B和C的工作方式,如下图所示。

(2).I/O端口值的读写实验中,会对大量的I/O端口进行读写操作,我们通过I/O端口对相关的硬件进行数据的读写,在进行数据读写的过程中,要清楚相关的函数操作以及写入的bit位的值对硬件起到怎样的控制。

下面是C语言方式对I/O端口读写进行操作的相关函数:(3).七段数码管工作原理实验所用的七段数码管为共阴型,段码采用同相驱动,输入加高电平,选中的数码管亮,位码加反相驱动器,位码输入端高电平选中。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第七部分 基本实验(8086)实验一 简单I/O口扩展实验一、实验目的1、 熟悉74LS273,74LS244的应用接口方法。

2、掌握用锁存器、三态门扩展简单并行输入、输出口的方法。

二、实验设备MUT—Ⅲ型实验箱、8086CPU模块。

三、实验内容逻辑电平开关的状态输入74LS244,然后通过74LS273锁存输出,利用LED显示电路作为输出的状态显示。

四、实验原理介绍本实验用到两部分电路:开关量输入输出电路,简单I/O口扩展电路。

五、实验步骤1、实验接线:(表示相互连接)CS0 CS244; CS1CS273; 平推开关的输出K1~K8 IN0~IN7(对应连接); O0~O7LED1~LED8。

2、编辑程序,单步运行,调试程序3、调试通过后,全速运行程序,观看实验结果。

4、编写实验报告。

六、实验提示74LS244或74LS273的片选信号可以改变,例如连接CS2,此时应同时修改程序中相应的地址。

七、实验结果程序全速运行后,逻辑电平开关的状态改变应能在LED上显示出来。

例如:K2置于L位置,则对应的LED2应该点亮。

八、程序框图(实验程序名: T244273.ASM)九、程序源代码清单assume cs:codecode segment publicorg 100hstart: mov dx,04a0h ;74LS244地址in al,dx ;读输入开关量mov dx,04b0h ;74LS273地址out dx,al ;输出至LEDjmp startcode endsend start实验二 存储器读写实验一、实验目的1.掌握PC机外存扩展的方法。

2.熟悉6264芯片的接口方法。

3.掌握8086十六位数据存储的方法 。

二、实验设备MUT—Ⅲ型实验箱、8086CPU模块。

三、实验内容向02000~020FFH单元的偶地址送入AAH,奇地址送入55H。

四、实验原理介绍本实验用到存储器电路五、实验步骤1、实验接线本实验无需接线。

2、编写调试程序3、运行实验程序,可采取单步、设置断点方式,打开内存窗口可看到内存区的变化。

六、实验提示1、RAM区的地址为02000H,编程时可段地址设为01000H,则偏移地址为1000H。

2、如果按字节进行存储,则AL为55H或AAH;如果按字进行存储,则AX应为55AAH。

3、6264、62256等是计算机系统扩展中经常用到的随机存储器芯片(RAM),主要用作数据存储器扩展。

本实验所进行的内存置数在程序中经常用到。

计算机系统运行中会频繁地进行内存与外设或者内存与内存之间的数据传输,所以本实验虽然简单但对理解系统程序的运行很关键,望学习和实验时认真对待。

七、实验结果在断点1处内存区02000H~020FFH单元为00H;在断点2处偶地址为AAH,奇地址为55H八、程序框图(实验程序名:RAM.ASM)实验三 8255并行口实验一、实验目的掌握8255A的编程原理。

二、实验设备MUT—Ⅲ型实验箱、8086CPU模块。

三、实验内容8255A的A口作为输入口,与逻辑电平开关相连。

8255A的B口作为输出口,与发光二极管相连。

编写程序,使得逻辑电平开关的变化在发光二极管上显示出来。

四、实验原理介绍本实验用到两部分电路:开关量输入输出电路和8255可编程并口电路。

五、实验步骤1、实验接线CS0CS8255; PA0~PA7 平推开关的输出K1~K8; PB0~PB7发光二极管的输入LED1~LED8。

2、编程并全速或单步运行。

3、全速运行时拨动开关,观察发光二极管的变化。

当开关某位置于L时,对应的发光二极管点亮,置于H时熄灭。

六、实验提示8255A是比较常用的一种并行接口芯片,其特点在许多教科书中均有介绍。

8255A有三个8位的输入输出端口,通常将A端口作为输入用,B端口作为输出用,C端口作为辅助控制用,本实验也是如此。

实验中,8255A工作于基本输入输出方式(方式0)。

七、实验结果程序全速运行后,逻辑电平开关的状态改变应能在LED上显示出来。

例如:K2置于L位置,则对应的LED2应该点亮。

八、程序框图(实验程序名:t8255.asm)实验四 8253定时器/计数器接口实验一、实验目的掌握8253定时器的编程原理,用示波器观察不同模式下的输出波形。

二、实验设备MUT—Ⅲ型实验箱、8086CPU模块、示波器。

三、实验内容8253计数器0,1,2工作于方波方式,观察其输出波形。

四、实验原理介绍本实验用到两部分电路:脉冲产生电路、8253定时器/计数器电路五、实验步骤1、实验连线:CS0CS8253 OUT08253CLK2 OUT2LED1 示波器OUT1CLK38253CLK0,CLK38253CLK12、编程调试程序3、全速运行,观察实验结果六、实验提示8253是计算机系统中经常使用的可编程定时器/计数器,其内部有三个相互独立的计数器,分别称为T0,T1,T2。

8253有多种工作方式,其中方式3为方波方式。

当计数器设好初值后,计数器递减计数,在计数值的前一半输出高电平,后一半输出低电平。

实验中,T0、T1的时钟由CLK3提供,其频率为750KHz。

程序中,T0的初值设为927CH(37500十进制),则OUT0输出的方波周期为(37500*4/3*10-6=0.05s)。

T2采用OUT0的输出为时钟,则在T2中设置初值为n时,则OUT2输出方波周期为n*0.05s。

n的最大值为FFFFH,所以OUT2输出方波最大周期为3276.75s(=54.6分钟)。

可见,采用计数器叠加使用后,输出周期范围可以大幅度提高,这在实际控制中是非常有用的。

七、实验结果程序全速运行后,LED1闪烁(周期为0.25s),OUT1示波器观察为方波,频率为15KHz。

八、程序框图(实验程序名:t8253.asm)实验五 A/D实验一、实验目的熟悉A/D转换的基本原理,掌握ADC0809的使用方法。

二、实验设备MUT—Ⅲ型实验箱、8086CPU模块。

三、实验内容从ADIN0输入一路模拟信号,启动A/D转换,用简单输入口(74LS244)查询EOC信号,转换结束后查看转换结果。

同时用万用表测量输入的模拟电压,与转换后的数字量比较。

作图,横坐标是模拟电压,纵坐标是转换的数字量,检查A/D转换的线性度。

其它通道实验与通道0类似,相应修改地址即可。

四、实验原理介绍本实验用到两部分电路:简单I/O口扩展电路、A/D、D/A电路五、实验步骤1、实验连线AN0 ADIN0 CS0 CS0809 CS1 CS244 EOC IN02、 用实验箱左上角的“VERF.ADJ”电位器调节ADC0809 12脚上的参考电压至5V。

3、编写程序并全速运行。

4、检查显示数据是否与电位器输出的电压相符合。

六、实验提示实验电路中启动信号START与地址锁存信号相连,所以启动A/D转换的方法为:MOV DX ,ADDRESS ;ADDRESS是ADC0809的端口地址OUT AL, DX ;发片选及IOW信号,启动0通道七、实验结果在输入电压AN0分别为0V,1V,2V,3V,4V,5V时显示数据分别为00H,33H,66H,99H,0CCH,0FFH(数据低位略有偏差属正常现象)。

八、程序框图(实验程序名:t0809.ASM)实验六 D/A实验一、实验目的熟悉数模转换的基本原理,掌握D/A的使用方法。

二、实验设备MUT—Ⅲ型实验箱、8086CPU模块、示波器。

三、实验内容利用D/A转换器产生锯齿波和三角波。

四、实验原理图本实验用A/D、D/A电路五、实验步骤1、 实验接线CS0 CS0832 示波器DOUT DS跳线:1 22、用实验箱左上角的“VERF.ADJ”电位器调节0832的8脚上的参考电压至5V。

3、调试程序并全速运行,产生不同波形。

4、用示波器观察波形。

六、实验提示利用电位器“ZERO.ADJ”可以调零,“RANGE.ADJ”电位器调整满偏值。

DAC0832在本实验中,工作在双缓冲接口方式下。

当A1=0时可锁存输入数据;当A1=1时,可起动转换输出。

所以要进行D/A转换需分二步进行,方法如下:MOV DX,ADDRESS ;ADDRESS片选信号偶地址MOV AL,DATAOUT DX,AL ;锁存数据ADD DX ,2OUT DX,AL ;启动转换七、程序框图程序一 产生锯齿波 程序二 产生三角波(实验程序名:dac-1.asm) (实验程序名:dac-2.asm)实验七 8250串口实验一、实验目的1、熟悉串行通信的一般原理和8250的工原理。

2、了解RS--232串行接口标准及连接方法。

3、 掌握8250芯片的编程方法。

二、实验设备MUT—Ⅲ型实验箱、8086CPU模块。

三、实验内容在实验箱与PC机(上位机)之间实现串行通信,主机每下传一个字符,如通讯正确则下位机返回一个同样的字符,如果不正确,则无返回或不相同。

四、实验原理介绍实验原理图见8250串行接口电路。

由MAX232完成RS232电平和TTL电平的转换,由8250完成数据的收发。

8250内部有10个寄存器,分别对应着不同的IO口地址。

对不同的寄存器进行初始化或读出写入操作就可以完成与计算机的通信。

由于不能同时收发数据,所以8250又称为通用串行异步收发器,简写为:UART。

8250实验电路的所有信号均已连好。

五、实验步骤1、实验接线利用串口电缆连接实验箱的串口和计算机的串口(COM1或COM2)2、编写程序。

3、在实验箱上运行86编译系统,下载实验程序8250.asm,并全速运行。

4、实验箱退出86编译系统,启动实验六的上位机驱动程序T6UP.EXE,首先选择串行端口(COM1或COM2),端口与步骤1一致,键入串口号即可,然后从键盘上输入字符,看返回字符是否正确。

欲退出T6UP.EXE,按回车键。

六、实验提示实验中,通讯波特率选用9600bps。

上下位机均采用查询方式。

8250的端口地址为0480起始的偶地址单元。

实验中,上位机向下位机发送一个字符,下位机将接收到的字符返回。

事实上这就实现了串口通信的基本过程。

掌握了此实验中的编程方法再编制复杂的串行通信程序也就不难了。

串行通信和并行通信是计算机与外围设备进行信息交换的基本方法,二者有不同的特点。

简而言之,前者电路及连线简单,最少用三根线就可以实现串口通信,但通信速率慢,适用于长距离慢速通信;后者电路及连线复杂,成本较高,但通信速率快,适用于短距离高速通信。

七、程序框图8250.ASM实验八 8279显示器接口实验一、实验目的1、进一步掌握8279的工作原理。

2、学习LED显示器的使用方法。

3、熟悉8279的接口方法。

二、实验设备MUT—Ⅲ型实验箱、8086CPU模块。

相关文档
最新文档