Files
Operating-System/8086/Exam/第6章 输入输出.md
2026-06-29 21:12:21 +08:00

24 KiB
Raw Permalink Blame History

第6章 输入输出 — 期末复习总结


一、详细内容分析

6.1 输入输出与接口概述

6.1.1 接口与端口

  • 输入输出I/OCPU计算机主机与外部设备之间的信息交换。
  • 输入输出技术CPU 与外部设备之间的连接与信息交换技术。
  • 接口InterfaceCPU 与外部设备之间的硬件连接逻辑及相应的控制软件。
  • 接口技术:完成 CPU 与外部设备之间连接及信息交换有关的软、硬件技术方法。
  • 端口Port:接口电路中那些完成信息传送、可由程序寻址并进行读写操作的逻辑单元(往往是寄存器)。
  • 接口与端口不同:接口是物理/逻辑的整体,端口是接口内可寻址的寄存器单元
  • 同一个接口中通常包含三类端口:数据端口、状态端口、控制端口。

为什么要使用接口4 个原因)

  1. 外设种类繁多,与 CPU 不能直接互联及信息交互;
  2. 外部设备工作速度变化范围大,与 CPU 之间不匹配;
  3. 外设信号类型不同(数字、模拟等),与 CPU 使用的数据类型不同;
  4. 外设信息格式复杂(并行、串行等),与 CPU 使用的数据格式不一致。

6.1.2 接口的功能

  1. 地址译码或设备选择:接口进行地址译码,产生设备选择信号,使微处理器与指定外设交换信息。
  2. 数据缓冲和锁存:数据总线是公共双向总线,所有设备分时复用,只允许被选中的设备在读/写周期内占用。
  3. 信息格式与电平的转换:转换外设与 CPU 之间在格式、信号类型、电平范围上的差异。
  4. 数据传送的协调控制:协调 CPU 与外设的传输通路逻辑及时间关系。

6.1.3 接口的一般编程结构

I/O 接口的编程结构(即“从编程角度看到的接口”)由三类寄存器构成:

端口类型 作用
数据端口 存储输入/输出数据的寄存器
状态端口 存储设备或接口状态寄存器
控制端口 存放设备或接口控制信号的寄存器

接口与 CPU 的连接信号

  • 数据线:传输对各端口访问的信息;
  • 地址线:对接口/端口寻址;
  • 控制线:对接口/端口进行读写等控制。

接口与外设的连接信号

  • 数据线:传输数字量、模拟量、开关量;
  • 状态线:传输外设的状态信号;
  • 控制线:传输控制外设的令信号。

6.2 I/O 端口编址方式(标准知识补充)

8086/8088 CPU 采用 独立编址I/O 独立编址 / 端口编址) 方式:

  • I/O 地址空间大小8086 提供 16 位 I/O 地址,共 64K65536个 8 位端口,可组成 32K 个 16 位端口。
  • 地址范围:0000H ~ FFFFH
  • 使用专门的 I/O 指令 IN/OUT 与外设通信,与访问存储器的指令 MOV 等不通用。
  • 引脚 M/IO(在 8088 上为 M/IO)区分访问对象:=1 访问存储器,=0 访问 I/O 端口。

IN 指令格式

形式 语法 含义
直接端口寻址 IN AL, nIN AX, n 从端口 n 读 8/16 位数据
间接端口寻址 IN AL, DXIN AX, DX 从 DX 所指端口读 8/16 位数据

OUT 指令格式

形式 语法 含义
直接端口寻址 OUT n, ALOUT n, AX 将 AL/AX 写入端口 n
间接端口寻址 OUT DX, ALOUT DX, AX 将 AL/AX 写入 DX 所指端口

注:直接端口寻址时 n 为 8 位立即数,范围 0255DX 间接寻址时范围为 065535。

两种编址方式对比

项目 独立编址I/O 映射 / Port-mapped I/O 统一编址(内存映射 / Memory-mapped I/O
地址空间 I/O 端口与存储器各自独立编址 I/O 端口占用存储器地址空间的一部分
访问指令 必须使用专用 IN/OUT 指令 可使用全部访存指令MOV 等)
优点 不占用存储器地址空间I/O 程序与用户程序清晰分开;译码简单、速度快 寻址灵活;可用丰富指令;总线结构统一
缺点 需要专用 I/O 引脚与控制信号;指令少、功能弱 占用存储器地址空间译码复杂I/O 操作可能影响存储层次
典型代表 80x868086/8088、MCS-51 6800/68000、MIPS、ARM部分

6.3 输入输出控制方式(四种基本方式)

课件明确给出 四种基本控制方式

  1. 程序查询方式Polled I/O
  2. 程序中断方式Interrupt I/O
  3. DMA 方式(直接存储器存取)
  4. I/O 处理机方式IOPI/O Processor

6.3.1 程序查询方式

程序查询方式又分为 无条件传送方式条件(查询)传送方式

1无条件传送方式

  • 程序需要通过接口进行输入/输出时,直接使用 IN/OUT 指令访问端口,无需查询外设状态。
  • 适用始终处于就绪状态的外设如开关、LED、简单机械
  • 示例:
    MOV  AL, 12H       ; 准备数据 12H
    OUT  80H, AL       ; AL 内容输出到端口 80H
    
  • 端口 80H 中输出锁存器和输入缓冲器共用地址,由 RD/WR 信号区分访问哪个寄存器。

2查询输入传送方式

文字描述工作流程:

  1. CPU 读状态端口(地址 E0H取出状态字D0 = 1 表示输入数据准备好);
  2. 测试状态位 D0若 D0 = 0未就绪继续返回步骤 1 循环查询;
  3. 若 D0 = 1就绪CPU 读数据端口(地址 E2H同时清除状态触发器输入锁存器空
  4. 处理读到的数据,返回步骤 1继续输入下一个数据。

典型查询输入程序段:

A1:  IN    AL, 0E0H     ; 取状态字(状态在 D0 位)
     TEST  AL, 01H      ; 测试状态位
     JZ    A1           ; D0=0 未准备好,继续查询
     IN    AL, 0E2H     ; 读输入数据
     ; ……               ; 数据处理
     JMP   A1           ; 返回继续查询,输入下一个数据

3查询输出传送方式

文字描述工作流程:

  1. CPU 写数据端口(地址 E4H输出数据并使状态触发器置 1设备“忙”
  2. CPU 读状态端口(地址 E4H取状态字
  3. 测试状态位 D0若 D0 = 1设备忙继续查询等待
  4. 外设取走数据后回送 ACK清状态触发器使 D0 = 0
  5. CPU 准备下一个数据,重复以上过程。

典型查询输出程序段:

     MOV   AL, 41H      ; 数据 41H 送 AL
     OUT   0E4H, AL     ; 数据写入数据锁存器,状态触发器置 1
A1:  IN    AL, 0E4H     ; 取状态字
     TEST  AL, 01H      ; 测试状态位
     JNZ   A1           ; D0=1 设备忙,继续查询
     MOV   AL, 42H      ; 下一个数据 42H 送 AL
     OUT   0E4H, AL     ; 下一个数据存入锁存器
     ; ……

程序查询方式特点

  • 适合外设速度慢、请求响应实时性要求不高、一次传输数据量不大、对 CPU 工作效率要求不高的场合;
  • CPU 与外设只能串行工作各外设之间也只能串行工作CPU 利用率低。

6.3.2 中断方式

基本思想:外设就绪时向 CPU 发中断请求 INTRCPU 响应后转去执行 ISR中断服务程序完成一次数据交换后返回原程序。

工作流程

  1. 初始化:设置外设及接口,使其在就绪时能向 CPU 发中断请求;准备 ISR含中断矢量表入口设置相关状态标志
  2. CPU 执行主程序(不等待外设就绪,可并行工作);
  3. 外设就绪时向 CPU 发中断请求INTR
  4. CPU 响应中断INTA 中断响应),保护现场,转入 ISR
  5. 在 ISR 中完成一次数据传送;
  6. 如已完成全部传送,则关闭该中断;否则恢复现场、返回主程序继续运行;
  7. 后续外设再次就绪,可再次触发中断。

优点CPU 与外设可并行工作,提高系统效率;适合外设速度较慢、请求随机性、响应实时性要求较高、一次传输数据量不大的场合。

6.3.3 DMA 方式

为何引入 DMA:中断方式仍需 CPU 执行 ISR保护断点、切换上下文来逐字节传送对于高速大量数据效率仍低。

DMA 操作DMA 控制器DMAC直接接管总线外设与存储器之间直接交换数据,无需 CPU 介入。

DMA 操作的三种基本方法

方法 含义 特点
CPU 停机方式 DMAC 发 HRQCPU 让出地址、数据、部分控制总线 DMAC 控制总线CPU 暂停
周期扩展 由 DMAC 发出请求给时钟电路,加宽 CPU 时钟周期 一次只能传送一个字节
周期挪用 利用 CPU 不访问内存的周期进行 DMA 操作 不打断 CPUCPU 与 DMA 并行

DMA 控制器基本功能6 项):

  1. 接收外设 DMA 请求,向 CPU 发总线请求 HRQ
  2. CPU 响应后HLDADMAC 接管总线控制权;
  3. 接管总线后向地址总线发送地址信号,并自动修改地址指针;
  4. 在 DMA 传送期间,发出存储器或 I/O 接口的读/写控制信号;
  5. 统计传送字节数,判断 DMA 传送是否结束;
  6. 传送结束时向 CPU 发结束信号,将总线控制权交还给 CPU。

DMA 传送的一般工作过程(以存储器 → 外设为例10 步):

  1. 初始化外设接口与 DMAC设置存储器起始地址、传送字节数等参数
  2. 外设就绪 → 接口向 DMAC 发 DMA 请求DREQ
  3. DMAC 向 CPU 发总线请求HRQ
  4. CPU 响应并发总线应答HLDACPU 让出总线;
  5. DMAC 向外设接口发 DMA 响应DACK
  6. DMAC 把要读取的存储单元地址送到地址线;
  7. DMAC 发读存储器信号MEMR
  8. 存储器把数据送上数据线;
  9. DMAC 发 I/O 写信号IOW将数据写入 I/O 接口;
  10. DMAC 自动修改地址、字节计数器,判断是否传送结束;结束时撤销 HRQCPU 收回总线。

适用场景:外设速度快、一次传输数据量大(磁盘、网卡、声卡等高速外设)。

6.3.4 I/O 处理机方式

  • 为使 CPU 完全摆脱 I/O 管理,引入了 I/O 处理机IOP 概念。
  • IOP 拥有自己的指令系统,可独立执行程序,承担全部 I/O 操作(如 Intel 8089配合 8086/8088 使用)。
  • IOP 与 CPU 程序并行执行,可独立形成外设所需控制命令与定时信号。

6.4 四种传送方式对比表(必背)

对比项 程序查询方式 程序中断方式 DMA 方式 I/O 处理机方式
数据传送控制者 CPU CPU DMAC IOP
CPU 是否介入 完全介入 每次传送介入 不介入 不介入
CPU 工作效率 最低(忙等) 较高(可并行) 最高 最高
数据传送单位 字(节) 字(节) 数据块 数据块/复杂 I/O
传送速度
适用场景 简单低速、外设始终就绪 中低速、随机请求 高速、大数据量 复杂系统、多外设
硬件代价 低(简单接口) 中(中断控制器) DMAC 最高IOP
并行性 CPU 与外设串行) CPU 与外设并行) CPU 仍工作) CPU/IOP 并行)

6.5 可编程中断控制器 8259A

6.5.1 8259A 的主要功能

  1. 每片管理 8 级优先权中断源,通过级联最多管理 64 级 优先权中断源;
  2. 每级中断可单独屏蔽(通过 IMR
  3. 向 CPU 提供可编程的中断类型码(对 8086~Pentium 即中断向量号);
  4. 有多种工作方式,可通过编程选择;
  5. 可与 8086~Pentium CPU 直接连接,不需外加硬件电路。

6.5.2 内部结构

  • IRRInterrupt Request Register保存 8 位中断请求信号;
  • ISRIn-Service Register保存正在被 CPU 处理的中断请求;
  • PRPriority Resolver优先级分辨器确定 IRR 中各位优先级,决定是否向 CPU 发 INT
  • IMRInterrupt Mask Register / OCW1中断屏蔽寄存器
  • 控制逻辑:发出 INT 与接收 INTA
  • 数据总线缓冲器、读/写逻辑、级联控制CAS0~CAS2SP/EN

优先级(默认)IR0 最高 → IR7 最低

响应过程(两个 INTA 负脉冲)

  • 第一个 INTAIRR 锁存失效ISR 对应位置 1IRR 中对应位清 0。
  • 第二个 INTA将 ICW2 内容送 D7~D0CPU 读取作为中断类型码;若 ICW4 的 AEOI = 1则 ISR 对应位自动清 0。

6.5.3 端口及读写控制

通过 CS、A0、RD、WR 组合区分读/写命令、读/写状态。

CS A0 RD WR 功能 标志位
0 0 1 0 数据总线 → ICW1 D4 = 1
0 0 1 0 数据总线 → OCW2 D4D3 = 00
0 0 1 0 数据总线 → OCW3 D4D3 = 01
0 1 1 0 → OCW1 / ICW2 / ICW3 / ICW4
0 0 0 1 数据总线 ← IRR OCW3RR=1,RIS=0
0 0 0 1 数据总线 ← ISR OCW3RR=1,RIS=1
0 0 0 1 数据总线 ← 查询字 查询方式
0 1 0 1 数据总线 ← IMR 直接读

A0 = 0 偶地址A0 = 1 奇地址。

6.5.4 8259A 的工作方式10 种)

序号 工作方式 含义
1 全嵌套方式 IR0 最高、IR7 最低的固定优先级ISR 置位期间屏蔽同/低级;如 IF 开放可响应高级中断
2 循环优先级方式 自动循环:被服务的中断源自动降为最低;特殊循环:由编程指定某一中断源为最低
3 特殊屏蔽方式 仅屏蔽本级,其他全部开放(无论高低级均可中断)
4 程序查询方式 CPU 发查询命令OCW3 中 P=18259A 回送查询字I + W2W1W0
5 中断结束方式 自动 EOIAEOI或命令 EOI普通 EOI / 特殊 SEOI
6 读 8259A 状态 读 IRROCW3RR=1,RIS=0/ ISRRR=1,RIS=1/ IMR直接读
7 中断请求触发方式 边沿触发LTIM=0/ 电平触发LTIM=1
8 缓冲器方式 8259A 与数据总线之间加驱动器SP/EN 作输出
9 特殊的全嵌套方式 用于多片级连,从片的高级中断仍可申请中断
10 多片级联方式 1 个主片至多带 8 个从片,扩展至 64 级

多片级联要点

  • 主/从由 ICW4 的 M/S 位(缓冲方式下)或 SP/EN 引脚(非缓冲方式下 SP=1 主SP=0 从)确定;
  • 主片的 CAS0~CAS2 输出被响应的从片编号,从片接收并比对。

6.5.5 8259A 的编程(命令字体系)

8259A 的命令字分两部分:

类别 数量 是否按序写入 用途
初始化命令字 ICW1~ICW4 4 按固定顺序写入 系统复位后设置基本工作方式
操作命令字 OCW1~OCW3 3 不按顺序 工作中可随时写入,动态控制

1初始化命令字 ICW1A0=0写入偶地址

D7 D6 D5 D4=1 D3=LTIM D2 D1=SNGL D0=IC4
× × × 1标志 1=电平触发 / 0=边沿触发 × 1=单片 / 0=级联 1=需 ICW4 / 0=不要

写入 ICW1 后 8259A 自动复位:清 IMR、ISRIRR 状态可读;优先级排队为 IR0 最高 IR7 最低;特殊屏蔽方式复位;自动 EOI 循环方式复位。

2ICW2A0=1 — 设置中断类型码

  • 高 5 位T7~T3由程序设定
  • 低 3 位D2D0由 8259A 按引入中断请求的引脚 IR0IR7 三位编码自动填入。

举例(课件原例):

  • ICW2 = 80H = 1000 0000B → IR3 的类型码 = 1000 0011B = 83H
  • 若要使 IR5 的类型码 = 95H则 ICW2 = 90H90H~97H 均可)。

3ICW3A0=1

  • 主片格式S0S7 表示 IR0IR7 是否接从片1=接0=未接);
  • 从片格式:高 5 位为 0低 3 位 ID2~ID0 表示该从片连到主片的哪条 IRx 上。

4ICW4A0=1

D7 D6 D5 D4 D3 D2 D1 D0
0 0 0 SFNM BUF M/S AEOI μPM
含义
SFNM 1=特殊全嵌套 / 0=全嵌套
BUF 1=缓冲方式 / 0=非缓冲
M/S 缓冲方式下1=主片 / 0=从片
AEOI 1=自动 EOI / 0=正常 EOI
μPM 1=8086~Pentium / 0=MCS-80/85

5OCW1A0=1 — 屏蔽字 M7M0 对应 IR7IR01=屏蔽0=允许)。

6OCW2A0=0 — 控制中断循环与结束命令,含 R、SL、EOI、L2~L0 等位。组合实现:

  • 正常 EOI001 00000+ L2-L0
  • 特殊 EOI011 + L2L1L0
  • 自动 EOI010 + L2L1L0 自动循环下);
  • 设置特殊循环最低优先级110 + L2L1L0等。

7OCW3A0=0 — 设置查询方式、特殊屏蔽方式、寄存器读取方式RR/RIS 用于读 IRR/ISRP 用于查询命令)。

ICW 写入顺序(图 6.5.3

  1. 写 ICW1设置是否级联、触发方式、是否使用 ICW4
  2. 写 ICW2设置中断类型码高 5 位);
  3. 若 ICW1 中 SNGL=0级联方式→ 写 ICW3主片/从片分别写入);
  4. 若 ICW1 中 IC4=1 → 写 ICW4特殊全嵌套/缓冲方式/自动结束/CPU 类型)。

6.6 DMA 控制器 8237A

6.6.1 8237A 主要功能

  1. 每片有 4 个独立 DMA 通道
  2. 每个通道的 DMA 请求可分别编程允许/禁止;
  3. 优先级两种:固定优先级DREQ0 最高DREQ3 最低)循环优先级
  4. 支持 3 种传送类型:DMA 读、DMA 写、DMA 校验
  5. 可编程改变 DMA 读/写周期;
  6. 4 种工作方式:单字节传送、数据块传送、请求传送、级联方式
  7. 多片级联可扩展通道数(主片 4 通道 + 从片扩展);
  8. DMA 结束方式两种:①字节计数器减 1 由 0 变 FFFFH②外界输入 EOP 负脉冲强制结束;
  9. DMA 启动方式两种:①外设 DREQ②软件编程内部启动。

6.6.2 内部组成

  • 缓冲器组A3A0、A7A4、D7~D0
  • 时序和控制逻辑(含 EOP、RESET、CS、READY、CLOCK、AEN、ADSTB、MEMR、MEMW、IOR、IOW
  • 优先权编码逻辑DREQ03、DACK03、HRQ、HLDA
  • 寄存器组:基地址寄存器、当前地址寄存器(各 16 位)、基字节计数器、当前字节计数器(各 16 位)、方式寄存器、命令寄存器、屏蔽寄存器、请求寄存器、状态寄存器、暂存寄存器;
  • 命令控制逻辑、先/后触发器(控制 8 位/16 位数据总线复用)。

6.6.3 端口地址分配(表 6.6.1 摘要)

每个通道占 2 个端口地址A3A0 的低 2 位选通道(第 0 通道对应 0000/0001依此类推低 3 位选寄存器(基地址/当前地址 vs 基字节数/当前字节数)。高 4 位A7A4由地址总线驱动。表后部为公共寄存器命令、状态、请求、屏蔽、方式、暂存、清先/后触发器、复位、四位屏蔽字等。

6.6.4 8237A 工作方式6 类)

(1) 主从模态

  • 主态方式DMAC 作为总线主控者(如同 CPU可对外设/存储器读写;
  • 从态方式CPU 是总线主控者DMAC 同普通 I/O 接口(被 CPU 通过端口读写)。

(2) 4 种传送方式

方式 含义
单字节传送 每次只传 1 个字节后释放总线,下一字节再 HRQ 重新申请
数据块传送 一次 DMA 请求完成整个数据块的全部传送结束自动交还总线TC 或 EOP 终止)
请求传送 类似数据块,但每传 1 个字节检测 DREQDREQ 无效停止,有效继续
级联方式 用于连接多个 8237A 扩展通道;从片 HRQ、HLDA → 主片某通道的 DREQ、DACK

(3) 3 种传送类型

  • DMA 读MEMR + IOW把存储器数据读入 I/O 设备;
  • DMA 写IOR + MEMW把 I/O 设备数据写入存储器;
  • DMA 校验:伪传输,地址仍产生但 MEMR/IOW/MEMW/IOR 全无效。

(4) 优先级编码

  • 固定优先级DREQ0 最高DREQ3 最低;
  • 循环优先级:被响应的通道降为最低,其下一级升为最高;
  • 8237A 不支持嵌套:一个通道请求被响应后,其它 3 个通道请求被禁止,优先级排队只在 DMA 响应前有效。

(5) 自动初始化方式

  • 通道完成数据块传送并产生 EOPTC 或外部)时,自动把基地址/基字节数的内容装入当前地址/当前字节计数器,使通道恢复初值,准备下一次 DMA。

(6) 存储器到存储器传送

  • 占用通道 0、10 通道作源地址1 通道作目的(地址与计数);
  • 0 通道用软件 DREQ 启动。

二、考点总结

高频考点

  • 【高频】I/O 端口两种编址方式对比(独立 vs 统一) —— 必考选择题/简答题
  • 【高频】四种数据传送方式对比(程序查询 / 中断 / DMA / IOP —— 选择题必考
  • 【高频】中断传送与 DMA 传送的区别:是否介入、传送单位、适用场合、硬件代价
  • 【高频】8259A:单片 8 级中断;级联可扩展至 64 级1 主 + 8 从);初始化命令字 ICW1~ICW4(按固定顺序写入);操作命令字 OCW1~OCW3(随时写入)
  • 【高频】8237A:单片 4 通道级联可扩展4 种传送方式3 种传送类型2 种优先级
  • 【高频】程序查询传送流程(无条件 / 条件输入 / 条件输出) —— 简答题

其他常考点

  • 接口与端口的区别:接口是整体,端口是接口内可寻址的寄存器
  • 接口的 4 大功能:地址译码、数据缓冲锁存、电平与格式转换、协调控制
  • DMA 控制器基本功能6 条):掌握送地址、计数、判断结束等
  • DMA 传送一般过程10 步)以存储器→外设为例DREQ/HRQ/HLDA/DACK/MEMR/IOW 信号流程
  • 8259A 内部结构 4 大件IRR、ISR、PR、控制逻辑+IMR、级联
  • 8259A 的两个 INTA 负脉冲 完成动作:置 ISR、清 IRR、送 ICW2 内容
  • 8259A 10 种工作方式 中需重点掌握的:全嵌套、特殊屏蔽、循环优先级、查询方式、中断结束、自动 EOI、级联
  • 8259A ICW2 中断类型码:高 5 位程序设定,低 3 位由 IRx 自动填入IR0IR7 → 000111
  • 8237A 工作方式 6 大类:主从模态、传送方式(单字节/数据块/请求/级联)、传送类型(读/写/校验)、优先级、自动初始化、存储器到存储器
  • CPU 三种 DMA 操作方法CPU 停机、周期扩展、周期挪用

常见题型

  • 选择 / 填空题

    • 四种传送方式对比(哪些 CPU 不介入、谁控制总线、传送单位、适用场景)
    • 8259A 单片多少级、级联最多多少级
    • 8237A 单片多少通道、级联方式如何连接
    • 8259A 初始化命令字的个数与写入顺序
    • OCW1 中断屏蔽字中 0/1 的含义
    • ICW2 中断类型码的高/低 3 位的来源
    • DMA 控制器三种操作方法的区别
    • 8237A 的 DREQ0~DREQ3 优先级高低(固定优先级时)
    • 程序查询方式中状态触发器 D0 位 0/1 的意义
  • 简答题 / 问答题

    • 简述 DMA 传送过程(外设 → 存储器 或 存储器 → 外设)
    • 简述中断传送过程(请求 → 响应 → ISR → 返回)
    • 简述 8259A 初始化的命令字顺序
    • 比较独立编址与统一编址的优缺点
    • 8259A 两个 INTA 负脉冲期间各完成什么动作
    • 8237A 单字节/数据块/请求三种传送方式的区别
    • 8259A 全嵌套方式与特殊屏蔽方式的区别
    • 解释查询输入/输出过程并画出流程
  • 分析 / 设计题

    • 给定外设(速度、数据量、响应要求),选择合适的传送方式并给出理由
    • 给定 8259A 级联结构,判断主/从、识别 ICW3 写法
    • 给定中断类型码基准值,求某 IRx 的类型码(或反求 ICW2
    • 写一个简单查询输入或查询输出的程序段
    • 设计 8259A 初始化程序段(含 ICW1、ICW2、ICW3、ICW4 与 OCW1
    • 设计一个 DMA 传送过程,给出初始化参数(基地址、字节数)

答题套路提示

  • 回答 8259A/DMA 类简答题时,先点明控制器特性(级数/通道数),再列出命令字/工作方式最后给出步骤或程序框架
  • 回答传送方式对比时,使用表格 4 列控制方式、CPU 介入、传送单位、适用场景),简洁明了。
  • 涉及“过程”类简答时,按时间顺序列出步骤,并在关键信号处标出(如 DREQ、HRQ、HLDA、INTA 等)。