微机原理实验五输入与输出程序设计

合集下载

微机原理及接口技术实验

微机原理及接口技术实验

微机原理及接口技术实验一、实验目的本实验旨在通过学习微机原理和接口技术,了解和掌握微机系统的基本原理和接口技术的应用,培养学生对微机系统的认识和实践操作能力。

二、实验内容1. 微型计算机系统设计与搭建2. 微机输入输出接口技术应用实验3. 微机总线技术应用实验4. 微机存储器技术应用实验5. 微型计算机中断和DMA技术应用实验三、实验原理1. 微型计算机系统设计与搭建微型计算机主要由中央处理器、存储器、输入输出设备和总线组成。

本实验通过选择适当的芯片、电路连接和控制程序设计,实现一个基本的微型计算机系统。

2. 微机输入输出接口技术应用实验输入输出是微型计算机的重要组成部分,通过实验学习各种输入输出接口的原理和使用方法,并进行实际应用。

3. 微机总线技术应用实验总线是微型计算机各个部件之间传送数据和控制信息的公共通信路径。

通过实验学习总线的分类、结构和时序要求,掌握总线的实际应用。

4. 微机存储器技术应用实验存储器是微型计算机中存储数据和程序的重要设备。

通过实验学习不同类型存储器的原理和应用,掌握存储器的选择和使用。

5. 微型计算机中断和DMA技术应用实验中断和直接存储器访问(DMA)是微型计算机连接外部设备的重要技术。

通过实验学习中断和DMA的工作原理,掌握中断和DMA的应用方法。

四、实验步骤1. 根据实验要求,设计并搭建微型计算机系统;2. 连接输入输出设备,并编写控制程序;3. 进行输入输出接口技术应用实验,如串行通信、并行通信等;4. 进行总线技术应用实验,如总线传输数据测试等;5. 进行存储器技术应用实验,如读写存储器数据等;6. 进行中断和DMA技术应用实验,如中断服务程序编写等;7. 完成相关实验报告并进行总结。

五、实验设备和材料1. 微型计算机实验箱、电源适配器;2. 8051单片机、存储器芯片、输入输出芯片,如74HC164等;3. LED数码管、LCD液晶显示器、键盘、计算器等输入输出设备;4. 可编程芯片编程器、逻辑分析仪等实验设备。

微机原理及程序设计

微机原理及程序设计

微机原理及程序设计微机原理及程序设计是一门结合了计算机硬件基础和软件编程技能的课程,它对于理解现代计算机系统的工作方式至关重要。

本课程旨在教授学生微机的基本组成原理、指令系统、存储结构以及程序设计的基本方法。

微机原理概述微机,即微型计算机,是一种体积小、价格低廉、功能相对单一的计算机系统。

它们广泛应用于个人计算、嵌入式系统、工业控制等领域。

1. 微机的基本组成:微机主要由中央处理器(CPU)、存储器、输入输出设备(I/O)等部分组成。

2. 中央处理器:CPU是微机的核心,负责执行程序指令。

它包括算术逻辑单元(ALU)、控制单元(CU)和寄存器组。

3. 存储器:存储器用于存储程序和数据。

主要分为随机存取存储器(RAM)和只读存储器(ROM)。

4. 输入输出设备:包括键盘、鼠标、显示器、打印机等,用于与用户进行交互。

指令系统与寻址方式1. 指令系统:是CPU可以执行的所有指令的集合。

指令系统的设计直接影响到微机的性能和功能。

2. 寻址方式:是CPU访问存储器中数据的方法。

常见的寻址方式包括直接寻址、间接寻址、基址寻址等。

存储结构1. 存储器的层次结构:通常包括高速缓存(Cache)、主存和辅助存储器。

2. 存储管理:涉及虚拟存储技术、内存分配和回收等。

程序设计基础1. 程序设计语言:包括汇编语言、高级语言等。

汇编语言与机器指令直接对应,而高级语言则更为抽象,易于编写和理解。

2. 程序结构:程序通常由数据定义、指令序列和控制结构组成。

3. 算法与数据结构:算法是解决问题的步骤,而数据结构是组织数据的方式。

程序设计方法1. 模块化设计:将程序分解为多个模块,每个模块完成特定的功能,易于管理和维护。

2. 面向对象编程:以对象和类为基础,强调数据和功能的封装、继承和多态性。

3. 程序调试:使用调试工具来查找和修复程序中的错误。

微机接口技术1. 总线接口:连接微机内部各部件的通信线路。

2. 外设接口:如串行接口、并行接口、USB接口等,用于连接外部设备。

微机原理简单程序设计实验流程图

微机原理简单程序设计实验流程图

微机原理简单程序设计实验流程图下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。

文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by theeditor. I hope that after you download them,they can help yousolve practical problems. The document can be customized andmodified after downloading,please adjust and use it according toactual needs, thank you!In addition, our shop provides you with various types ofpractical materials,such as educational essays, diaryappreciation,sentence excerpts,ancient poems,classic articles,topic composition,work summary,word parsing,copy excerpts,other materials and so on,want to know different data formats andwriting methods,please pay attention!1. 实验目的:了解微机原理和程序设计的基本概念。

掌握使用汇编语言或高级语言进行程序设计的方法。

实验五、可编程并行接口实验(8255方式0)

实验五、可编程并行接口实验(8255方式0)

实验五、可编程并行接口实验(8255方式0)一、实验目的1、掌握微机原理硬件实验系统的运行方法;2、掌握8255A 工作方式、与和微机接口方法、编程原理;3、掌握微机硬件系统的设计步骤。

二、实验原理1、8255A 芯片简介: 8255A 可编程外围接口芯片是INTEL 公司生产的通用并行接口芯片,它具有A 、B 、C 三个并行接口,用+5V 单电源供电,能在以下三种方式下工作:方式0:基本输入/ 输出方式方式l :选通输入/ 输出方式方式2:双向选通工作方式图5-1三、实验内容1、8255基本输入/出程序分析与调试;(1)编程指南使8255A端口A工作在方式0并作为输入口,读取K8~K1个开关量,PB口工作在方式0作为输出口,接发光二极管L8-L1。

(2)参考源码;SY5_1.ASMPORT_A EQU 0FF28H ;8255 PA口地址PORT_B EQU 0FF29H ;8255 PB口地址PORT_C EQU 0FF2AH ;8255 PC口地址PORT_CTL EQU 0FF2AH ;8255 控制字地址CODE SEGMENTASSUME CS:CODEORG 11B0H ;代码起始地址START: MOV AL,90H ;定义端口工作方式与输入、输出MOV DX,PORT_CTLOUT DX,ALIOLED1: MOV DX,PORT_A ;读PA口状态IN AL,DXMOV DX,PORT_B ;写PB口OUT DX,ALJMP IOLED1CODE ENDSEND START(3)操作步骤a、根据图5-1连线;b、在dice8088应用程序(见桌面快捷图标)下完成以上代码的编辑、编译与连接(执行菜单项:“调试”-“编译程序”);c、译连接通过的程序通过RS232串口装载置实验硬件系统中(执行菜单项:“调试”-“编译程序”)。

此操作必须在PC机与实验箱通信正常连接的前提下进行(在dice8088应用程序中状态栏中有联机信息);造成联机失败的主要原因有:串口线未连接(重新连接串口线);通信数据出错(关闭实验箱电源和dice8088应用程序,然后先打开实验箱电源,再执行dice8088应用程序);硬件系统处于非接收状态(只有在实验箱上的第一位数码管显示P. 时方可装载程序,可通过按实验箱上的复位按钮使其恢复到P. 状态);d、运行程序:方法一、通过dice8088应用程序控制实验箱中的程序运行(执行菜单项:“调试”-“连续运行”);方法二、通过实验箱的小键盘运行程序,先在P. 状态下输入代码起始地址(本程序的起始地址为:11B0),后按小键盘上的执行按钮(EX),此时数码管的最高位显示程序运行提示符“┌”。

微机原理第五章 程序设计-dsh

微机原理第五章 程序设计-dsh

INT
COSEG
21H
ENDS END START
第三节 分支程序
计算机可根据不同条件进行逻辑判断,从而选择不同 的程序流向。程序的流向是由 CS和 IP决定的,当程序 的转移仅在同一段内进行时,只需修改偏移地址 IP的 值;如果程序的转移是在不同的段之间进行,则段基 址 CS和偏移地址 IP均需要修改。 转移指令分为无条件转移指令和条件转移指令。 在进行分支程序设计时,首先要根据处理的问题用比 较、测试的方式,或者用算术运算、逻辑运算使标志 寄存器产生相应的标志位,根据转移条件选择转移指 令。
INC INC DEC JNZ
BX BX CX LOP ; ;控制部分
修改部分
MOV YY,AX MOV AH,4CH INT CODE ENDS 21H
END
START
一.循环的基本结构
1.先执行,后判断结构
流程图如右:
入口
初始化部分
循环体
修改部分
N
循环 结束? Y 出口
例2. 编程统计数据块中正数的个数,
Y
RS END (DX)
DATA
SEGMENT
D1
COUNT RS DATA CODE
DB,-1,-3,5,7,-9,·,-6 · ·
EQU DW ENDS SEGMENT ASSUME CS:CODE,DS:DATA $-D1 ?
START:
MOV
AX,DATA
MOV
MOV MOV MOV
DS,AX
JMP JUS2
BIGD: JG JUS1 ;x>0转移 ;x=0
MOV AL, 0
JMP
JUS1: JUS2:
JUS2

微机原理实验报告

微机原理实验报告

微机原理实验报告班级:自动化72组员梁慕佳 07054031张乐 07054033张林鹏 07054034实验一:8255 并行接口实验1 实验目的1. 学习并掌握8255 的工作方式及其应用;2. 掌握8255 典型应用电路的接法。

2 实验设备PC机一台,TD-PITE 实验装置一套。

3 实验内容1. 基本输入输出实验。

编写程序,使8255 的A口为输入,B口为输出,完成拨动开关到数据灯的数据传输。

要求只要开关拨动,数据灯的显示就发生相应改变。

2. 流水灯显示实验。

编写程序,使8255 的A口和B口均为输出,数据灯D7~D0由左向右,每次仅亮一个灯,循环显示,D15~D8与D7~D0 正相反,由右向左,每次仅点亮一个灯,循环显示。

4 实验原理并行接口是以数据的字节为单位与I/O 设备或被控制对象之间传递信息。

CPU和接口之间的数据传送总是并行的,即可以同时传递8 位、16 位或32 位等。

8255可编程外围接口芯片是Intel公司生产的通用并行I/O 接口芯片,它具有A、B、C 三个并行接口,用+5V单电源供电,能在以下三种方式下工作:方式0--基本输入/输出方式、方式1--选通输入/输出方式、方式2--双向选通工作方式。

8255的内部结构及引脚如图2-6-1 所示,8255工作方式控制字和C口按位置位/复位控制字格式如图2-6-2所示。

图2-6-1 8255内部结构及外部引脚图图2-6-2 8255控制字格式5 实验步骤1. 基本输入输出实验本实验使8255 端口A工作在方式0 并作为输入口,端口B工作在方式0 并作为输出口。

用一组开关信号接入端口A,端口B 输出线接至一组数据灯上,然后通过对8255 芯片编程来实现输入输出功能。

具体实验步骤如下述:(1)实验接线图如图2-6-3所示,按图连接实验线路图;(2)编写实验程序,经编译、连接无误后装入系统;(3)运行程序,改变拨动开关,同时观察LED 显示,验证程序功能。

微机原理与接口技术输入输出实验

微机原理与接口技术输入输出实验

实验一:输入输出实验实验环境PC机+Win 2010+emu8086 实验日期2016.6.3 一.实验内容1.熟悉emu8086仿真系统,清楚调试环境,能熟练的查看8086仿真系统的寄存器、内存、堆栈等相关内容。

2.设计并单步调试实现一位十进制数的加法运算。

例如:屏幕显示效果为3+2=5,其中,加数和被加数为键盘输入,其他为屏幕自动输出。

3.在实现了一位十进制数加法运算的基础上,尝试实现两位十进制加法运算、一位十进制数的四则运算以及十进制多位数运算等扩展要求。

二.理论分析或算法分析1、Emu8086的使用(1)打开桌面上的云端软件,选择微机原理分类,点击Emu8086的图标,,选择【新建】。

(2)选择COM模板,点击【确定】,软件出现源代码编辑器的界面在源代码编辑器的空白区域,编写如下一段小程序:代码编写结束,点击菜单【文件】【另存为……】,将源代码换名保存。

本例将源代码保存为.asm。

:(3)如果源程序无错误,则编译通过单击【单步运行】可以单步调试,程序将每执行一条指令便产生一次中断(建议使用)。

单击【后退一步】可以返回到上一条指令(这个功能也是一般调试器没有的)。

单击【运行】,程序将从第一句直接运行到最后一句。

2、设计并单步调试实现一位十进制数的加法运算。

(1)选择新建一个.COM类型的文件。

(2)在编辑界面中,键入代码。

(3)点击工具栏的【模拟】按钮,进入调试窗口,单步调试并观察寄存器的变化情况。

3、进一步完善上述程序,实现一位十进制数的加法运算。

4、在实现了一位十进制数加法运算的基础上,选择完成如下题目:两位十进制加法运算、一位十进制数的四则运算、十进制多位数运算等。

三.实现方法(含实现思路、程序流程图、实验电路图和源程序列表等)一位加法:org 100hmov ah, 1int 21hmov bl, al mov ah, 2 mov dl, '+' int 21hmov ah, 1int 21hand bl, 0fh and ax, 0fh add al, bl aaaor ax, 3030h mov bx, ax mov ah, 2 mov dl, '=' int 21h cmp bh, 30hje j1mov ah, 2 mov dl, bhint 21hj1:mov ah, 2 mov dl, blint 21hret 多位加法:org 100hmov ah, 1int 21hmov bh, al int 21hmov bl, al mov ah, 2mov dl, '+'int 21hmov ah, 1int 21hmov ch, al int 21hmov cl, aland bx, 0f0fh and cx, 0f0fh mov ax, cxadd ax, bxaaaor ax, 3030h mov bx, ax mov ah, 2mov dl, '='int 21h cmp bh, 30hje j1mov ah, 2mov dl, bhint 21hj1:mov ah, 2mov dl, blint 21hret一位减、乘、除:mov ah, 1int 21hand al, 0fhmov bl, al mov ah, 1int 21hmov dl, alint 21hand al, 0fhxor ah, ahcmp dl, '+'jne jp1add al, blaaajmp short jp4jp1:cmp dl, '-'jne jp2xchg al, blsub al, blaasjmp short jp4jp2:cmp dl, '*'jne jp3mul blaamjmp short jp4jp3:xchg al, bldiv blaam jp4:mov bx, axmov ah, 2mov dl, '='int 21hor bx, 3030h cmp bh, '1'jc j1mov dl, bhint 21hj1:mov dl, blint 21h四.实验结果分析(含执行结果验证、输出显示信息、图形、调试过程中所遇的问题及处理方法等)一位数加法:多位数加法:一位数减、乘、除法五.结论通过这次实验,我对EMU8086实验模拟环境有相应的了解,熟悉了基本的EMU8086的使用方法,同时也对mov这个指令有了深入的理解,并且知道了各个存储器里面的值得存储过程,为以后的的学习打下了坚实的基础。

微机原理实验

微机原理实验

试验一存储器读写实验一、存储器读写实验目的1、熟悉静态RAM的使用方法,掌握8088微机系统扩展RAM的方法。

2、掌握静态RAM读写数据编程方法。

二、实验内容对指定地址区间的RAM(2000H~27FDH)先进行写数据55AAH,然后将其内容读出再写到3000H~33FEH中。

三、实验步骤(运行实验程序)1、运行实验程序;2、稍后按RESET键退出,用存贮器读方法检查2000H~27FDH中的内容和3000~33FF中的内容应都是55AA。

四、实验程序CODE SEGMENTASSUME CS:CODESTART: MOV AX,0HMOV DS,AXMOV BX,2000HMOV AX,55AAHMOV CX,03FFHRAMW1: MOV DS:[BX],AXADD BX,0002HLOOP RAMW1MOV AX,2000HMOV SI,AXMOV AX,3000HMOV DI,AXMOV CX,03FFHCLDREP MOVSBRAMW2: JMP RAMW2CODE ENDSEND START实验二继电器控制实验一、实验目的:掌握用继电器控制的基本方法和编程。

二、实验内容1、利用8255A PB0输出高低电平,控制继电器的开合,以实现对外部装置的控制。

2、硬件线路原理如图5-23所示3、实验预备知识:现代自动化控制设备中都存在一个电子与电气电路的互相联结问题,一方面要使电子电路的控制信号能够控制电气电路的执行元件(电动机、电磁铁、电灯等);一方面又要为电子电路的电气提供良好的电隔离,以保护电子电路和人身的安全,电子继电器便能完成这一桥梁作用。

三、连线方法1、8255A的PB0连JIN插孔。

2、将CS-8255连到Y6。

四、实验步骤1、按图连好实验线路图。

2、运行实验程序,继电器应循环吸合,L-13和L-14交替亮灭。

五、硬件线路接线图六、试验程序CODE SEGMENTASSUME CS:CODEIOCONPT EQU 0063HIOCPT EQU 0061HSTART: MOV AL,80HMOV DX,IOCONPTOUT DX,ALNOPNOPNOPIOLED1: MOV DX,IOCPTIODE2: MOV AL,01HOUT DX,ALCALL DELAYMOV AL,00HOUT DX,ALCALL DELAYJMP IODE2DELAY: MOV CX,0FFFFHDELY: LOOP DELYRETCODE ENDSEND START实验三小直流电机调速实验一、实验目的1、掌握直流电机的驱动原理。

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

实验六输入与输出程序设计
一、实验目的
1•掌握常用DOS中断调用的功能以及在应用程序中的使用方法。

2•学习键盘输入和屏幕输出的基本方法。

3•宏指令、子程序在应用程序屮的使用。

4•汇编语言程序设计的调试与完善。

二、设计指标与实验要求
1.设计内容
本实验要求设计完成:①屏幕输出提示(如〃Want in put (Y/N)? ”),若键入N则结束程序返回操作系统;键入Y则转2步;键入的是其它字母则回①步。

②换行后输出提示(如"please in put a strings :”),且在该提示后键入一字符串(输入到输入缓冲区)
③换行后输出提不(如"your in putt ing is :”),在该提不后输出由②步输入的字符串。

④换行后输出提示“Want continue (Y/N)? ” ,若键入Y则转②步;键入N则结束程序返回操作系统;其它字母则回第④步。

2 •设计要求
①按屏幕提示要求输入,从屏幕上获得正确结果。

②把程序屮常用的屮断调用定义成宏指令(至少定义2个)。

③字符串回显部分设计成子程序,可以选择用21H中断的2号或9号功能来实现,应能显示由
主程序指定的任一字符串。

要注意这两种方法实现的设计过程是不同的。

采用2号功能的,子程序输入参数为“回显字符串地址”和“回显字符数”;采用
9号功能的,子程序输入参数为“回显字符串地址”。

④屏幕的提示信息显示格式尽量做到兼顾美观。

3 .实验步骤
①•选用合适的程序文本编辑软件编辑源程序,
并为文件取以.ASM为扩展名的文件存盘。

②•用宏汇编软件MASM对源程序文件进行汇编,若有错误,根据提示(行号,错误类型)回源程序文件中修改。

③•用LINK对由MASM匚编后产生的目标文件做连接,生成可执行文件;若有错误(同上)回步骤1修改源程序文件。

④•对存在问题的程序,用CV调试程序,检察运行结果,并调试程序。

⑤•反复验正程序的正确性。

⑥•完善、改进所设计的程序算法、功能、界面、或性能等指标。

四、思考题
1.输入串若以指定字符(非回车)做结束标志时的输入部分应如何改写。

2.若为应用程序添加启动时的密码检验功能,密码输入时采用什么屮断功能比较合适?
3.如何为应用程序添加字母的大小写转换功能?
OUTPUT MACRO
MOV AH, 9
INT 21H
EXDM
INPUTS MACRO
MOV AH, 10
INT 21H
ENDM
DATA SEGMENT
BUF1 DB Odh, Oah,,Wa nt in put(Y/N)?$,
BUF2 DB Odh,Oah, 5 please in put a stri ngs:$' BUFIN DB 20,?,20 DUP(?)
BUF3 DB Odh,Oah, ' your in putt ing is:$'
BUF4 DB Odh, Oah,,Wa nt contin ue(Y/N)?$,
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE, DS:DA TA START:MOV AX, DATA
MOV DS, AX
XI: MOV DX, OFFSET BUF1
OUTPUT
MOV AH, 1
INT 21H
CMP AL,' Y'
JZ X2
CMP AL,' N,
JZ OVER
JMP XI
X2: MOV DX, OFFSET BUF2
OUTPUT
MOV DX,OFFSET BUFIN
INPUTS
MOV DX,OFFSET BUF3
OUTPUT
MOV DX,OFFSET BUFIN+2
OUTPUT DX
X3: MOV DX, OFFSET BUF4
OUTPUT
MOV AH, 1
INT 21H
CMP AL,' Y'
JZ X2
CMP AL,' N'
JZ OVER
JMP X3
OVER:MOV AH, 4CH
INT 21H
INPUT PROC NEAR
MOV AH, 1
INT 21H
CMP AL,' Y'
JZ X2
CMP AL,' N'
JZ OVER
ret
INPUT ENDP
CODE ENDS
END START
31 d:\我的文档\桌面\实验4.exe。

相关文档
最新文档