DMA传送操作流程DMA控制器向CPU 发出使用总线的请求 CPU发出响应信号,将 总线控制权转让给DMA 由数据总线传送一个字节 地址寄存器增1 字节计数器减1 字节计数器=0? 是 DMA控制器撤消总线请求信号 DMA传送结束 返回
DMA控制器向CPU 发出使用总线的请求 CPU发出响应信号,将 总线控制权转让给DMA 由数据总线传送一个字节 地址寄存器增1 字节计数器减1 DMA控制器撤消总线请求信号 DMA传送结束 字节计数器=0? 是 否 DMA传送操作流程 返回
52.1输入/输出指令 两条I/O的指令:IN、OUT 可传送字节或字数据,并且可以对端口直接寻址或间接寻址。 (1)输入指令 指令格式: IN ACC,PORT (ACC)←(PORT) IN ACC. DX (ACC)←((DX)) ACC代表AL或AX寄存器,PORT是端口地址。 例:从n端口读一个字节数据,从n+1和n端口读一个字数据 IN AL.n (AL)←(n) IN AX. n ;(Ax)←(n+1,n) 例:从DX所指的379H端口读一个字节数据(间接端口寻址): MOV DX. 379H AL. dX 2)输出指令 指令格式: OUT PORT,ACC;(PORT)←(ACC) oUT DX. ACC ((DX))←(ACC)
5.2.1 输入/输出指令 两条I/O的指令:IN、OUT 可传送字节或字数据,并且可以对端口直接寻址或间接寻址。 (1)输入指令 指令格式:IN ACC,PORT ;(ACC) ←(PORT) IN ACC,DX ;(ACC) ←((DX)) ACC代表AL或AX寄存器,PORT是端口地址。 例: 从n端口读一个字节数据,从n+1和n端口读一个字数据: IN AL,n ; (AL) ← (n) IN AX,n ; (AX ) ← ( n+1,n) 例: 从DX所指的379H端口读一个字节数据(间接端口寻址): MOV DX,379H IN AL,DX (2)输出指令 指令格式: OUT PORT,ACC ;(PORT)←(ACC) OUT DX,ACC ;( (DX) )←(ACC)
例:将AL寄存器的字节数据传送到DX所指的378H端口 MOV DX. 378H OUT DX AL ;((DⅩ))←(AL) 如果端口地址≤255,可用直接端口寻址或间接端口寻址; 如果端口地址>25,用间接端口寻址(端口地址存放DⅩ中)。 判断下面指令的合法性: in AL. 378H x MOV DX. 378H IN AL. DX IN BL: 60H out 378H. CH X 例:检测设备是否出错。 IN AL. 27H 设某设备的状态端口为27H TEST AL. 00000100B 错误状态位:D2=0,设备无错 JNZ ERR D2=1,设备出错 ERR
例: 将AL寄存器的字节数据传送到DX所指的378H端口: MOV DX,378H OUT DX,AL ; ((DX))←(AL) 如果端口地址 255, 可用直接端口寻址或间接端口寻址; 如果端口地址 >255, 用间接端口寻址(端口地址存放DX中)。 判断下面指令的合法性: IN AL,378H IN BL,60H OUT 378H,CH 例:检测设备是否出错。 设某设备的状态端口为27H 错误状态位:D2=0,设备无错 D2=1,设备出错 IN AL, 27H TEST AL,00000100B JNZ ERR ERR: MOV DX,378H IN AL,DX
52.2直接控制的IO程序设计 设计方法包括:0条件传送(查询传送) 2无条件传送 522.1条件传送IO程序设计 CPU需要不断地访问、查询外设状态,直到确认外设准 备就绪后,才能进行输入/输出。 例5-(p137)打印机查询输出子程序。 5222无条件传送IO程序设计 CPU不需要查询外设状态,直接与外设进行数据传输。 声音是一种有效的人机通讯方式,以PC机发声程序设计为例, 介绍无条件传送I/O程序设计方法。 (1)BMPC机发声系统工作原理 系统的定时器计数器8253或8254提供音频信号,通过可编 程并行接口芯片8255的6H端口控制驱动电路,使扬声器发声。 发声系统工作原理如教材(pl37)图52所示
例5-1(p137) 打印机查询输出子程序。 5.2.2.2 无条件传送I/O程序设计 CPU不需要查询外设状态,直接与外设进行数据传输。 声音是一种有效的人机通讯方式,以PC机发声程序设计为例, 介绍无条件传送I/O程序设计方法。 (1)IBM PC机发声系统工作原理 系统的定时器/计数器8253或8254提供音频信号,通过可编 程并行接口芯片8255的61H端口控制驱动电路,使扬声器发声。 发声系统工作原理如教材 (p137) 图5.2所示。 5.2.2.1 条件传送I/O程序设计 CPU需要不断地访问、查询外设状态,直到确认外设准 备就绪后,才能进行输入/输出。 5.2.2 直接控制的I/O程序设计 设计方法包括: 条件传送(查询传送) 无条件传送
ROM BIOS:基本输入/输出系统( Basic Input/ Output System) 驻留在系统主板的ROM中,提供了系统加电、引导装入、 主要的IO接口控制以及最基本的硬件和软件接口 调用BIOS功能—称为BIOS中断调用,调用方法与DOS系 统功能类似。例如,键盘输入一个字符: MOV AH,0 INT 16H 输入/输出接口 用户程序 DOS系统 功能调用 BIOS中断调用 硬件/外部设备 返回
用户程序 DOS系统 功能调用 BIOS中断调用 硬件/外部设备 输入/输出接口 ROM BIOS: 基本输入/输出系统(Basic Input /Output System) 驻留在系统主板的ROM中,提供了系统加电、引导装入、 主要的I/O接口控制以及最基本的硬件和软件接口。 调用BIOS功能——称为BIOS 中断调用,调用方法与DOS系 统功能类似。 例如,键盘输入一个字符: MOV AH,0 INT 16H 返回