程序控制方式

一、无条件传送方式

在数据传输时,不管外设的状态,直接进行信息传输,适用于一些开关量或数码管。

二、条件传输方式(查询方式)

在数据传输前先查询外设的状态,当外设准备好才传输,否者cpu继续查询,直到外设准备好进行数据的传输

条件传输方式的步骤
1、从I/O接口的状态端口读入状态信息;
2、检查状态字中的状态位,确定是否准备好;
3、若外设没有准备好重复1、2步,直到外设准备好;
4、外设准备好,cpu执行输入或输出指令,从I/O端口的数据端口读出或写入数据,同时将状态字复位;

中断控制方式

在查询方式中,cpu处于主动地位,cpu不断地读状态字检测状态位直到外设准备好,非常影响cpu的工作效率,中断控制方式的特点是改cpu的主动查询为被动响应,当外设准备就绪后向cpu发送中断请求,此时cpu暂停正在执行的程序转去该中断服务子程序,提升了cpu的工作效率;

中断控制方式的工作原理:当外设准备好数据向接口发送一个选通信号,从而使数据锁存在接口中,选通信号的上升沿使中断请求触发器置1,向8259发送一个中断请求信号,8259再向cpu申请中断,cpu响应中断后,通过INTA撤销中断请求触发器的中断请求。

DMA控制方式

在DMA控制方式下,外部设备利用专用的接口电路直接与存储器进行数据交换,而不经过cpu,省去了中断控制方式中一系列的断点压栈出栈操作,节省了时间。

DMA的工作原理:
1、外设发送DMA请求;
2、DMAC向cpu申请总线;(HOLD)
3、cpu完成当前总线周期后响应,释放总线控制权;
4、DMAC得到总线控制权,并发送DMA响应信号
5、由DMAC发出各种控制信号,控制外设与存储器之间的数据传送;
6、数据传送完成后,DMAC撤销HOLD信号
7、cpu释放HLDA信号,并重新控制总线。

cpu和接口之间数据传送控制方式相关推荐

  1. I/O设备和CPU之间数据传送控制方式

    常用的I/O设备和CPU之间数据传送控制方式有4种,分别为程序直接控制方式.中断控制方式.DMA方式和通道方式. 程序直接控制方式和中断控制方式都只适用于简单的.外设很少的计算机系统,因为程序直接控制 ...

  2. 计算机用什么方式 管理程序和数据,计算机与外设之间数据传送方式有几种?各有什么特点?...

    原标题:计算机与外设之间数据传送方式有几种?各有什么特点? 主要有四种方式. 1.无条件传送方式,最简单的传送方式,所配置的硬件和软件最少. 2.查询传送方式,CPU的利用受到影响,陷于等待和反复查询 ...

  3. 假定某计算机的cpu,假定某计算机字长16位,CPU内部结构如图5.1所示,CPU和存储器之间采用同步方式通信,按字编址。采_搜题易...

    假定某计算机字长16位,CPU内部结构如图5.1所示,CPU和存储器之间采用同步方式通信,按字编址.采用定长指令字格式,指令由两个字组成,第一个字指明操作码和寻址方式,第二个字包含立即数Imm16.若 ...

  4. CPU与外设之间的信息交换方式

    I/O接口组成:数据缓冲器,设备选择电路,命令寄存器和命令码器,设备状态标记,控制逻辑电路 I/O接口功能:设备选择,速度匹配,串行转换,电平转换,传送控制命令,反应设备状态 为了与CPU交换信息的方 ...

  5. CPU与外设交换数据的方式及其特点

    (1)程序传送方式:包括无条件传送和程序查询传送.无条件传送不查询外设状态,认为外设已经准备就绪,直接与外设传送数据.程序查询传送在执行输入输出前,要先查询接口中状态寄存器的状态.     (2)中断 ...

  6. 不同系统之间数据对接方式

    最近干活,任务就是对接多个系统,搜了一下,这个回答很全. 转自 公众号 EWIS线束设计 2022-10-10 09:36 https://mp.weixin.qq.com/s/eFg0nJArue0 ...

  7. java获取接口数据类型_java中调用第三方接口获取数据的方式

    //get请求方式 private String getInfo(Map params,String URL) { // 创建Httpclient对象 CloseableHttpClient http ...

  8. java 接受传感器的数据_java中调用第三方接口获取数据的方式

    //get请求方式 private String getInfo(Map params,String URL) { // 创建Httpclient对象 CloseableHttpClient http ...

  9. 计算机系统之间数据互连方式,平板如何连接电脑实现数据传输?平板连接电脑的图文方法...

    我们使用台式电脑办公,当想要把制作的文档传输到平板电脑里面,这样携带就非常方便了,特别对于经常出差的朋友来说,特别合适,那么平板如何连接电脑实现数据传输呢?下面,就随小编看看具体操作方法. 很多朋友想 ...

  10. [WiFi] ebtable实现wifi接口之间数据隔离

    ebtable指令说明 ebtables Usage: ebtables -[ADI] chain rule-specification [options] ebtables -P chain tar ...

最新文章

  1. python 运算符重载_零基础小白Python入门必看:面向对象之典型魔术方法
  2. matplotlib xticks 基于 旋转_数据可视化之 matplotlib 绘图篇
  3. ubuntu linux mac地址,Ubuntu下修改mac地址
  4. CSS仿艺龙首页鼠标移入图片放大
  5. 推荐系统--矩阵分解(4)
  6. Flume实战监听网络端口
  7. 成绩排序(信息学奥赛一本通-T1178)
  8. python情感分析预测模型_Python 使用 NLTK 实现简单情感分析--Twitter(推特)分析...
  9. bootstrap select下拉框模糊搜索和动态绑定数据解决方法
  10. php josnp_浅析php中jsonp的跨域实例
  11. visual studio 编译器在辨异 C/C++ 程序时的注意事项
  12. SEO优化之alt属性和title属性
  13. 清理垃圾文件属于计算机安全维护吗,垃圾文件清理,垃圾文件清理器
  14. Pro Android学习笔记(一五五) 传感器(5) 磁场传感器和方位(上)
  15. Linux系统访问Windows(本机)的Navicat数据库
  16. Github图片无法显示解决(Mac版)
  17. JAVA计算机毕业设计智能停车场管理系统Mybatis+源码+数据库+lw文档+系统+调试部署
  18. ANDROID 实现微信通讯录界面
  19. 怎么用python挣钱-利用业余时间怎么用python挣钱?
  20. java公众号上传素材及发送图文消息实现

热门文章

  1. 计算机主机重装主机过程,电脑怎么重装系统步骤 超简单的电脑重装系统教程...
  2. 图像坐标球面投影_C/C++ 图像处理(7)------图像の球面投影算法
  3. android获取路由器ip地址吗,查看路由器IP地址方法(管理后台地址)
  4. linux里case命令,Linux系统中的case命令怎么用
  5. 【单片机仿真】(四)寻址方式 — 寄存器寻址与直接寻址
  6. OPTEE:CA-TA会话的创建(二)
  7. Unity 路径点弧线运动
  8. c语言头文件下载大全,C语言头文件大全
  9. 中国私有云发展调查报告(2018年)
  10. 我是如何学习游戏引擎的?