第六章 IO输入输出.ppt

第六章 IO输入输出

本章主要内容 为什么需要输入/输出接口? 速度匹配问题 信号类型匹配问题 数据传输格式一致问题 输入/输出接口概述 I/O接口的功能 数据缓冲功能 端口选择功能 信号交换功能 接收和执行CPU命令的功能 中断管理功能 可编程功能 I/O端口的编址方式 I/O端口的编址方式 端口地址是一种重要资源。 I/O接口数据传送的控制方式 三种I/O同步控制方式: 程序控制方式:无条件程序控制和程序查询 中断控制方式 直接存储器存取方式(DMA方式) 1.无条件程序控制(同步控制)方式 DATA1 SEGMENT AT 4000H BUFFER1 DW …… ; 已存放好1K个字数据 DATA1 ENDS DATA2 SEGMENT AT 5000H BUFFER2 DW 2048 DUP(?) ; 预留2K个字单元存放读入的数据 DATA2 ENDS CODE SEGMENT ASSUME CS:CODE , DS:DATA1, ES:DATA2 START: MOV AX, DATA1 MOV DS, AX MOV AX, DATA2 MOV ES, AX LEA SI, BUFFER1 ; SI指向第1个数据 LEA DI,BUFFER2 ; DI指向第1个存放接受数据的单元 CLD ; 地址增量方向 MOV CX, 1024 ; 发送数据总个数 MOV DX, OUTPUT ; 设OUTPUT为字输出端口地址 AGAIN1: LODSW ; 将DS:SI所指数据取出准备发送, 并修改SI值 OUT DX, AX LOOP AGAIN1 MOV CX, 2048 ; 接收数据总个数 MOV DX, INPUT ; 设INPUT为字输入端口地址 AGAIN2: IN AX, DX STOWS ; 将输入数据存在ES:DI所指单 元,并修改DI值 LOOP AGAIN2 MOV AH, 4CH ; 返回 INT 21H CODE ENDS END START 2. 程序查询输入/输出方式 程序查询输入方式 查询输入程序 程序查询输入方式 程序查询输入方式 CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DATA MOV DS,AX MOV BX,OFFSET BUFF;送缓冲区指针 MOV CX,60       ;送计数初值 OUT 0FCH,AL      ;启动设备 WAIT: IN AL,0FAH ;查询状态,若为0,则等待 TEST AL,01H JZ WAIT 程序查询输入方式 优先级问题 中断控制方式 中断源 能够引起中断的原因,或能够发出中断请求信号的外设。 8086/8088的中断系统 1. 中断源的分类 中断源可以分为软件中断和硬件中断。 ◆硬件中断由外部硬件产生,也称为外部中断。 ◆软件中断由CPU根据软件的某些指令或软件对标志寄存器某个标志位的设置产生,也称为内部中断。 2. 中断向量表 ◆中断服务程序的入口地址被称为中断向量。 ◆存放中断向量的表,位于内存空间的最低地址单元,长1KB。共可容纳256个中断向量(256×4=1024)。 8086的中断系统 内部中断—软中断 内部中断的类型 内部中断的特点 IBM PC/XT中断源的功能 中断源的识别 问题1:系统有多个中断请求, CPU如何识别中断源? 中断向量和中断向量表 中断处理过程 中断请求 中断请求 当外设需要CPU为其服务时,应

文档评论(0)

1亿VIP精品文档

相关文档