输入输出接口 — 第11章 计算机组织与系统结构

课程:1A003 计算机组织与系统结构(第二部分) 教师:kj 来源:田浩然上传的资料/1A003 计算机组织与系统结构/第二部分/第11章 输入输出接口.ppt 文件大小:375.5 KB 状态:partial_extraction(图片型 PPT,二进制 UTF-16LE 扫描提取 569 段文本,核心内容完整)


本章概述

输入/输出(I/O)接口是计算机系统中主机与外部设备之间的连接桥梁。本章系统介绍 I/O 接口的基本概念、编址方式、三种 I/O 控制方式(程序查询、中断、DMA),并以 Intel 8237 DMA 控制器为典型芯片深入讲解 DMA 方式的硬件实现与编程方法,最后结合 PC/XT 机说明 I/O 系统的实际组织。

本章是计算机组成原理课程的核心章节之一,承接第10章微处理器内部结构,向下衔接第12章存储器接口、第13章中断系统、第14/15章并行/串行接口、第18章总线技术。


11.1 I/O 接口概述

11.1.1 为什么需要 I/O 接口

CPU 与外部设备之间不能直接连接,需要接口作为中间层,主要原因:

  1. 速度差异:CPU 速度远高于外设(键盘/鼠标/打印机等慢速设备)
  2. 数据格式差异:外设数据格式多种多样(串行/并行、模拟/数字、不同字长)
  3. 时序不匹配:外设工作时序与 CPU 时钟不同步
  4. 信息类型差异:数据信息、状态信息、控制信息需要区分传送
  5. 地址译码:多个外设需要地址选择机制
  6. 电平/功率转换:外设信号电平/功率与 CPU 总线可能不同

11.1.2 接口的基本功能

I/O 接口一般具备以下功能:

  • 地址译码与设备选择:识别 I/O 地址,选中特定外设
  • 数据缓冲与锁存:解决速度匹配问题(输入缓冲、输出锁存)
  • 信号转换:电平转换、串并转换、模数/数模转换
  • 信息交换:在 CPU 与外设之间传递数据、状态和控制信息
  • 中断管理:支持外设向 CPU 发中断请求
  • 可编程性:可通过软件设置接口工作方式、参数等

11.1.3 I/O 端口编址方式

I/O 接口中的寄存器称为端口(Port),每个端口有独立的地址。CPU 通过端口地址访问接口。有两种编址方式:

1. 存储器映射 I/O(Memory-Mapped I/O)

  • I/O 端口与存储器单元共用同一地址空间
  • I/O 端口被当作存储器单元来访问
  • 优点:指令丰富,所有访问存储器的指令都可用于 I/O(ADD、MOV 等)
  • 缺点:占用存储器地址空间,地址译码复杂
  • 代表:MC6800、6502、MC680x0 系列
例:MOV AL, DS:[3000H]   ; 读 3000H 地址的 I/O 端口(和读内存一样)
    ADD AL, DS:[3000H]   ; 直接对 I/O 端口内容做运算

2. 独立编址 I/O(I/O-Mapped I/O)

  • I/O 端口有独立的地址空间,与存储器地址空间分开
  • 使用专门的 I/O 指令(IN/OUT)访问端口
  • 优点:不占内存空间,地址线少,译码简单,程序可读性好
  • 缺点:I/O 指令功能有限,只有简单的传送指令
  • 代表:Intel 80x86 系列
例:IN  AL, 60H       ; 从 60H 端口读入 1 字节
    OUT 61H, AL      ; 向 61H 端口输出 1 字节

8086/8088 使用 A0A15 共 16 根地址线寻址 I/O 端口,可寻址 64K 个 8 位端口。实际 PC/XT 只用了低 10 位地址线(A0A9),即 1024 个端口地址(000H~3FFH)。

11.1.4 I/O 接口的分类

  • 按数据传送方式:并行接口、串行接口
  • 按功能通用性:通用接口(8255A 并行口、8251A 串行口)、专用接口(键盘控制器、磁盘控制器)
  • 按可编程性:可编程接口、不可编程接口
  • 按控制方式:程序查询式、中断驱动式、DMA 式

11.1.5 PC/XT 的 I/O 地址分配

PC/XT 机中 I/O 地址空间为 000H~3FFH(1024 个端口),主要芯片地址分配:

芯片/控制器端口地址范围说明
8237 DMA 控制器000H~00FH4 个通道的基址/基值/当前寄存器
8259A 中断控制器020H~03FH主片(PC/AT 有从片 0A0H~0BFH)
8253 定时/计数器040H~05FH3 个计数通道 + 控制字寄存器
8255A 并行接口060H~07FHA/B/C 三个端口 + 控制口
(保留)080H~09FH页面寄存器等
串口 COM13F8H~3FFH
串口 COM22F8H~2FFH
并口 LPT1378H~37FH
并口 LPT2278H~27FH
CGA 显示3D0H~3DFH
MDA/EGA 显示3B0H~3BFH
SDLC 同步通信380H~38FH

注意:这些地址中有部分重叠和可调整范围,实际 PC 机中通过地址译码电路分配。


11.2 I/O 控制方式

CPU 与外设之间的数据传送有三种基本控制方式:

方式一:程序查询方式(Programmed I/O)

CPU 主动不断查询外设状态,直到外设准备好才传送数据。

  • 特点:CPU 与外设串行工作,CPU 效率低
  • 优点:硬件简单,容易实现
  • 缺点:CPU 大量时间浪费在查询等待上
  • 适用:简单系统、低速设备

方式二:中断方式(Interrupt-driven I/O)

外设准备好后向 CPU 发中断请求,CPU 暂停当前程序,转去执行中断服务程序与外设交换数据,完成后返回继续原程序。

  • 特点:CPU 与外设并行工作,CPU 效率较高
  • 优点:实时响应,CPU 利用率比查询方式高
  • 缺点:每次中断需要保护现场/恢复现场,有额外开销
  • 适用:中低速设备、随机事件处理

详见第13章”中断系统”。

方式三:DMA 方式(Direct Memory Access)

直接存储器访问,由 DMA 控制器(DMAC)接管总线控制权,直接在内存与外设之间高速传送数据,不经过 CPU,传送过程中 CPU 可以继续执行其他工作。

  • 特点:数据传送由硬件直接完成,不占用 CPU 时间
  • 优点:速度极快,适合大批量数据传送
  • 缺点:硬件成本较高,控制复杂
  • 适用:高速外设(磁盘、高速采集卡、显卡等)与内存之间的批量数据传送

11.3 DMA 方式详解

11.3.1 DMA 的基本概念

DMA(Direct Memory Access,直接存储器访问)是一种完全由硬件执行 I/O 交换的工作方式。DMA 控制器(DMAC)从 CPU 接管总线控制权,直接在存储器和 I/O 设备之间进行数据传送,而不需要 CPU 干预。

DMA 方式的核心部件是 DMAC(DMA Controller),它具有以下能力:

  1. 能接收外设的 DMA 请求(DREQ)
  2. 能向 CPU 发总线请求(HOLD / BUSRQ)
  3. 能接收 CPU 的总线响应(HLDA / BUSAK)
  4. 能输出地址信号和存储器读写控制信号
  5. 能对传送字节数进行计数
  6. 传送结束后能向 CPU 发结束信号(EOP / TC)

11.3.2 DMA 传送的基本过程

一次 DMA 传送分为三个阶段:

阶段一:DMA 预处理(CPU 初始化 DMAC)

  • CPU 向 DMAC 写入:传送方向、内存首地址、传送字节数、通道选择等
  • CPU 向 I/O 设备发送启动命令

阶段二:DMA 传送(DMAC 控制总线)

  1. 外设准备好,向 DMAC 发 DREQ 请求
  2. DMAC 向 CPU 发 HOLD(总线请求),请求让出总线
  3. CPU 在当前总线周期结束后响应,发 HLDA(总线响应),让出总线控制权
  4. DMAC 接管总线,发地址信号和读/写控制信号
  5. 数据直接在存储器和外设之间传送
  6. 地址自动增量,字节数自动减量
  7. 重复直到字节计数器减为 0(传送完成)

阶段三:DMA 后处理

  • DMAC 撤销总线请求,释放总线
  • CPU 恢复总线控制权
  • 可选:DMAC 向 CPU 发中断,通知传送结束

11.3.3 DMA 传送方式

8237 有四种基本传送方式:

1. 单字节传送方式(Single Transfer Mode)

每次 DMA 请求只传送一个字节,传送后释放总线,交还 CPU 至少一个总线周期。

  • 特点:DMA 和 CPU 交替占用总线,CPU 响应速度较快
  • 适用:对 CPU 响应实时性要求较高的场合

2. 块传送方式(Block Transfer Mode)

一次 DMA 请求连续传送多个字节,直到整个数据块传送完才释放总线。

  • 特点:传送效率最高,但 CPU 被挂起时间长
  • 适用:高速大批量数据传送,CPU 实时性要求不高

3. 请求传送方式(Demand Transfer Mode)

只要 DREQ 有效就连续传送,DREQ 无效则暂停传送,DREQ 再次有效时继续。

  • 特点:外设准备好就传,没准备好就暂停,灵活
  • 适用:数据速率不稳定的外设(如磁盘,扇区间有间隙)

4. 级联方式(Cascade Mode)

多个 8237 芯片级联使用,扩展 DMA 通道数。

  • 主片的 DREQ 引脚连接从片的 HRQ 信号
  • 从片的 HLDA 连接主片的 DACK 信号
  • PC/AT 机就是两片 8237 级联(主片通道 03 + 从片 47)

11.3.4 DMA 操作类型

按数据传送方向,DMA 有以下操作类型:

操作类型方向控制信号
DMA 读(I/O → 存储器)外设读入内存MEMW + IOR
DMA 写(存储器 → I/O)内存写到外设MEMR + IOW
DMA 校验(伪传送)不实际传送,仅测试不产生读写信号
存储器到存储器内存单元之间传送MEMR + MEMW(需要两个总线周期)

DMA 校验(Pseudo Transfers / 伪传送):地址和字节数照常变化,但不产生读写控制信号,仅用于测试 DMA 控制器功能是否正常。

11.3.5 DMA 传送时序要点

  • 一个 DMA 传送周期通常包含 45 个时钟周期(S1S4,可能插入 SW 等待状态)
  • S1 状态:输出地址,更新高 8 位地址(需要 AEN 信号锁存)
  • S2 状态:输出 DACK 响应,发读命令
  • S3 状态:数据稳定
  • S4 状态:发写命令,完成一个字节传送
  • 快速 DMA(压缩时序):S3 和 S4 合并,数据读和写在 S4 同时完成(需要更快的存储器)

11.4 Intel 8237 DMA 控制器

11.4.1 8237 概述

Intel 8237 是经典的可编程 DMA 控制器芯片,主要特性:

  • 4 个独立的 DMA 通道(通道 0~3)
  • 4 种工作方式:单字节、块传送、请求传送、级联
  • 每个通道有独立的地址寄存器和字节数计数器(16 位)
  • 每个通道的 DMA 请求优先级可设置(固定优先级 / 循环优先级)
  • 5MHz 时钟,最高数据传输率 1.6MB/s
  • 每个通道一次最多传送 64KB(65536 字节)
  • 支持存储器到存储器传送(通道 0 和通道 1 配合)
  • 可级联扩展通道数
  • 40 引脚 DIP 封装

11.4.2 8237 引脚功能

8237 是 40 引脚芯片,按功能分组:

地址线:

  • A0~A3(双向):低 4 位地址,空闲时为输入(选择内部寄存器),DMA 时为输出
  • A4~A7(输出):高 4 位地址,DMA 传送时输出

数据线:

  • DB0~DB7(双向):8 位数据总线
    • 空闲状态:CPU 通过 DB 读写 8237 内部寄存器
    • DMA 状态:输出高 8 位地址(A8~A15),由 ADSTB 锁存到外部地址锁存器

控制线(I/O 接口侧):

  • DREQ0~DREQ3(输入):4 个通道的 DMA 请求信号,高电平有效
  • DACK0~DACK3(输出):4 个通道的 DMA 响应信号,低电平有效

控制线(CPU / 总线侧):

  • HRQ(输出):保持请求(总线请求),高电平有效,向 CPU 请求总线控制权
  • HLDA(输入):保持响应,高电平有效,CPU 让出总线的应答信号
  • EOP(双向):过程结束,低电平有效。输出时表示 TC(计数结束);输入时可由外部信号终止 DMA

读写控制:

  • IOR(双向):I/O 读,低电平有效
  • IOW(双向):I/O 写,低电平有效
  • MEMR(输出):存储器读,低电平有效
  • MEMW(输出):存储器写,低电平有效

其他:

  • CLK(输入):时钟输入,5MHz
  • RESET(输入):复位信号
  • CS(输入):片选信号
  • AEN(输出):地址允许,用于锁存高 8 位地址和禁止其他总线设备
  • ADSTB(输出):地址选通,将 DB0~DB7 上的高 8 位地址打入外部锁存器
  • READY(输入):准备好,用于插入等待状态(慢速存储器)

11.4.3 8237 内部结构与寄存器

8237 内部有 4 个通道,每个通道包含:

  • 基地址寄存器(16 位):保存 DMA 传送的起始地址,初始化时写入
  • 当前地址寄存器(16 位):当前正在传送的地址,每次传送后自动±1
  • 基字节数寄存器(16 位):保存要传送的总字节数,初始化时写入
  • 当前字节数寄存器(16 位):剩余要传送的字节数,每次传送后减 1,减到 0 时 TC 有效

基地址寄存器与当前地址寄存器共用同一个端口地址(写基地址时同时写入当前地址)。基字节数寄存器与当前字节数寄存器同理。

公共寄存器(4 个通道共享):

寄存器长度作用
命令寄存器8位设置 8237 整体工作方式
模式寄存器8位设置每个通道的工作方式
请求寄存器4位软件触发 DMA 请求
屏蔽寄存器4位允许/禁止各通道的 DREQ
状态寄存器8位反映各通道的 TC 状态和请求状态
暂存寄存器8位存储器到存储器传送时暂存数据
  • 此外还有:先后触发器(高/低字节触发器)

11.4.4 8237 寄存器详细说明

1. 命令寄存器(8 位,写)

位符号功能
D0MEMTOMEM存储器到存储器传送:0=禁止,1=允许
D1CH0ADDRHLD通道0地址保持:0=地址增量,1=地址保持不变
D2DMADISABLEDMA 控制器工作允许:0=允许工作,1=禁止
D3TIMING时序类型:0=正常时序,1=压缩时序
D4PRIORITY优先级:0=固定优先级(0>1>2>3),1=循环优先级
D5WRITEEXT写选通扩展:0=不扩展,1=扩展写信号
D6DREQPOLDREQ 极性:0=高电平有效,1=低电平有效
D7DACKPOLDACK 极性:0=低电平有效,1=高电平有效

2. 模式寄存器(8 位,写)

每个通道独立设置,通过 D1D0 位选择通道:

位符号功能
D1 D0—通道选择:00=通道0,01=通道1,10=通道2,11=通道3
D3 D2—传送类型:00=校验,01=写(内存→I/O),10=读(I/O→内存),11=无效
D4AUTOINIT自动初始化:0=禁止,1=允许(TC 后自动重装基地址和基字节数)
D5ADDRDIR地址方向:0=地址增量,1=地址减量
D7 D6MODE工作方式:01=单字节,10=块传送,00=请求传送,11=级联

3. 屏蔽寄存器

  • 单通道屏蔽字:D1D0 选通道,D2 置 1 置屏蔽
  • 四通道屏蔽字:D3D0 分别对应通道 30 的屏蔽位

4. 状态寄存器(读)

  • D0D3:通道 03 的 TC 状态(1=已到达计数终点)
  • D4D7:通道 03 的 DMA 请求状态(1=有请求)

5. 先后触发器(高/低字节触发器)

8237 的地址和字节数寄存器都是 16 位,但数据线只有 8 位,需要分两次读写:

  • 触发器=0:读写低字节
  • 触发器=1:读写高字节
  • 每次读写后触发器自动翻转
  • 可通过写 清先后触发器命令(端口 0CH / 0DH)使其回到低字节状态

6. 软件命令

8237 有几个特殊的软件命令,只需对特定端口执行写操作(写任意值)即可触发:

  • 主清除命令(Master Clear,端口 0DH):相当于 RESET,复位整个 8237
  • 清先后触发器(Clear First/Last Flip Flop,端口 0CH):使高/低字节触发器归零
  • 清屏蔽寄存器(端口 0EH):清除所有通道的屏蔽位

11.4.5 8237 的编程步骤

以 PC/XT 机 DMA 通道 1 从外设读入数据到内存为例(DMA 读操作):

步骤 1:输出主清除命令(或清先后触发器)

OUT 0DH, AL   ; 主清除(复位 8237)

步骤 2:写基地址和当前地址寄存器(分两次写,先低后高)

MOV AL, LOW_ADDR   ; 地址低 8 位
OUT 02H, AL        ; 通道 1 地址寄存器端口 = 02H
MOV AL, HIGH_ADDR  ; 地址高 8 位
OUT 02H, AL        ; 第二次写自动写高字节

步骤 3:写基字节数和当前字节数寄存器

MOV AL, LOW_COUNT  ; 字节数低 8 位
OUT 03H, AL        ; 通道 1 字节数寄存器端口 = 03H
MOV AL, HIGH_COUNT ; 字节数高 8 位
OUT 03H, AL        ; 注意:写入的是 N-1(实际传送 N 字节)

步骤 4:写模式寄存器

MOV AL, 01001001B  ; 通道1,单字节传送,DMA读,地址增量,不自动初始化
OUT 0BH, AL        ; 模式寄存器端口 = 0BH
;  二进制解析: D7D6=01(单字节) D5=0(增量) D4=0(无自动初始化)
;               D3D2=10(DMA读/I/O→内存) D1D0=01(通道1)

步骤 5:写屏蔽寄存器(清除通道 1 屏蔽,允许 DMA 请求)

MOV AL, 00000001B  ; 清除通道1屏蔽(D2=0 清除, D1D0=01 选通道1)
OUT 0AH, AL        ; 单通道屏蔽寄存器端口 = 0AH

步骤 6:写命令寄存器

MOV AL, 00000000B  ; 正常时序,固定优先级,DREQ高有效,DACK低有效
OUT 08H, AL        ; 命令寄存器端口 = 08H

完成后,通道 1 就处于等待 DREQ 触发状态。外设发来 DREQ1 请求时,自动开始 DMA 传送。

11.4.6 PC/XT 机中的 8237

PC/XT 机使用一片 8237A-5 DMA 控制器,4 个通道分配:

通道用途说明
CH0DRAM 刷新对 DRAM 进行再生(伪 DMA 读,只发地址不真正传送数据)
CH1用户可用保留给用户使用(同步通信等)
CH2软盘控制器软盘 DMA 数据传送
CH3硬盘控制器硬盘 DMA 数据传送

页面寄存器(74LS670)

8237 只能输出 16 位地址(A0A15),而 PC/XT 有 20 位地址总线(A0A19),高 4 位(A16~A19)由页面寄存器提供。

  • 页面寄存器是一组 4×4 的寄存器文件(74LS670)
  • 每个通道对应一个 4 位页面地址
  • DMA 传送时,页面地址 + 8237 输出的 16 位地址共同组成 20 位物理地址
  • 页面寄存器独立于 8237,需要单独编程写入
  • PC/XT 中页面寄存器端口地址为 87H(CH2)、83H(CH1)、82H(CH0)、8FH(CH3)等

8237 一次最多传送 64KB,且不能跨 64KB 页边界。如果需要跨页传送,必须在页面边界处重新设置页面寄存器。

11.4.7 DMA 编程完整示例(DMA-IN.ASM)

以下是汇编语言实现的 DMA 读操作示例(从 I/O 设备通过通道 2 读入数据到内存 6000H:0 起始的缓冲区):

DATA   SEGMENT
      IN_data DB 10 dup(20H),0DH,0AH,24H
DATA   ENDS
 
EXTRA  SEGMENT AT 6000H     ; 目标段地址 6000H
     BUF_data  DB 13 dup(?)  ; 13 字节缓冲区
EXTRA  ENDS
 
CODE SEGMENT
          ASSUME CS:CODE, DS:DATA, ES:EXTRA
 
START:
    MOV AX, DATA
    MOV DS, AX
    MOV AX, EXTRA
    MOV ES, AX
 
    ; 先把测试数据用 MOVSB 搬到目的缓冲区(仅作演示)
    LEA SI, IN_data
    LEA DI, BUF_data
    CLD               ; DF=0,地址增量
    MOV CX, 13
    REP MOVSB         ; 串传送
 
    MOV DS, AX
    OUT 0DH, AL       ; 主清除,复位 8237
 
    ; 设置页面寄存器(通道2,页面 06H → 物理地址 = 06H×16 + 偏移)
    ; OUT 83H, AL     ; 页面寄存器(实际页面地址由段地址决定)
    MOV AL, 08H
    OUT 83H, AL       ; 示例:设置高 4 位页面地址
 
    ; 设置通道2地址寄存器(偏移地址 0000H)
    MOV AL, 00H
    OUT 04H, AL       ; 低字节(通道2地址端口 04H)
    MOV AL, 00H
    OUT 04H, AL       ; 高字节
 
    ; 设置通道2字节数(传 9 字节,写 N-1 = 8 = 0008H)
    MOV AX, 9
    DEC AX            ; 字节数 = N-1 = 8
    OUT 05H, AL       ; 低字节(通道2字节数端口 05H)
    MOV AL, AH
    OUT 05H, AL       ; 高字节
 
    ; 设置模式寄存器:通道2,单字节,DMA读,地址增量,不自动初始化
    MOV AL, 55H       ; 0101 0101B
    OUT 0BH, AL       ; 模式寄存器端口 0BH
 
    ; 清除通道2屏蔽位,允许 DREQ2 请求
    MOV AL, 00H
    OUT 0AH, AL       ; 单通道屏蔽寄存器
 
DISPLAY:
    LEA DX, BUF_data
    MOV AH, 09H
    INT 21H           ; DOS 功能调用显示字符串
 
    MOV AH, 01H
    INT 16H           ; 检查键盘输入
    JZ  DISPLAY       ; 无按键循环等待
 
    MOV AH, 4CH
    INT 21H           ; DOS 退出
 
CODE ENDS
     END START

11.5 学习要点与知识关联

核心概念回顾

  1. I/O 接口的本质:在 CPU 和外设之间起”翻译”和”缓冲”作用的中间电路
  2. 两种编址方式:存储器映像(统一编址)vs 独立编址(专用 IN/OUT 指令),各自的优缺点
  3. 三种 I/O 控制方式:程序查询(最简单,CPU 效率最低)→ 中断(CPU 效率提升,有中断开销)→ DMA(最高效,硬件完成,适合批量高速)
  4. DMA 三大工作方式:单字节 / 块传送 / 请求传送(+级联方式)
  5. 8237 寄存器体系:地址+字节数各有基/当前两套,模式/命令/屏蔽/状态四大控制寄存器,高/低字节触发器
  6. PC/XT 中 8237 的特点:20 位地址需要页面寄存器补充,通道 0 用于 DRAM 刷新,不能跨 64KB 页

与其他章节的关联

  • 第5章:本章是计算机组成 I/O 子系统的具体化
  • 第7章 汇编语言:8237 编程用汇编指令实现
  • 第8章 指令系统:IN/OUT 指令是独立编址的基础
  • 第10章 微处理器:HOLD/HLDA 信号就是 DMA 的总线握手信号
  • 第12章 存储器接口:DMA 传送涉及存储器读写时序
  • 第13章 中断系统:DMA 结束常通过中断通知 CPU;中断方式与 DMA 方式互为补充
  • 第14章 并行接口 8255A:8255A 是典型的可编程 I/O 接口芯片(程序查询/中断方式)
  • 第15章 串行接口:串行通信的高速模式常配合 DMA
  • 第18章 总线技术:DMA 本质上是总线控制权的转移机制

常见考点

  1. I/O 接口的功能与编址方式对比(常考简答题)
  2. 三种 I/O 控制方式的对比与适用场景
  3. DMA 的工作原理与基本过程(画图题:DMA 时序图)
  4. 8237 的工作方式(单字节 / 块 / 请求 / 级联)
  5. 8237 寄存器功能与编程初始化(编程题:写出初始化 8237 某通道的程序片段)
  6. PC/XT 中 8237 的页面寄存器作用、通道分配、地址范围
  7. DMA 读 vs DMA 写的控制信号组合(MEMR/MEMW/IOR/IOW 的方向)

笔记状态:partial_extraction(图片型 PPT,二进制文本扫描提取核心内容 + 基于计算机组成原理标准知识体系补充完善。章节大纲和关键术语已通过文本提取确认,详细原理与编程方法基于 8237 标准技术手册与课程知识框架整理。)

计算机组成-第5章-计算机微型计算机的组成及工作过程 汇编语言的基本语法-第7章-计算机组织与系统结构 寻址方式与指令系统-第8章-计算机组织与系统结构 微处理器的内部组成及外部功能特性-第10章-计算机组织与系统结构