微机原理简单输入输出实验报告
微机原理实验报告册(3篇)
第1篇一、实验目的1. 理解和掌握微机的基本组成和工作原理;2. 熟悉微机硬件设备和实验仪器的使用方法;3. 提高动手实践能力,培养解决实际问题的能力;4. 深入理解微机原理课程内容,为后续课程学习奠定基础。
二、实验内容1. 微机系统认识实验2. 微机硬件组成实验3. 微机指令系统实验4. 微机寻址方式实验5. 微机程序设计实验6. 微机接口技术实验三、实验仪器与设备1. 微机原理实验箱2. 示波器3. 数字万用表4. 计算机一台5. 实验指导书四、实验步骤与内容1. 微机系统认识实验(1)观察实验箱的结构,了解各个模块的功能;(2)熟悉实验箱的电源、复位、运行等按钮的使用方法;(3)学习微机系统的工作流程,包括加电、复位、启动等过程;(4)观察微机系统启动后的运行状态,了解各个模块的协同工作。
2. 微机硬件组成实验(1)观察实验箱的CPU、内存、I/O接口等硬件模块;(2)学习CPU的内部结构,包括寄存器、控制单元、运算单元等;(3)学习内存的存储原理,了解ROM、RAM等存储器的特点;(4)学习I/O接口的工作原理,了解中断、DMA等传输方式。
3. 微机指令系统实验(1)学习微机指令系统的基本格式,包括操作码、地址码等;(2)掌握微机指令系统的寻址方式,包括立即寻址、直接寻址、间接寻址等;(3)编写简单的汇编语言程序,实现加、减、乘、除等运算;(4)学习微机中断处理过程,了解中断向量表、中断服务程序等概念。
4. 微机寻址方式实验(1)学习微机寻址方式的基本概念,包括直接寻址、间接寻址、寄存器寻址等;(2)编写程序,实现不同寻址方式下的数据访问;(3)观察不同寻址方式对程序执行速度的影响。
5. 微机程序设计实验(1)学习汇编语言程序设计的基本方法,包括数据定义、指令编写、程序结构等;(2)编写简单的程序,实现数据交换、排序等操作;(3)学习微机程序的调试方法,包括单步执行、断点设置等。
6. 微机接口技术实验(1)学习微机接口技术的基本概念,包括并行接口、串行接口等;(2)观察实验箱中的并行接口、串行接口等模块,了解其工作原理;(3)编写程序,实现数据在并行接口、串行接口之间的传输;(4)学习微机中断处理在接口技术中的应用。
微机原理及接口技术实验报告
《微机原理与接口技术》实验报告姓名:学号:班级:专业:电气工程及其自动化学院:电气与信息工程学院目录实验一数据传送 (2)实验二算术运算 (4)实验三代码转换 (6)实验四程序的基本结构 (9)1、分支程序 (9)2、循环程序 (13)3、子程序 (16)实验五中断实验(8259) (19)实验六并行接口实验(8255) (25)实验七定时器/计数器实验(8235) (31)实验八D/A接口实验 (36)实验九A/D接口实验 (40)实验十串行通信实验 (43)实验一数据传送一、实验目的1. 掌握与数据有关的不同寻址方式。
2. 继续熟悉实验操作软件的环境及使用方法。
二、实验设备PC微机一台、TD-PIT + 或TD-PIT ++ 实验系统一套。
三、实验内容本实验要求将数据段中的一个字符串传送到附加段中,并输出附加段中的目标字符串到屏幕上。
四、实验步骤(1) 运行Tdpit 集成操作软件,编写实验程序。
(2) 编译连接无误后,进入调试环境,进行程序的调试。
按F8 键单步运行程序,执行完MOV DS,AX 语句后,观察DS 寄存器中出现的段地址。
如图1-1所示可以看出DS数据段中MSR源数据串"HELLO,WORLD!$"。
图1-1 进入调试环境(3)继续单步运行程序,执行MOV ES,AX 语句后,可以看数据段出现的段地址,用同样的方法可以查看ES:0000 的数据。
数据传输还没开始进行,此时ES 段的数据为空,如图1-1所示。
继续单步运行程序如图1-2可以看出数据正在逐渐的进入ES段中。
图1-2 DS源数据段数据(4)直到数据传输完毕,可以看到ES 数据段中目的数据串MSD 已经被写入了数据串"HELLO,WORLD!$"。
如图1-3所示。
图1-3 根据ES值查看附加段的数据实验二算术运算一、实验目的1. 掌握运算类指令编程及调试方法。
2. 掌握运算类指令对各状态标志位的影响及测试方法。
微机与接口技术实验报告
微机与接口技术实验报告微机与接口技术实验报告引言微机与接口技术是计算机科学中的重要领域,它涉及到计算机与外部设备之间的通信和数据传输。
本实验报告旨在介绍微机与接口技术的基本概念、实验过程和结果,以及对实验结果的分析和讨论。
一、实验目的本实验旨在通过设计和实现一个简单的数据输入输出接口,加深对微机与接口技术的理解。
具体目标包括:1. 理解接口技术的基本原理和工作方式;2. 掌握接口电路的设计和实现方法;3. 学会使用编程语言控制接口电路进行数据输入输出。
二、实验原理1. 接口技术的基本原理接口技术是计算机与外部设备之间进行数据传输的关键。
通过接口电路,计算机可以与各种外部设备进行通信,实现数据的输入和输出。
接口电路通常由硬件和软件两部分组成,硬件部分负责物理连接和信号转换,而软件部分则负责控制和管理数据传输。
2. 接口电路的设计和实现接口电路的设计需要考虑多个因素,包括外部设备的接口标准、数据传输速率、数据格式等。
常用的接口标准包括串行接口(如RS-232)和并行接口(如Centronics接口)。
设计接口电路时,需要根据具体需求选择合适的接口标准,并合理设计电路结构和信号处理方式。
3. 编程语言控制接口电路为了实现数据的输入和输出,需要使用编程语言控制接口电路。
常用的编程语言包括C、C++和Python等。
通过编写相应的程序,可以控制接口电路进行数据传输,并实现与外部设备的交互。
三、实验过程1. 硬件设计与连接根据实验要求,设计并连接适当的硬件电路,包括接口芯片、电阻、电容等。
确保电路连接正确,且与计算机的接口兼容。
2. 软件编程使用C语言编写程序,实现对接口电路的控制。
程序应能够实现数据的输入和输出,并确保数据的正确传输和处理。
3. 实验操作根据实验要求,进行相应的实验操作。
包括数据输入和输出测试、数据传输速率测试、数据格式转换测试等。
记录实验过程中的数据和结果。
四、实验结果分析1. 数据输入输出测试通过实验操作,测试接口电路的数据输入和输出功能。
微机原理与接口技术实验报告参考
微机原理与接口技术实验报告实验一显示程序实验一、实验目的1. 掌握在PC机上以十六进制形式显示数据的方法;2. 掌握部分DOS功能调用使用方法;3. 熟悉Tddebug调试环境和Turbo Debugger的使用。
二、实验所用设备1. PC微机一台。
三、实验内容一般来说,程序需要显示输出提示运行的状况和结果,有的还需要将数据区中的内容显示在屏幕上。
本实验要求将指定数据区的数据以十六进制数形式显示在屏幕上,并通过DOS功能调用完成一些提示信息的显示。
实验中可使用DOS功能调用(INT 21H)。
(1) 显示单个字符输出入口:AH=02H调用参数:DL=t出字符(2) 显示字符串入口:AH=09H调用参数:DS:DX串地址,’$'为结束字符(3) 键盘输入并回显入口:AH=01H返回参数:AL=t出字符(4) 返回DO系统入口:AH=4CH调用参数:AL=M回码四、实验步骤1. 运行Tddebug软件,选择Edit菜单,根据实验内容的描述编写实验程序,本实验显示部分参考实验流程如图1-1示;2. 使用Compile菜单中的Compile和Link对实验程序进行汇编、连接;3. 使用Rmrun菜单中的Run,运行程序,观察运行结果;4. 使用Rmrun菜单中的Debug调试程序,观察调试过程中,数据传输指令执行后,各寄存器及数据区的内容;5. 更改数据区中的数据,考察程序的正确性。
图1-1显示程序实验流程图五、程序清单DATA SEGMENTMES DB 'laoshihao:', 0AH,0DH,'$' SD DB 'b'DATA ENDSCODE SEGMENTASSUME CS:CODE, DS:DATASTART: MOV AX, DATAMOV DS, AXMOV DX, OFFSET MESMOV AH, 09HINT21HMOV DI, OFFSET SDMOV AL, DS:[DI]AND AL, 0F0HSHR AL,4CMP AL, 0AHJB L1ADD AL, 07HL1: ADD AL, 30HMOV DL, ALMOV AH, 02HINT21HMOV AL, DS:[DI]AND AL, 0FHCMP AL, 0AHJB L2ADD AL, 07HL2: ADD AL, 30HMOV DL, ALMOV AH, 02HINT21HMOV AX, 4C00HINT21HCODE ENDSEND START六、实验调试过程调试过程中出现警告,显示没有使用堆栈段。
微机原理实验报告
微机原理实验报告一、实验目的本次微机原理实验的主要目的是通过实际操作和观察,深入理解微机系统的工作原理和组成结构,掌握微机系统的编程和调试方法,提高我们对微机原理的实际应用能力。
二、实验设备1、计算机一台2、微机原理实验箱一套三、实验内容1、 8255 并行接口实验了解 8255 芯片的工作原理和编程方法。
通过编程实现 8255 芯片的 A 口、B 口、C 口的输入输出控制。
2、 8253 定时/计数器实验掌握 8253 芯片的工作方式和编程要点。
利用 8253 芯片实现定时和计数功能。
3、 8259 中断控制器实验学习 8259 芯片的中断管理机制。
编写中断服务程序,实现中断响应和处理。
四、实验原理1、 8255 并行接口8255 是一种可编程的并行接口芯片,具有 A、B、C 三个 8 位端口。
通过对控制字的编程,可以设置各个端口的工作方式为输入或输出。
2、 8253 定时/计数器8253 包含三个独立的 16 位计数器,每个计数器可以工作在不同的方式下,如方式 0 到方式 5。
通过对计数器的初值设置和控制字编程,可以实现定时和计数功能。
3、 8259 中断控制器8259 用于管理外部中断请求,可实现中断优先级的判断和中断嵌套。
通过对 8259 的初始化编程,可以设置中断触发方式、中断向量等。
五、实验步骤1、 8255 并行接口实验连接实验电路,将 8255 芯片与实验箱上的相关引脚连接好。
编写程序,设置 8255 的控制字,使 A 口为输出,B 口为输入。
向 A 口输出数据,从 B 口读取数据,并观察实验结果。
2、 8253 定时/计数器实验连接实验电路,将 8253 芯片与实验箱上的相关引脚连接好。
编写程序,设置 8253 计数器 0 的工作方式为方式 2,初值为 1000。
启动计数器,观察输出引脚的波形变化。
3、 8259 中断控制器实验连接实验电路,将 8259 芯片与实验箱上的相关引脚连接好。
微机原理实验报告
微机原理实验报告微机原理与接口技术实验报告学院:信息工程学院班级:学号:姓名:实验一:系统认识实验1 实验目的:掌握TD-PITE 80X86 微机原理及接口技术教学实验系统的操作,熟悉Wmd86联机集成开发调试软件的操作环境。
2 实验设备:PC机一台,TD-PITE 实验装置一套。
3 实验内容:编写实验程序,将00H~0FH 共16 个数写入内存3000H 开始的连续16 个存储单元中。
4 实验步骤:1. 运行Wmd86 软件,进入Wmd86 集成开发环境。
2. 环境调试,“设置”选项中选择汇编语言。
语言环境选择界面3. 新建文档,编写程序,程序如下:SSTACK SEGMENT STACKDW 32 DUP(?)SSTACK ENDSCODE SEGMENTASSUME CS:CODE,SS:SSTACKSTART: PUSH DSXOR AX, AXMOV DS, AXMOV SI, 3000HMOV CX, 16AA1: MOV [SI], ALINC SIINC ALLOOP AA1AA2: JMP AA2CODE ENDSEND START4. 编译连接,程序无误下载:信息界面5. 连接PC与实验系统的通讯电缆,打开实验系统电源。
6. 下载程序,查看内存3000H 开始的连续16 个存储单元中的内容,显示如下:8.由于该内存段原始数据与实验数据相同,便于区分观察,将该内存段初始化,然后查看:9.点击运行程序,在此查看该段内存:10.设置断点,执行程序:5 操作练习编写程序,将内存3500H 单元开始的8 个数据复制到3600H 单元开始的数据区中。
通过调试验证程序功能,使用E命令修改3500H 单元开始的数据,运行程序后使用D命令查看3600H 单元开始的数据。
1、编写程序如下:SSTACK SEGMENT STACKDW 32 DUP(?)SSTACK ENDSCODE SEGMENTASSUME CS:CODE,SS:SSTACKSTART: PUSH DSXOR AX, AXMOV DS, AXMOV SI, 3500HMOV DI, 3600HMOV CX, 8AA1: MOV AL, [SI]MOV [DI], ALINC SIINC DILOOP AA1AA2: JMP AA2CODE ENDSEND START2、执行过程如上,内存变化如下:程序执行前程序执行后实验二:数制转换实验1、实验目的1. 掌握不同进制数及编码相互转换的程序设计方法,加深对数制转换的理解;2. 熟悉程序调试的方法。
东北大学_微机原理实验报告及答案_简单IO扩展
4、写出实验源程序,并给出注释。
DATE SEGMENT
ASSUMECS:DATE
ORG 100H
START:MOV D0H
OUTDX,AL
JMP START
DATE ENDS
ENDSTART
思考题
1DATE SEGMENT
JMP START返回到开始
DATE ENDS 代码段结束
ENDSTART程序结束
注:双击鼠标,可放大图形
五、实验步骤
1、实验连线:
CPLD单元的输出端插孔CS0、CS1分别与244/273单元的片选信号CS244、CS273相连;
电平开关的输出端KK1~KK8分别与244/273单元的IN0~IN7对应连接;
244/273单元的输出端O0~O7分别与发光二极管的输入端LED 1~L ED8对应连接。
3、调试通过后,全速运行程序,观看实验结果。
4、编写实验报告,完成思考题与练习。
六、实验框图
七、思考与练习
1、KK1-KK4开关向上,让LED1-LED4发光二极管灯灭,而其它发光二极管灯保持不变,程序如何修改。
2、74LS244、74LS273的片选信号可以改变,若244/273的片选信号改为与CPLD单元中的CS2、CS3(04c0h、04d0h)相连,应如何修改程序中相应地址。
编辑:点击快捷图标[新建],进入编辑系统。将编写好的源程序逐一输入,然后保存。这时在桌面上就会产生以new .asm命名的文件。
编译运行:选择[编译]菜单,点击[编译或连接],对源程序进行汇编、连接,这时在屏幕左下方的窗口有信息显示:程序下传成功,编译,连接完成;然后点击快捷图标RUN,即运行程序。
微机原理实验报告
微机原理实验报告实验⼀DEBUG 调试实验类型:实验课时:指导教师:时间:2013 年⽉⽇课次:第节教学周次:第周实验分室:实验台号:实验员:⼀、实验⽬的1.练习使⽤DEBUG,调试简单汇编程序。
⼆、实验要求1.掌握DEBUG的使⽤,调试程序。
2.读懂程序中各条指令,说明程序功能。
三、实验内容1.启动DEBUG,⽤A命令输⼊并汇编下列程序段。
100 MOV SI,200103 MOV CX,10106 MOV AL,0108 MOV [SI ],AL10A INC SI10B INC AL10D DEC CX10E JNZ 108110 INT 3四、实验结果及分析实验⼆简单汇编语⾔设计实验类型:实验课时:指导教师:时间: 2012 年⽉⽇课次:第节教学周次:第周实验分室:实验台号:实验员:⼀、实验⽬的1.巩固DEBUG及宏汇编的使⽤。
2.加深对指令的理解。
⼆、实验要求1.设堆栈指针SP=2000H,(AX)=3000H,(BX)=5000H。
请编⼀程序将AX的内容和BX的内容进⾏交换。
请⽤堆栈作为两寄存器交换内容的中间存储单元,⽤DEBUG调试程序进⾏汇编与调试。
2.设DS=当前段指地址,(BX)=0300H,(SI)=0002H,请⽤DEBUG的命令将存储器偏移地址300H~304H连续单元顺序装⼊0AH、0BH、0CH、0DH、0EH。
在DEBUG状态下送⼊下⾯程序,并⽤单步执⾏的⽅法,分析每条指令源地址的形成过程?当数据传送完毕时,AX中的内容是什么?程序清单如下:MOV AX,BXMOV AX,0304HMOV AX,[0304H]MOV AX,[BX]MOV AX,0001[BX]MOV AX,[BX][SI]MOV AX,0001[BX][SI]HLT3.设(AX)=0002H,编⼀个程序段将AX的内容乘10,要求⽤移位的⽅法完成。
三、思想描述实验内容1将两个寄存器的内容进⾏交换时,必须有⼀个中间寄存器才能进⾏内容的交换,如果⽤堆栈做为中间存储单元,必须遵循先进后出的原则。
微机原理实验报告并口实验
微机原理实验报告——并口实验一、实验目的本实验旨在通过并口实验,了解和掌握微机原理中并口的基本原理、工作方式以及编程操作方法,通过实际操作并口实验,巩固并深化对微机原理的理解。
二、实验原理并口是微机原理中的一种常见的输入输出接口,并具有较高的灵活性和通信能力。
并口的基本结构包括数据寄存器和状态寄存器,通过使能信号对并口进行控制。
在并口实验中,通过编写相应的程序,实现将数据并行输入并通过并口输出的功能。
实验中主要使用的是8255芯片实现并口的控制。
三、实验器材1. IBM PC机或兼容机2. 8255芯片3. 连接线缆四、实验步骤1. 将8255芯片连接到计算机的并口接口,确保连接正确稳固。
2. 打开计算机并进入操作系统。
3. 编写并口控制程序。
在程序中,首先需要设置8255芯片为输出模式,然后通过与8255芯片对应的数据寄存器将需要输出的数据写入,并通过使能信号控制数据传输。
4. 运行编写好的程序,观察程序运行的结果。
五、实验结果与分析通过实验发现,在编写并口控制程序的过程中,需要正确设置8255芯片的工作模式和相应的寄存器,否则无法实现正确的数据传输。
其中,使能信号的控制也是关键的一步,通过正确的控制使能信号,才能实现数据的传输与输出。
六、实验总结通过本次并口实验,我们深入学习和掌握了微机原理中并口的基本原理和工作方式。
实验中我们了解到,在编写并口控制程序时需要对8255芯片的寄存器进行正确的设置,以确保数据传输和输出的正确性。
并口具有很高的灵活性和通信能力,能够广泛应用于各种数据输入输出的需求中。
然而,本次实验仅是对并口实验的基础性操作,实际应用中还需要根据具体需求进行更复杂的编程和控制。
为了更好地应用并口,建议在掌握基本操作的基础上,进一步学习并口的高级应用和相关技术。
最后,本次实验不仅提高了我们对微机原理的理解,也加深了我们对硬件与软件配合的理解。
通过实际动手实验,我们更加深入地理解了微机原理并口实验的基本原理与操作方法。
微机原理上机实验报告
微机原理上机实验报告实验一基本输入/输出实验:本实验使8255端口A工作在方式0并作为输入口,端口B工作在方式0并作为输出口。
用一组开关信号接入端口A,端口B输出线接至一组数据灯上,然后通过对8255芯片编程来实现输入/输出功能。
8255基本输入/输出实验参考接线图如图所示。
流程图:操作步骤:按图示连好线路,在TDPIT中输入如下程序,编译、连接、运行。
DATA SEGMENTCS0 EQU 300OHMY8255_A EQU CS0+00HMY8255_B EQU CS0+01HMY8255_C EQU CS0+02HMY8255_MODE EQU CS0+03HDATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV DX,3003HMOV AL,10000010BOUT DX,ALTEST_IT:MOV DX,3001HIN AL,DXMOV DX,3000HOUT DX,ALJMP TEST_ITCODE ENDSEND START实验现象:闭合开关,对应控制灯泡发光。
实验二流水线指示灯显示实验:首先分别将A口和B口写入7FH和FEH,然后分别将该数右移和左移一位,在送到端口上,这样循环下去,从而实现流水灯的显示。
8255流水灯显示实验参考接线图如图所示。
流程图:操作步骤:按图示连好线路,在TDPIT中输入如下程序,编译、连接、运行。
DATA SEGMENTCSO EQU 3000HA EQU CSO+0000HB EQU CSO+0001HC EQU CSO+0002HM EQU CSO+0003HDATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXXOR AX,AXMOV AL,10000000BMOV DX,MOUT DX,AL;MOV DX,B;IN AL,DXL1:MOV AL,00001000BMOV DX,AOUT DX,ALMOV AL,00000001BMOV DX,BOUT DX,ALMOV CX,00FFHC1: MOV BX,CXMOV CX,0FFFFHD1:LOOP D1MOV CX,BXLOOP C1MOV AL,00000100BMOV DX,AOUT DX,ALMOV AL,00000010BMOV DX,BOUT DX,ALMOV CX,00FFHC2: MOV BX,CXMOV CX,0FFFFHD2:LOOP D2MOV CX,BXLOOP C2MOV AL,00000010BMOV DX,AOUT DX,ALMOV AL,00000100BMOV DX,BOUT DX,ALMOV CX,00FFHC3: MOV BX,CXMOV CX,0FFFFHD3:LOOP D3MOV CX,BXLOOP C3MOV AL,00000001BMOV DX,AOUT DX,ALMOV AL,00001000BMOV DX,BOUT DX,ALMOV CX,00FFHC4: MOV BX,CXMOV CX,0FFFFHD4:LOOP D4MOV CX,BXLOOP C4JMP L1MOV AX,4C00HINT 21HCODE ENDSEND START实验现象:灯泡如流水般从左至右依次流动发光,并始终保持在同一时间只有一个灯亮着。
微机原理与接口技术输入输出实验
实验一:输入输出实验实验环境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)简单输入输出一. 实验目的与内容(一)实验目的1)进一步掌握TPC实验装置的基本原理和组成结构;2)掌握利用I/O指令单步调试检查硬件接口功能,学会利用示波器检测I/O指令执行时总线情况;3)掌握简单并行输入输出接口的工作原理及使用方法,进一步熟悉掌握输入输出单元的功能和使用。
(二)实验内容及要求1、输出接口输出,根据8个发光二极管发光的情况验证编程从键盘输入一个字符或数字,将其ASCII码通过正确性。
(输出端口实验必做)2、用逻辑电平开关预置某个字母的ASCII码,编程输入这个ASCII码,并将其对应字母在屏幕上显示出来。
(输入端口实验必做)3、利用基本实验(1)中的输出锁存电路,设计L0~L7为流水灯,流水间隔时间由软件产生。
(输出端口实验)4、利用基本实验(2)中的输入电路,监测逻辑电平开关K0~K7的变换,当开关状态为全开时,在屏幕上显示提示信息并结束程序。
(输入端口实验)要求:1、输入输出端口应该可以响应外设的连续变化。
2、输出按ESC键退出;输入按任意键退出。
3、内容3、4比做一题,选做一题二. 实验基本原理(一)基本原理简单并行输出实验:八D触发器74LS273的八个输入端接数据总线D0~D7,从键盘输入一个字符或数字,通过2A8H~输出接口输出该字符或者数字代表的ASCII码,再通过8个发光二极管发光显示二进制数码,从而验证编程以及电路的正确性。
简单并行输入实验:八缓冲器74LS244的八个输出端接数据总线D0~D7,8个输入端分别接逻辑电平开关K0~K7,在逻辑电平开关上预置任意字符的ASCII码,编程将此ASCII码通过2A0H~输入,ASCII码对应字符显示在屏幕上,从而验证编程及电路的正确性。
(二)实验接线图图 3.4-1 简单并行输出接口图 3.4-1 简单并行输入接口(三)主程序流程图输出参考流程图输入参考流程图三. 方案实现与测试(或调试)(一)实验代码必做1:代码与参考程序相同,主要是替换主机的tpc卡的i/o地址ioport equ 0d400h-0280hls273 equ ioport+2a8h必做2:代码与教材参考程序相同,同样需要替换主机的tpc卡的i/o地址 ioport equ 0d400h-0280hls244 equ ioport+2a0h必做3(选择输出实验)代码如下:ioport equ 0b800h-0280hls273 equ ioport+2a8hstacks segment stackdb 100 dup (?)stacks endscode segmentassume cs:code,ss:stacksmain proc farstart:mov ax,stacksmov ss,axmov ah,2 ;回车符mov dl,0dhint 21hmov ah,1 ;等待键盘输入int 21hjudge:cmp al,27 ;判断是否为ESC键je exit ;若是则退出cmp al,31hje X1X2:mov cx,8int 21hjnz judgeje X2 ;若无,则转X2X1:mov cx,8mov al,01hmov dx,ls273XX1:out dx,alcall delayrol al,1loop XX2mov ah,06 ;是否有键按下mov dl,0ffhint 21hjnz judgeje X1 ;若无,则转X1 exit: mov ah,4ch ;返回DOSint 21hmain endpdelay proc near ;延时子程序mov al,01hmov dx,ls273XX2:out dx,alcall delayrol al,1loop XX2mov ah,06 ;是否有键按下mov dl,0ffhmov bx,3000 zzz: mov cx,0 zz: loop zzdec bxjne zzzretdelay endp code endsend start(二)实验调试结果首先,实验运行之前应该检测硬件是否正常,在正常的情况下,运行实验代码,检测试验结果,运行结果如下:实验1:从键盘输入不同的字母,灯可以连续响应变化,按照字母的ASCII,实现灯的亮灭。
微机原理实验报告
微机原理实验报告一、实验目的本实验旨在通过实际操控和操作微型计算机,深入了解微机系统的组成和工作原理,加深对计算机硬件结构以及基本操作的理解,培养实际动手能力。
二、实验内容1.熟悉微机系统组成部分:主机、显示器、键盘等。
2.掌握微机系统的基本操作:开机、关机、复位、重启等。
3.了解微机系统的工作原理:运行机制、输入输出等。
4.实践运用微机系统进行一些简单的应用操作。
三、实验步骤1.开机操作:按下主机电源按钮,等待主机启动。
2.系统自检:主机启动后会进行自检操作,检查硬件是否正常。
如果发现问题,主机会发出蜂鸣声。
3.输入输出设备准备:连接好显示器和键盘,并检查是否正常连接。
4.系统登录:按照屏幕上的提示,输入用户名和密码进行系统登录。
5.系统操作:根据实验要求,进行相应的系统操作。
6.关机操作:在操作完成后,选择关机选项进行关机。
四、实验结果与分析通过本次实验,我掌握了微机系统的基本操作,并对其工作原理有了更深入的了解。
通过实际操作,我可以熟练地开机、关机、复位等操作,并可以进行一些简单的应用操作。
同时,我也了解到了微机系统由主机、显示器、键盘等多个组成部分组成,不同组成部分的协作工作实现了系统的正常运行。
五、实验心得通过本次实验,我对微机系统的组成和工作原理有了更深入的了解。
这对我后续学习计算机原理和操作系统提供了基础。
在实验过程中,我也发现了一些问题,比如操作系统选择界面的选择问题,我没有选择正确的操作系统,导致后续实验操作遇到一些困难。
这些问题提醒我在实际操作中需要格外注意,仔细阅读提示并选择正确的操作选项。
总结来说,本次实验对我深入理解微机系统的组成和工作原理提供了良好的机会。
通过实际操控和操作微型计算机,我对计算机硬件结构以及基本操作有了更直观的认识,掌握了一些基本操作技能。
在未来的学习和应用中,我将更加注重细节,提高自己的操作技能,并不断深入学习和了解更多关于微机系统的知识。
微机原理实验报告
微机原理实验报告班级:自动化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 显示,验证程序功能。
(完整word版)微机原理完整实验报告+程序
实验题目8253定时/计数器实验 一、 实验目的与要求: 1. 学会8253芯片和微机接口原理和方法。
2. 掌握8253定时器/计数器的工作方式和编程原理。
二、 实验内容: 1、实验原理 本实验原理图如图 1所示,8253A 的A0、A1接系统地址总线 A0、A1,故8253A 本实验通道2 有四个端口地址,如端口地址表 1所示。
8253A 的片选地址为 48H~ 4FH 。
因此, 仪中的8253A 四个端口地址为 48H 、49H 、4AH 、4BH ,分别对应通道 0、通道1、 和控制字。
采用8253A 通道0,工作在方式3(方波发生器方式),输入时钟CLK0为 输出OUTO 要求为1KHZ 的方波,并要求用接在 GATE0引脚上的导线是接地("0" 甩空("1"电平)来观察GATE 对计数器的控制作用,用示波器观察输出波形。
2、实验线路连接 (1) 8253A 芯片的CLK0引出插孔连分频输出插孔 (2) 8253A 的 GATE0 接+5V 。
实验步骤 (1) 按图1连好实验线路(2) 运行实验程序 1. 按“调试”按钮2. 选“窗口” “进入示波器窗口” ,然后最小化3. 按“运行按钮”4.将模拟示波器窗口打开,选择“串行口 2”,再按 Ctrl + F2按钮即可看到波形 显示“ 8253-1 ”用示波器测量8253A 的OUT2输出插孔,方波输出,幅值0〜4V 三、实验代码: 1MHZ ,电平)或 3、 CODE SEGMENT ASSUME CS:CODE TCONTRO EQU 004BH TCON2 EQU 004AH CONT PORT EQU 00DFH DATA PORT EQU 00DEH DATA1 EQU 0500H START: JMP TCONT TCONT: CALL FORMATCALL LEDDIS P MOV DX,TCONTRO1MHZ 。
微机原理实验报告
微机原理实验报告实验目的,通过本次实验,掌握微机原理的基本知识,了解微机系统的组成和工作原理,掌握微机系统的组装和调试方法。
实验一,微机系统组成及工作原理。
1.1 微机系统的组成。
微机系统由中央处理器(CPU)、内存、输入设备、输出设备和外部设备等组成。
其中,CPU是微机系统的核心部件,负责控制整个系统的运行。
1.2 微机系统的工作原理。
微机系统的工作原理是通过CPU对内存中的指令进行解释和执行,从而实现各种功能。
CPU通过总线与内存、输入输出设备进行数据传输和控制信号的交换,实现对整个系统的控制和管理。
实验二,微机系统的组装和调试。
2.1 微机系统的组装。
在组装微机系统时,首先要选择合适的主板、CPU、内存、硬盘等配件,然后按照正确的安装顺序和方法进行组装。
组装完成后,还需连接电源、显示器、键盘、鼠标等外部设备。
2.2 微机系统的调试。
组装完成后,需要对微机系统进行调试,检查各个部件是否连接正确,是否能够正常工作。
通过BIOS设置和操作系统的安装,完成对微机系统的调试和配置。
实验三,微机系统的应用。
3.1 微机系统的应用领域。
微机系统广泛应用于各个领域,如办公、教育、科研、娱乐等。
在办公领域,微机系统可以用于文字处理、表格制作、图像处理等;在教育领域,微机系统可以用于多媒体教学、网络教学等。
3.2 微机系统的发展趋势。
随着科技的不断发展,微机系统也在不断更新换代,性能不断提升,体积不断缩小,功耗不断降低。
未来,微机系统将更加智能化、便携化,成为人们生活、工作不可或缺的一部分。
结论,通过本次实验,我对微机原理有了更深入的了解,掌握了微机系统的组成和工作原理,了解了微机系统的组装和调试方法,对微机系统的应用和发展趋势也有了一定的认识。
这对我今后的学习和工作将有很大的帮助。
微机原理与接口实验
微机原理与接口实验实验目的:通过实验,掌握微机系统原理和接口的基本知识,能够正确使用各种接口设备进行输入输出操作。
实验器材:8086微机系统、键盘、数码管、LED灯、示波器等。
实验一:键盘输入实验实验内容:1.连接键盘到8086微机系统。
2.编写汇编程序,实现用户输入字符,并在数码管上显示用户输入的字符。
3.将程序加载到存储器中,并运行程序,进行输入测试。
实验步骤:1.将键盘接口与8086微机系统相连接。
键盘的数据引脚接到8086微机系统的8位数据总线,键盘的控制引脚接到8086微机系统的地址总线和控制总线上。
2.编写汇编程序,初始化键盘接口并循环接收键盘输入的字符。
将键盘输入的字符加载到寄存器中,并将其数字值转换为对应的ASCII码值,再将其显示在数码管上。
3.将汇编程序加载到存储器中,并运行程序进行测试。
实验结果:通过实验,可以实现键盘输入功能,并能够在数码管上显示用户输入的字符。
实验二:LED灯输出实验实验内容:1.连接LED灯到8086微机系统。
2.编写汇编程序,实现控制LED灯的亮灭。
3.将程序加载到存储器中,并运行程序,观察LED灯的亮灭情况。
实验步骤:1.将LED灯接口与8086微机系统相连接。
LED灯的引脚接到8086微机系统的8位数据总线上。
2.编写汇编程序,初始化LED灯接口并循环控制LED灯的亮灭状态。
3.将汇编程序加载到存储器中,并运行程序观察LED灯的亮灭情况。
实验结果:通过实验,可以实现LED灯的亮灭控制,根据程序中的指令可以控制LED灯的闪烁频率和顺序。
实验三:外设输入输出实验实验内容:1.连接外设设备(如温湿度传感器等)到8086微机系统。
2.编写汇编程序,读取外设设备的输入信息,并控制外设设备的输出。
3.将程序加载到存储器中,并运行程序,观察外设设备的输入输出情况。
实验步骤:1.将外设设备接口与8086微机系统相连接。
外设设备的输入引脚接到8086微机系统的数据总线上,外设设备的输出引脚接到8086微机系统的控制总线上。
微机原理实验报告4
实验4 字符及字符串的输入和输出一、实验任务及实验目的1、熟悉如何进行字符及字符串的输入输出。
2、掌握简单的dos系统功能调用3、熟悉在pc上建立、汇编、链接、调试和运行8086汇编语言的全过程二、实验内容、过程及实验现象记录1、assume cs:cseg,ds:dsegdseg segment;数据段dseg endcseg segmentmain proc farmov ax,dsegmov ds,ax;主程序mov ax,4c00hint 21hmain endpcseg endsend main2、(1)AL=35,是字符5的ACSCII码(2)分别是41、42、43、44,是A、B、C、D的ASCII码3、(1)是04h,它表示实际输入的字符个数。
(2)从DS:1002H开始的内存区域中的内容分别是5、4、3、2和回车键ASCII码。
其中没有字符“1”的ASCII码,因为实际长度只有4位,其中有一位是回车键,所以没有字符“1”的ASCII码。
(1)显示了。
(2)和第一题是一样的,屏幕都显示了对应的字符。
(3)屏幕都没有显示。
0ah是回车键的ASCII码,对应无显示。
(4)没有输出,有‘哔’的一声5、org 100hmov ax, 3int 10hmov ax, 1003hmov bx, 0int 10hmov ax, 0b800hmov ds, axmov [02h], 'H'mov [04h], 'e'mov [06h], 'l'mov [08h], 'l'mov [0ah], 'o'mov [0ch], ','mov [0eh], 'W'mov [10h], 'o'mov [12h], 'r'mov [14h], 'l'mov [16h], 'd'mov [18h], '!'mov cx, 12mov di, 03hret7、codes segmentassume cs:codesstart:mov ch,20hmov bl,6lll:mov bh,16ll:mov dl,chmov ah,2int 21hinc chdec bhjnz llmov dl,0ahint 21hmov dl,0dhint 21hdec bljnz lllmov ah,4chint 21hcodes endsend start三、实验结果及总结通过此次实验,我熟悉了如何进行字符及字符串的输入输出,掌握了简单的DOS系统功能调用,学到了不少知识。
《微机原理实验报告》word版
班级自动化学号姓名实验一系统认识实验一实验目的掌握教学系统的基本操作二实验设备PC机一台masm软件三实验内容及步骤(1)输入程序并检查无误,经汇编连接后装入系统(2)输入E3500后回车,在3500-3510单元中分别送入00~09十个数据(3)按“T“键运行以上程序直至程序运行完(4)输入D3600后回车,查看3600单元后面的数据四程序及其显示的结果(1)程序(2)显示的结果实验三运算类编程实验一实验目的(1)掌握使用运算类指令编程及调试方法(2)掌握运算类指令对各状态标志位的影响及其测试方法二实验设备PC一台masm软件三实验内容及步骤(1)二进制双精度加法运算(2)输入程序并检查无误,经汇编连接后装入系统(3)用U0000:2000查看MOV AX,DA TA的语句,即得到数据段段位置CS:1412用E命令E1412:0000回车,给XL,YL,YH赋值存入二进制数A0,65,15,00和9E,B7,21,00(4)用G=0000:2000,运行以上程序(5)输入D1412:0008,检验显示的结果是否为:3E,1D,17,00四实验程序五程序显示的结果实验四分支程序设计实验一实验目的:(1)掌握分支程序的结构(2)掌握分支程序的设计,调试方法二实验设备:PC机一台masm软件三实验内容设计一数据块间的搬移程序。
设计思想:程序要求把内存中一数据区传送到另一存储区。
源数据块和目的数据块在存储中可能有三种情况,对于两个分离的情况,数据的传送从数据块的首位置开始,或者从数据块的末位置开始。
但对于有部分重叠的情况,则要加以分析,否则重叠部分会因搬移而遭到破坏,可以得到以下结论:(1)当源数据块首址大于目的块首址时,从数据块首址开始传送数据。
(2)当源数据块首址小于目的块首址时,从数据块末址开始传送数据。
四实验步骤(1)按实验流程图设计编写实验程序(2)输入程序并检查无误后,经汇编,连接后装入系统(3)用E命令在以SI为起址的单元中填入十六个数(4)用G=0000:2000运行实验程序(5)用D命令查看DI为起址的单元中的数据是否与SI单元中数据相同五实验程序及结果显示(1)实验程序(1)实验结果显示实验五循环程序设计一实验目的(1)加深对循环结构的理解(2)掌握循环结构程序设计的方法(3)熟练掌握调试循环程序的方法二实验设备:PC机一台masm软件三实验内容求数据区内负数的个数:设数据区的第一单元存放区内单元数据的个数,从第二单元开始开始存放数据,在区内最后一个单元存放结果。
微机原理实验报告 简单并行接口
实验二实验报告——简单并行接口一、实验目的掌握简单并行接口的工作原理及使用方法。
二、实验原理和内容1、按下面图4-2-1简单并行输出接口电路图连接线路(74LS273插通用插座,74LS32用实验台上的“或门”)。
74LS273为八D触发器,8个D输入端分别接数据总线D0~D7,8个Q输出端接LED显示电路L0~L7。
2、编程从键盘输入一个字符或数字,将其ASCⅡ码通过这个输出接口输出,根据8个发光二极管发光情况验证正确性。
3、按下面图4-2-2简单并行输入接口电路图连接电路(74LS244插通用插座,74LS32用实验台上的“或门”)。
74LS244为八缓冲器,8个数据输入端分别接逻辑电平开关输出K0~K7,8个数据输出端分别接数据总线D0~D7。
4、用逻辑电平开关预置某个字母的ASCⅡ码,编程输入这个ASCⅡ码,并将其对应字母在屏幕上显示出来。
5、接线:1)输出按图3-3-1接线(图中虚线为实验所需接线,74LS32为实验台逻辑或门)2)输入按图3-3-2接线(图中虚线为实验所需接线,74LS32为实验台逻辑或门)三、程序代码基于以上实验原理的分析,我们可得到本次试验的汇编语言程序如下:STACKS SEGMENT STACK ;堆栈段DW 128 DUP(?) ;注意这里只有128个字节STACKS ENDSDATAS SEGMENT ;数据段;请在这里定义您的数据DATAS ENDSCODES SEGMENT ;代码段ASSUME CS:CODES,DS:DATASSTART: MOV AL,23H ;初始化MOV DX,2A8HOUT DX,AL;请在这里添加您的代码MOV AX,4C00H ;退出程序INT 21HCODES ENDSEND START四、程序调试与结果分析编程完成后,检查正确便可运行程序了,打开电源开关可以看到八个灯泡中对应的灯泡开启,然后如果将程序中数据稍加更改便可以看到不同灯泡组合亮。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
东南大学
《微机实验及课程设计》
实验报告
实验四(1)简单输入输出
一. 实验目的与内容
(一)实验目的
1)进一步掌握TPC实验装置的基本原理和组成结构;
2)掌握利用I/O指令单步调试检查硬件接口功能,学会利用示波器检测I/O指令执行时总线情况;
3)掌握简单并行输入输出接口的工作原理及使用方法,进一步熟悉掌握输入输出单元的功能
和使用。
(二)实验内容及要求
1、输出接口输出,根据8个发光二极管发光的情况验证编程从键盘输入一个字符或数字,将其ASCII码通过正确性。
(输出端口实验必做)
2、用逻辑电平开关预置某个字母的ASCII码,编程输入这个ASCII码,并将其对应字母在屏幕上显示出来。
(输入端口实验必做)
3、利用基本实验(1)中的输出锁存电路,设计L0~L7为流水灯,流水间隔时间由软件产生。
(输出端口实验)
4、利用基本实验(2)中的输入电路,监测逻辑电平开关K0~K7的变换,当开关状态为全开时,在屏幕上显示提示信息并结束程序。
(输入端口实验)
要求:
1、输入输出端口应该可以响应外设的连续变化。
2、输出按ESC键退出;输入按任意键退出。
3、内容3、4比做一题,选做一题
二. 实验基本原理
(一)基本原理
简单并行输出实验:八D触发器74LS273的八个输入端接数据总线D0~D7,从键盘输入一个字符或数字,通过2A8H~输出接口输出该字符或者数字代表的ASCII码,再通过8个发光二极管发光显示二进制数码,从而验证编程以及电路的正确性。
简单并行输入实验:八缓冲器74LS244的八个输出端接数据总线D0~D7,8个输入端分别接逻辑电平开关K0~K7,在逻辑电平开关上预置任意字符的ASCII码,编程将此ASCII码通过2A0H~输入,ASCII码对应字符显示在屏幕上,从而验证编程及电路的正确性。
(二)实验接线图
图 3.4-1 简单并行输出接口
图 3.4-1 简单并行输入接口(三)主程序流程图
开始
等待键盘输入
是ESC键
自端口2A8H输出ASCII码
结束Y
N
开始
自端口2A0H输入ASCII
码
保存输入的ASCII码至
DL
显示字符
有键按下
结束
Y
N
输出参考流程图输入参考流程图
三. 方案实现与测试(或调试)
(一)实验代码
必做1:代码与参考程序相同,主要是替换主机的tpc卡的i/o地址
ioport equ 0d400h-0280h
ls273 equ ioport+2a8h
必做2:代码与教材参考程序相同,同样需要替换主机的tpc卡的i/o地址 ioport equ 0d400h-0280h
ls244 equ ioport+2a0h
必做3(选择输出实验)代码如下:
ioport equ 0b800h-0280h
ls273 equ ioport+2a8h
stacks segment stack
db 100 dup (?)
stacks ends
code segment
assume cs:code,ss:stacks
main proc far
start:mov ax,stacks
mov ss,ax
mov ah,2 ;回车符
mov dl,0dh
int 21h
mov ah,1 ;等待键盘输入
int 21h
judge:cmp al,27 ;判断是否为ESC键je exit ;若是则退出
cmp al,31h
je X1
X2:mov cx,8
int 21h
jnz judge
je X2 ;若无,则转X2
X1:mov cx,8
mov al,01h
mov dx,ls273
XX1:out dx,al
call delay
rol al,1
loop XX2
mov ah,06 ;是否有键按下mov dl,0ffh
int 21h
jnz judge
je X1 ;若无,则转X1 exit: mov ah,4ch ;返回DOS
int 21h
main endp
delay proc near ;延时子程序
mov al,01h
mov dx,ls273
XX2:out dx,al
call delay
rol al,1
loop XX2
mov ah,06 ;是否有键按下mov dl,0ffh
mov bx,3000 zzz: mov cx,0 zz: loop zz
dec bx
jne zzz
ret
delay endp code ends
end start
(二)实验调试结果
首先,实验运行之前应该检测硬件是否正常,在正常的情况下,运行实验代码,检测试验结果,运行结果如下:
实验1:从键盘输入不同的字母,灯可以连续响应变化,按照字母的ASCII,实现灯的亮灭。
实验2:可以实现通过开关控制输入的字母在电脑上显示,改变开关的开与关(高低电平)可以实现题目要求。
实验3 :可以实现流水灯,任意从键盘上按下一个键子就可以启动流水灯,按esc键可以停止程序。
四.分析与总结
在简单输出接口电路中74LS273作为一个输出缓冲器,其内部结构为八个触发器,电路中一旦有来自地址译码器的译码信号2A0H,它就能将来自数据总线的数据锁存起来,等到/IOW(输入输出写)信号有效地时候再将数据送到端口上,本实验中是七个LED灯。
同样的在简单输入电路中74LS244充当一个三态的输入缓冲器,电路中一旦有来自地址译码器的译码信号2A8H以及/IOR(输入输出读)有效时,它就将由开关所代表的一个字节的数据送到数据总线上。
总结以上两种电路都可以看出,输入输出电路中都会有一个缓冲器作为数据传输中间介质,目的是让外部IO的时序与CPU匹配。