输入输出控制方式:程序查询与中断
适合读者软考中级备考同学阅读时间3.5分钟内容程序查询方式、中断方式的工作流程、优缺点对比、例题1. 为什么需要不同的I/O控制方式CPU与外部设备如键盘、磁盘、打印机的速度差异巨大。CPU需要一种机制来管理数据的输入输出。早期的程序查询方式简单但低效中断方式则让CPU能够在等待I/O时执行其他任务大大提高了系统吞吐量。软考中常考查这两种方式的工作原理、对比以及中断处理流程。2. 程序查询方式Programmed I/O2.1 工作原理CPU不断读取外设的状态寄存器检查设备是否准备好如数据是否已到达或设备是否空闲。如果设备未就绪CPU循环等待忙等。一旦设备就绪CPU执行数据传输指令从数据寄存器读或写。2.2 执行流程CPU发出I/O指令 → 读取状态寄存器 → 判断状态位 ↓未就绪 ↓就绪 循环等待 传输1个数据 → 继续下一个数据2.3 优点硬件简单不需要额外的中断控制器。易于理解和实现。2.4 缺点CPU忙等浪费大量时间效率极低。无法同时处理多个外设。2.5 适用场景简单嵌入式系统、对速度要求不高的场合。3. 中断方式Interrupt-Driven I/O3.1 工作原理CPU启动外设后继续执行其他程序不等待。当外设准备好数据或传输完成时通过**中断请求线IRQ**向CPU发送信号。CPU在每条指令执行结束后检查中断请求。若有请求则暂停当前程序保存现场跳转到**中断服务程序ISR**处理数据。处理完成后恢复现场继续执行原来的程序。3.2 中断处理流程设备发出中断请求。CPU完成当前指令后响应中断。保护断点当前程序计数器PC和现场寄存器内容。识别中断源找到对应的中断服务程序入口。执行中断服务程序读取设备数据或发送数据。恢复现场和断点。返回被中断的程序继续执行。3.3 优点CPU与外设可并行工作效率高。支持多个外设同时工作通过中断优先级和中断控制器。3.4 缺点硬件复杂需要中断控制器、中断向量表等。中断响应和现场保护恢复需要额外时间开销。3.5 适用场景几乎所有现代计算机系统键盘、鼠标、磁盘等。4. 程序查询 vs 中断对比表对比项程序查询中断方式CPU是否等待忙等一直检查状态不等待继续执行其他程序硬件复杂度低较高CPU利用率低高响应速度最快无切换开销有中断响应延迟多设备支持困难轮流查询容易中断控制器管理数据块传输不适合仍需CPU逐字传输除非配合DMA典型应用简单单片机现代操作系统注意中断方式虽然避免了忙等但每个数据字的传输仍由CPU执行。若需要传输大量数据如磁盘块通常使用DMA直接存储器访问方式。5. 经典例题题目1以下关于程序查询方式的描述正确的是 。A. CPU在等待I/O时可以执行其他任务B. 硬件复杂需要中断控制器C. CPU通过不断检查外设状态来判断是否就绪D. 适合大量数据传输答案CA错误程序查询是忙等B错误那是中断的特点D错误程序查询效率低不适合大量数据题目2在中断方式中CPU响应中断请求后首先要做的是 。A. 执行中断服务程序B. 保护断点和现场C. 关闭中断D. 读取设备数据答案B先保护现场才能安全执行服务程序题目3判断采用中断方式时CPU与外设可以并行工作因此中断处理没有时间开销。 答案错误中断响应、现场保护恢复都有开销题目4场景分析某系统需要频繁从高速数据采集卡读取单个数据并要求CPU尽可能少地占用。应该选择哪种I/O控制方式A. 程序查询B. 中断C. DMAD. 无条件传送解析高频单数据、希望减少CPU占用 → 中断方式DMA更适合块传输。答案B6. 记忆口诀程序查询忙等待状态检查循环来。中断方式不等待设备就绪信号抬。保护现场再服务效率提高并行快。7. 给备考同学的一句话程序查询与中断是I/O控制的基础。考试中常考程序查询特点忙等、简单、效率低。中断特点并行、有保护现场、硬件复杂。中断处理流程顺序响应 → 保护断点/现场 → 识别源 → 执行ISR → 恢复 → 返回。理解“忙等”与“并行”的区别选择题就能快速判断。本专栏日更2篇点击头像 → 专栏《软考中级高频考点》订阅#软考中级 #软件设计师 #程序查询 #中断 #I/O控制方式 #计算机系统知识