第10幸中断和输入/输出程设计 10.1.2端口地址 通过以上叙述可以看出,在进行ⅣO程序设计时,需要对端 口地址、控制及状态端口的各位含义有清楚的了解。 IBM PC机 的部分端口地址如表10-1所示。控制及状态端口各位的含义在讨 论具体外设时描述
第10章 中断和输入/输出程序设计 10.1.2 端口地址 通过以上叙述可以看出,在进行I/O程序设计时,需要对端 口地址、控制及状态端口的各位含义有清楚的了解。IBM PC机 的部分端口地址如表10-1所示。控制及状态端口各位的含义在讨 论具体外设时描述
第10幸中断和输入/输出程设计 表10-1端口地址对照表 端口地址 端口设备或接口芯片 00HOFH DMA控制器 OH-21H 中断控制器 40H~43H 时钟/定时器 60H~63H 可编程外围接口芯片 200~20FH 游戏适配器 2F8H-2FEH COM1 320H~32FH 硬盘控制器 378H~37AH 2号并行口(打印机适配器) 3B0H-3BFH 单色显示及1号并行口 3DOH-3DFH 彩色/图形适配器 3FOH-3F7H 软盘控制器 3F8H-3FEH COM2
第10章 中断和输入/输出程序设计 表10-1 端口地址对照表 端口地址 端口设备或接口芯片 00H~0FH DMA控制器 0H~21H 中断控制器 40H~43H 时钟/定时器 60H~63H 可编程外围接口芯片 200~20FH 游戏适配器 2F8H~2FEH COM1 320H~32FH 硬盘控制器 378H~37AH 2号并行口(打印机适配器) 3B0H~3BFH 单色显示及1号并行口 3D0H~3DFH 彩色/图形适配器 3F0H~3F7H 软盘控制器 3F8H~3FEH COM2
第10幸中断和输入/输出程设计 10.13CPU与外设之间的信息交换方式 CPU与外设通过硬件接口电路或控制器相连接,这些接口 或控制器中都有数量不等的端口,用作CPU与外设之间传送数 据及提供数据传送所需要的控制逻辑与信号。使用ⅠN、OUT指 令对这些端口进行操作,便可以实现CPU与外设的信息交换 概括起来,CPU与外设需要交换的信息有:数据信息、状态信 息以及控制信息。例如,当需要在打印机上打印一个字符(数据) 时,需要先检查打印机是否准备好(状态),若准备好则输出选 通命令(控制),以便打印
第10章 中断和输入/输出程序设计 10.1.3 CPU与外设之间的信息交换方式 CPU与外设通过硬件接口电路或控制器相连接,这些接口 或控制器中都有数量不等的端口,用作CPU与外设之间传送数 据及提供数据传送所需要的控制逻辑与信号。使用IN、OUT指 令对这些端口进行操作,便可以实现CPU与外设的信息交换。 概括起来,CPU与外设需要交换的信息有:数据信息、状态信 息以及控制信息。例如,当需要在打印机上打印一个字符(数据) 时,需要先检查打印机是否准备好(状态),若准备好则输出选 通命令(控制),以便打印
第10幸中断和输入/输出程设计 CPU与外设之间的信息交换通常有程序查询、中断传送、 DMA(直接存储器存取)、通道、ⅠO处理机管理等几种方式 CPU寻址外设有两种方式,一种是存储器对应输入输出方式, 另一种是端口寻址方式。其中,存储器对应输入/输出方式把 个外设作为一个存储单元对待,一次输入/输出操作就相当于 次存储器的读/写操作,这种方式虽然优点不少,但实际应用却 不多,因为它本身不直观,容易与正常的存储器读/写操作混淆, 同时还需要占用存储器的部分空间并给存储器地址分配带来不 便。CPU输入输出端口寻址方式设有专门的输入/输出指令, 并要求为外设接口分配端口地址。这种端口寻址方式为一个端 个地址,使用专门的输入/输出指令,使用方便,不易出错, 清楚直观。需要注意的是,端口寻址可以为直接方式寻址或间 接方式寻址。直接方式可以寻址0~255个端口地址。间接方式 通过Dⅹ寄存給出地址,可寻址64K个端口地玳
第10章 中断和输入/输出程序设计 CPU与外设之间的信息交换通常有程序查询、中断传送、 DMA(直接存储器存取)、通道、I/O处理机管理等几种方式。 CPU寻址外设有两种方式,一种是存储器对应输入/输出方式, 另一种是端口寻址方式。其中,存储器对应输入/输出方式把一 个外设作为一个存储单元对待,一次输入/输出操作就相当于一 次存储器的读/写操作,这种方式虽然优点不少,但实际应用却 不多,因为它本身不直观,容易与正常的存储器读/写操作混淆, 同时还需要占用存储器的部分空间并给存储器地址分配带来不 便。CPU输入/输出端口寻址方式设有专门的输入/输出指令, 并要求为外设接口分配端口地址。这种端口寻址方式为一个端 口一个地址,使用专门的输入/输出指令,使用方便,不易出错, 清楚直观。需要注意的是,端口寻址可以为直接方式寻址或间 接方式寻址。直接方式可以寻址0~255个端口地址。间接方式 通过DX寄存器给出端口地址,可寻址64K个端口地址
第10幸中断和输入/输出程设计 1.数据信息 数据通常为8位或16位,可分为3种基本类型:数字量、模 拟量和开关量。一般地,由键盘、光电输入机等提供的二进制 形式的信息为数字量数据。电机的启停、开关的开合等可用两 个状态表示的量,即用一位二进制数表示,这样的量称为开关 量;由传感器等提供的信号往往是模拟量,它需先经模/数(AD) 转换后再输入到计算机中。例如,温度、电压等信号。CPU与 外设进行数据传送的方式有串行传送(一位一位传送)和并行传送 (n位同时传送)两种方式,但都要经过IO指令实现。串行方式比 较经济,但速度受限,而并行方式则速度较快,成本较高
第10章 中断和输入/输出程序设计 1.数据信息 数据通常为8位或16位,可分为3种基本类型:数字量、模 拟量和开关量。一般地,由键盘、光电输入机等提供的二进制 形式的信息为数字量数据。电机的启停、开关的开合等可用两 个状态表示的量,即用一位二进制数表示,这样的量称为开关 量;由传感器等提供的信号往往是模拟量,它需先经模/数(A/D) 转换后再输入到计算机中。例如,温度、电压等信号。CPU与 外设进行数据传送的方式有串行传送(一位一位传送)和并行传送 (n位同时传送)两种方式,但都要经过I/O指令实现。串行方式比 较经济,但速度受限,而并行方式则速度较快,成本较高