第5章输入输出和中断 源程序: MOV BX, OFFSET, BUFFER;置缓冲区偏移量 MOV CX, CHRTL;置输出字符计数器 BG: MOV AL,BX];取字符 MOV DX,378H;输出字符到控制器 OUT DX.AL MOV DX,379H;读打印机状态
第5章 输入输出和中断 源程序: ┆ MOV BX ,OFFSET, BUFFER;置缓冲区偏移量 MOV CX,CHRTL ;置输出字符计数器 BG: MOV AL,[BX];取字符 MOV DX,378H;输出字符到控制器 OUT DX,AL MOV DX,379H;读打印机状态
第5章输入输出和中断 WT: N ALDX TEST AL,80H;判‘忙’否? JZWT;忙,重查询 MOV DX,37AH;形成选通信号 MOV AL,0DH;令打印机打印字符 OUT DX.AL MOVALOCH OUT DX,AL INC BX;指向下一输出字符 LOOP BG
第5章 输入输出和中断 WT: IN AL,DX TEST AL,80H ;判‘忙’否? JZ WT ;忙,重查询 MOV DX,37AH ;形成选通信号 MOV AL,0DH ;令打印机打印字符 OUT DX,AL MOVAL,0CH OUT DX,AL INC BX ;指向下一输出字符 LOOP BG ┆
第5章输入输出和中断 2.中断方式 当外设需要与CPU进行数据交换时,由外 设向CPU发出中断请求,当外部设备完成 次输入或输出操作后,主动向CPU报告 (即中断请求),请求CPU为它服务。允 许CPU启动多个外设工作,即允许CPU与 多个外设同时工作
第5章 输入输出和中断 2.中断方式 当外设需要与CPU进行数据交换时,由外 设向CPU发出中断请求,当外部设备完成 一次输入或输出操作后,主动向CPU报告 (即中断请求),请求CPU为它服务。允 许CPU启动多个外设工作,即允许CPU与 多个外设同时工作
第5章输入输出和中断 3.直接存储器存取方式(DMA)方式 DMA方式,主要是利用DMA控制器来管理数 据的输入输出操作。如图5.5、5.6所示。由 DMA控制器向地址总线发出存储器地址信号, 并给出存储器读或写命令,就可以把存储器中 读出的数据送到外部设备或者把外部设备输出 的数据写入存储器中 DMA主要是利用程序实现对DMA控制器的初 始化(置控制字),然后由DMA控制器管理数 据传送
第5章 输入输出和中断 3.直接存储器存取方式(DMA)方式 DMA方式,主要是利用DMA控制器来管理数 据的输入输出操作。如图5.5、5.6所示。由 DMA控制器向地址总线发出存储器地址信号, 并给出存储器读或写命令,就可以把存储器中 读出的数据送到外部设备或者把外部设备输出 的数据写入存储器中。 DMA主要是利用程序实现对DMA控制器的初 始化(置控制字),然后由DMA控制器管理数 据传送
第5章输入输出和中断 DMA HOLD 存储器 外请求DMA 部设备 控制 P DMA 器 响应 HLDA 图55DMA控制器与CPU关系图
第5章 输入输出和中断 存 储 器 外 部 设 备 C P U DMA 请求 DMA 响应 HOLD HLDA DMA 控 制 器 图5.5 DMA控制器与CPU关系图