一、实验目的

掌握简单并行接口的工作原理及使用方法。

二、实验设备与环境

TPC-2003A通用微机接口实验箱,windows XP运行环境。

三、实验内容、程序清单及运行结果

1. 实验内容

1)按下面图2简单并行输出接口电路图连接线路(74LS273插通用插座,74LS32用实验台上的“或门”)。74LS273为八D触发器(通过CLR引脚决定是否进行锁存,将输入端来自数据总线的数据锁存到Q1-Q8的输出端,输出到发光二极管,点亮对应的灯,上升沿有效,或门,从低电平到高电平,才能产生上升沿),8个D输入端分别接数据总线D0~D7,8个Q输出端接LED显示电路L0~L7。

2)编程从键盘输入一个字符或数字,将其ASCⅡ码通过这个输出接口输出,根据8个发光二极管发光情况验证正确性。

3)按下面图3简单并行输入接口电路图连接电路(74LS244插通用插座,74LS32用实验台上的“或门”)。74LS244为八缓冲器,8个数据输入端分别接逻辑电平开关输出K0~K7,8个数据输出端分别接数据总线D0~D7。

4)用逻辑电平开关预置某个字母的ASCⅡ码,编程输入这个ASCⅡ码,并将其对应字母在屏幕上显示出来。

2. 编程提示

上述并行输出接口的地址为2A8H,并行输入接口的地址为2A0H,通过上述并行接口电路输出数据需要3条指令:

​ MOV AL, 数据

MOV DX,2A8H

​ OUT DX,AL

通过上述并行接口输入数据需要2条指令:

​ MOV DX,2ADH

IN AL,DX。

3. 流程图

4. 程序清单

1)参考程序1:

code segment

assume cs:code

start: mov ah,2 ;回车符 CPU执行数据传送指令,传输给ah寄存器,ah寄存器获得立即数

​ mov dl,0dh CPU继续执行数据传送指令,将立即数0dh传送给dl寄存器

​ int 21h CPU执行中断指令,根据中断类型码获得类型号21h,CPU执行dos功能调用中断子程序,根据入口参数ah所提供的功能号2,CPU转到 显示一个字符的子模块,根据入口参数dl所提供的数据为0dh(0dh是回车符号的ASCII码),其结果显示一个回车符(有入口,入口是dl寄存器,没有出口)

​ mov ah,1 ;等待键盘输入 CPU执行数据传送指令,将立即数1传送给ah寄存器

​ int 21h CPU继续执行中断子程序,根据中断类型号21h转到dos功能调用中断服务子程序中,CPU在执行dos功能调用的中断服务子程序时,根据入口参数ah寄存器所提供的功能号为1转到等待键盘输入的子模块,当按下一个键时,其键的ASCII码值通过出口参数al寄存器返回(没有入口,只有出口,al寄存器是出口)。

​ cmp al,27 ;判断是否为ESC键 比较指令,相当于减法指令,不影响结果,只允许标志位ZF,若按下的键为ESC键,ZF=1,若不是ESC键,ZF=0

​ je exit ; 若是则退出 条件转移指令,若ZF为1,条件满足,转到标号为exit处

​ mov dx,2a8h ;若不是,从2A8H输出其ASCII码

​ out dx,al CPU执行IO的写指令,将al寄存器所提供的值(按键的ASCII码值)写到端口地址02a8所指定的8D触发器中(相当于存储器),通过输出端输出到发光二极管,点亮对应的灯。接下来结合时序图和程序原理图分析该指令执行的结果。

​ jmp start ;转start

exit: mov ah,4ch ;返回DOS 继续执行数据传送指令,将立即数4ch传送给ah寄存器

​ int 21h CPU执行中断指令,根据提供的类型号为21h,CPU执行dos功能调用的中断服务子程序,CPU在执行dos功能调用的中断服务子程序时,根据入口参数ah所提供的功能号为4ch,转到返回dos的子模块,结果返回到操作系统。若按下其他键(不是ESC),条件不满足,CPU顺序执行,将立即数02a8传送给dx寄存器

code ends

​ end

2)参考程序2:

code segment

assume cs:code

start: mov dx,2a0h ;从2A0H输入一数据

​ in al,dx

​ mov dl,al ;将所读数据保存在DL中

​ mov ah,02 ;显示ASCII码为DL的字符

​ int 21h

​ mov dl,0dh ;显示回车符

​ int 21h

​ mov dl,0ah ;显示换行符

​ int 21h

​ mov ah,1 ;是否有键按下

​ int 16h

​ je start ;若无,则转start

exit: mov ah,4ch ;返回DOS

​ int 21h

code ends

​ end


5. 运行结果

四、实验结论、实验体会

答辩:1、本次实验是简单并行接口输出实验。2、按照原理图连接好线路,打开实验箱电源,通过集成开发环境将简单并行接口输出实验程序,进行编辑,输入,然后进行编译,生成目标代码,点击运行,从键盘上输入一个字符,其ASCII码的值通过简单并行输出接口输出到发光二极管,点亮对应的灯。结合原理图,时序图,程序代码着手分析其运行的结果。CPU首先从Start开始执行指令…,接下来结合时序图和程序原理图分析该指令执行的结果。CPU执行IO的写指令进入T1时刻,产生16位的有效地址,8088…

以上是唐老师上课的笔记。未完不待续

微型计算机简单并行接口实验相关推荐

  1. 微型计算机简单并行接口实验心得,实验二 简单并行接口

    实验二 简单并行接口 课程名称 微型计算机技术及应用 实验班级 实验名称 实验二 简单并行接口 指导教师 学生姓名 学生学号 一. 实验目的 掌握简单并行接口的工作原理及使用方法. 二. 实验设备 1 ...

  2. 微型计算机简单并行接口实验心得,实验二简单并行接口.doc

    实验二简单并行接口 计算机科学系实验报告 课程名称 微型计算机技术及应用 实验班级 实验名称 实验二 简单并行接口 指导教师 学生姓名 学生学号 实验目的 掌握简单并行接口的工作原理及使用方法. 实验 ...

  3. 微机实验2 ——简单并行接口实验

    目录 实验要求 实验代码 字符转ASCII码的实验 ASCII码转字符的实验 实验连线 字符转ASCII码的实验 ASCII码转字符的实验 实验现象 字符转ASCII码的实验 ASCII码转字符的实验 ...

  4. 微机接口实验一 :8255并行接口实验

    微机接口实验一 :8255并行接口实验 8255接口芯片非常重要的,使用非常简单,在以后的实验会经常使用到 1.1 实验内容 编写一个基本输入输出程序,使8255的A口为输入,B口为输出,完成拨动开关 ...

  5. 微型计算机常用接口实验,微型计算机原理及接口技术实验教材

    内容简介 本书既是<微型计算机原理及接口技术>一书的配套教材,也是一本独立的实验教程. 本书由3篇4章构成,第1篇PC机篇,包含汇编语言程序设计.PC系列微机中断及接口实验,主要涉及汇编语 ...

  6. 微型计算机实验仪,中小学生学习电子技术及微型计算机基础课程实验仪的制作方法...

    专利名称:中小学生学习电子技术及微型计算机基础课程实验仪的制作方法 技术领域: 本实用新型涉及电子技术领域,特别是一种可供中小学生学习电子技术及微型计算机基础课程的实验仪. 目前,中学物理教材中,电. ...

  7. 这次来个BGP反射器的简单小实验

    这次来个BGP反射器的简单小实验 前言 一.先把端口简单配置写完(OSPF.RIP.IP) R1 R2 R3 R4 R5 R6 R7 R8 二.配置BGP及反射器 R1 R2 R3 R4 R5 R6 ...

  8. 交叉编译及linux简单程序设计,嵌入式实验6交叉编译及Linux简单程序设计实验

    实验六交叉编译及Linux简单程序设计实验的实验报告 一实验目的 1.了解和掌握交叉编译模式和方法: 2.熟悉和掌握Linux简单程序设计. 二实验环境 预装Fedora10_A8_Linux的pc机 ...

  9. Linux编译和下载嵌入式实验,嵌入式实验6交叉编译及Linux简单程序设计实验

    <嵌入式实验6交叉编译及Linux简单程序设计实验>由会员分享,可在线阅读,更多相关<嵌入式实验6交叉编译及Linux简单程序设计实验(7页珍藏版)>请在人人文库网上搜索. 1 ...

最新文章

  1. 2D图片3秒变立体,变换视角流畅自然:Adobe实习生的智能景深算法,登上顶级期刊...
  2. MAVEN 自定义骨架
  3. 怎么把series变为datamate_如何把时间序列问题转化为监督学习问题?通俗易懂的 Python 教程...
  4. Python中Dict的查找
  5. 前端学习(1669):前端系列实战课程之半透明拖拽思路
  6. 码农节快乐|一个系统,高效解决复杂事件采集-计算-实时触达
  7. 上传及更新代码到github(以及如何在vscode上提交自己的代码)
  8. java基础知识点整理一
  9. iOS 中文转拼音 多音字处理
  10. c++串口配置及DCB结构体
  11. Mac Androidstudio点击打开跳一下就消失
  12. 在Dreamwaver上基于HTML编写自己的
  13. P7721 [Ynoi2007] rcn
  14. js图片轮播效果实现代码
  15. matlab中的sparse函数使用
  16. “大狼来了”全球最大量化基金落户中国
  17. Kalman滤波在船舶GPS导航定位系统中的应用
  18. 《我不知道该说什么,关于死亡还是爱情》······
  19. vue 页面高度自适应 超出部分滚动条
  20. TJOJ 1101 软件工程师英语水平测试

热门文章

  1. java将内容写入文件,纯干货
  2. CSS语法及其选择器
  3. 知识追踪之动态键值对记忆网络 Dynamic Key-Value Memory Networks for Knowledge Tracing
  4. 自动提取网页文章或者文章的免费软件
  5. 【LeetCode04】最接近的三数之和
  6. 关于一个简易的Html5音乐播放器的制作
  7. 乔恩·斯凯特(Jon Skeet)-编程的查克·诺里斯(Chuck Norris)
  8. 2<<3是什么意思?
  9. CSS中#号、.号、*号详解
  10. HTML+CSS+前端项目