《计算机“卓越工程师计划”应用型教材:微机原理与接口技术》以Intel 8086/8088微处理器为基础,兼顾高性能80x86以及Pentium系列微处理器的介绍,主要讲述微机原理、汇编语言和接口技术。全书共10章,包括计算机基础知识、8086/8088结构与总线技术、8086/8088指令系统、汇编语言程序设计、存储器组织、输入/输出技术、中断系统与定时/计数技术、串行通信及其接口电路、模拟接口技术以及高档微处理器简介。每章都有适量的例题与习题,帮助读者巩固和应用学到的知识。
《计算机“卓越工程师计划”应用型教材:微机原理与接口技术》可作为计算机科学与技术、软件工程、电子信息工程、电气工程及其自动化、通信与电子类专业的本专科学生的教材,也可作为相关领域工程技术人员的参考书。
本书编写的主要指导思想是正确地处理先进性和教学适用性的关系,尽量反映微机原理与接口技术发展的最新技术,又重视遵循教学规律,更好地体现“基础性、系统性、实用性和先进性”的统一;努力体现素质教育与创新教育的思想,注重理论与实践的结合,原理、技术与应用的结合,硬件与软件的结合,将科研经验和应用实例相融合,培养和开发学生的创新思维和分析解决实际问题的能力。本书特别注意阐明基本概念、方法以及使用中的注意事项,内容简明扼要、深入浅出,融入了作者多年教学与工程实践的经验与体会。全书共10章,包括计算机基础知识、8086/8088微处理器结构与总线技术、8086/8088微处理器指令系统、汇编语言程序设计、存储器组织、输入/输出技术、中断系统与定时/计数技术、串行通信及其接口电路、模拟接口技术以及高档微处理器简介。每章都有适量的例题与习题,帮助读者巩固和应用学到的知识。
微机原理与接口技术的教材很多,但其内容处于两极分化的状态,要么以8086/8088CPU及其相应的接口芯片为基础,其内容显得陈旧;要么以80386/Pentium及其主板芯片组为基础,内容新颖但学生难以理解。本教材以Intel8086/8088为基础,便于学生理解,兼顾高性能微处理器80x86以及Pentuim系列的介绍。虽然Intel公司的微处理器从早期的8086、80x86到后来的Pentium系列以及现在的Pentium4和多核技术,无论其制造工艺还是技术和性能,都有了极大的改进和提高,但从编程的角度看,它们仍然是一个系列,完全兼容。应用编程的寄存器结构只有字长之分,而无本质区别,指令系统从8086到Pentium系列,除部分保护模式下扩展指令外,80%以上是完全相同的,在应用程序中所用到的绝大多数指令依然是基本指令集中的指令,即8086指令集。虽然微机的存储器容量越来越大,但存储器的基本工作原理和构成没有变化;虽然微机连接的外部设备越来越丰富,但中断工作的原理和输入/输出控制方法没有变化;虽然随着大规模集成电路技术的发展,主板上曾经大量独立的接口芯片都已被集成到现在的主板芯片组中,但并行接口8255、中断控制器8259A、定时/计数器8253、串行接口8250和模拟接口等可编程芯片的作用依然存在。总之,虽然微型计算机技术有了巨大的发展,但其基本工作原理是相同的。本教材注重吸取微机发展的最新技术和最新知识,并将其融于全书之中,从不同机型之间的共性和最基本的概念入手,引导学生逐步掌握微机从硬件组成到软件编程的基本知识,逐步掌握微机的组成原理、工作原理、汇编语言的编程方法和接口技术,并为学生掌握和应用高档微处理器或单片机以及微机发展的新技术打下基础。
本书由李永忠教授主编,李少梅、张心歌等参编。甘肃广播电视大学李少梅完成了第6、9章和第10章部分内容的编写,约14.2万字;西北民族大学张心歌完成了第5、6章和第10章部分内容的编写,约12.8万字;西北民族大学杨成慧完成了第3、8章部分内容的编写,约12.5万字;金陵科技学院张利峰完成了第3、4章部分内容的编写,约5.3万字;江苏科技大学潘磊、庞林斌参编了其余章节的部分内容,分别为5.2万字和5.1万字。全书由李永忠负责全部内容的组织编写、修改和最终定稿以及统稿工作。
本书在编写和出版过程中得到了学校、学院领导的指导与帮助,许多老师为本书提出了许多宝贵意见,在此一并表示衷心感谢。本书在编写过程中参考了有关作者的书籍,在此谨表谢意。
由于计算机技术发展迅速,加之作者水平有限,书中难免会有不足之处,敬请广大读者、同行和专家批评指正。
编者
2013年1月于镇江
第1章 计算机基础知识
1.1 计算机的发展
1.1.1 计算机概述
1.1.2 微型计算机的发展
1.1.3 微型计算机的特点
1.2 微型计算机系统结构
1.2.1 微型计算机的硬件系统
1.2.2 微型计算机的软件系统
1.2.3 微型计算机的性能指标
1.2.4 微型计算机发展的新技术
1.3 计算机中数值数据的表示
1.3.1 进位计数制及其相互转换
1.3.2 计算机中数的表示
1.4 计算机运算基础
1.4.1 算术运算
1.4.2 逻辑运算
1.5 计算机中常用编码
1.5.1 ASCII码
1.5.2 BCD码及其调整
1.5.3 汉字编码
习题1
第2章 8086/8088微处理器的结构与总线技术
2.1 8086/8088微处理器的内部结构及其寄存器
2.1.1 8086/8088微处理器的内部结构
2.1.2 8086/8088微处理器的内部寄存器
2.2 8086/8088微处理器的外部结构
2.2.1 8086/8088微处理器的工作模式与引脚功能
2.2.2 8086/8088微处理器的总线周期
2.2.3 8086/8088微处理器的总线接口器件
2.3 8086/8088微处理器的存储器结构
2.3.1 8086/8088系统存储器组织
2.3.2 最小与最大模式总线接口
2.4 微机系统中的总线结构
2.4.1 总线的分类与总线标准
2.4.2 微机总线的性能指标
2.4.3 PC系列微机总线
习题2
第3章 8086/8088微处理器指令系统
3.1 指令与指令系统概述
3.2 8086/8088微处理器的寻址方式
3.2.1 立即数寻址方式
3.2.2 寄存器寻址方式
3.2.3 直接寻址方式
3.2.4 寄存器间接寻址方式
3.2.5 寄存器相对寻址方式
3.2.6 基址变址寻址方式
3.2.7 相对基址变址寻址方式
3.2.8 转移类指令的寻址方式
3.2.9 I/O端口寻址方式
3.3 8086/8088微处理器指令系统
3.3.1 数据传送指令
3.3.2 算术运算指令
3.3.3 位处理指令
3.3.4 串操作指令
3.3.5 控制转移指令
3.3.6 处理器控制指令
习题3
第4章 汇编语言程序设计
4.1 汇编语言基本概念
4.1.1 机器语言、汇编语言和汇编程序
4.1.2 汇编语言程序的开发过程
4.1.3 汇编语言程序的上机流程
4.2 汇编语言语句与源程序格式
4.2.1 汇编语言语句格式
4.2.2 汇编语言源程序结构
4.3 伪指令
4.3.1 段定义伪指令
4.3.2 数据定义及存储器分配伪指令
4.3.3 数据定义伪指令中操作数的表达形式
4.3.4 符号定义伪指令
4.3.5 过程定义伪指令
4.3.6 程序开始和结束伪指令
4.3.7 定位伪指令
4.3.8 段定义的简化
4.3.9 宏指令
4.4 典型汇编语言程序设计举例
4.4.1 汇编语言程序设计步骤
4.4.2 顺序程序设计
4.4.3 分支程序设计
4.4.4 循环程序设计
4.4.5 子程序设计
4.4.6 DOS系统功能调用
4.5 其他汇编技术
4.5.1 重复汇编
4.5.2 条件汇编
4.5.3 宏汇编
习题4
第5章 存储器组织
5.1 存储器概述
5.1.1 存储器基本概念
5.1.2 存储器分类
5.1.3 存储器的性能指标
5.1.4 现代微机中存储器的层次结构
5.2 半导体存储器
5.2.1 随机存取存储器
5.2.2 只读存储器
5.2.3 现代微机内存DRAM
5.3 存储器与CPU的连接
5.3.1 存储器与CPU连接应注意的问题
5.3.2 存储器片选信号的处理方法
5.3.3 存储器容量的扩展
5.3.4 8086 微处理器的存储器接口
5.4 高速缓冲存储器与虚拟存储器
5.4.1 高速缓冲存储器(Cache)
5.4.2 虚拟存储器
5.4.3 虚拟存储器与Cache的异同
5.5 外存储器简介
习题5
第6章 输入/输出技术
6.1 输入/输出接口的基本知识
6.1.1 I/O接口简介
6.1.2 I/O接口的功能
6.1.3 I/O接口的基本结构
6.1.4 接口的组成与分析方法
6.1.5 I/O端口的编址
6.2 CPU与外设之间的数据传送
6.2.1 CPU与外设交换的信息类型
6.2.2 CPU与外设信息交换的方式
6.3 简单并行I/O接口
6.3.1 并行通信和串行通信
6.3.2 简单并行接口的设计
6.3.3 简单并行I/O接口实例
6.4 可编程并行I/O接口芯片Intel 8255A
6.4.1 Intel 8255A的引脚及编程结构
6.4.2 Intel 8255A的工作方式
6.4.3 Intel 8255A的操作编程
6.5 Intel 8255A的应用举例
6.5.1 Intel 8255A在IBM PC/XT机上的应用
6.5.2 打印机接口
6.5.3 七段数码管显示器接口
6.5.4 非编码键盘接口
6.6 DMA控制器Intel 8237A
6.6.1 DMA传送方式
6.6.2 Intel 8237A的内部结构与引脚
6.6.3 Intel 8237A的工作方式
6.6.4 Intel 8237A的工作时序
6.6.5 Intel 8237A内部寄存器与编程
6.6.6 Intel 8237A在IBM PC系列机上的应用
习题6
第7章 中断系统与定时/计数技术
7.1 中断的基本概念
7.1.1 中断系统
7.1.2 中断处理过程
7.1.3 中断优先级
7.1.4 中断嵌套
7.2 80x86中断系统
7.2.1 80x86的中断类型
7.2.2 80x86响应中断的过程
7.2.3 80x86的中断向量表
7.2.4 中断向量表的初始化
7.2.5 80x86的中断优先级
7.3 可编程中断控制器Intel 8259A
7.3.1 Intel 8259A的基本结构
7.3.2 Intel 8259A的编程
7.4 Intel 8259A应用举例
7.4.1 8259A在IBM PC/XT中的应用
7.4.2 8259A在控制系统中的应用
7.4.3 8259A的级联应用
7.4.4 8259A的查询字应用
7.4.5 8259A的定时应用
7.4.6 8259A在Pentium机上的应用
7.5 定时/计数技术
7.6 可编程定时/计数器Intel 8253
7.6.1 Intel 8253的主要特性与功能
7.6.2 Intel 8253的内部结构与引脚
7.6.3 Intel 8253的工作方式
7.6.4 Intel 8253方式控制字
7.7 Intel 8253应用举例
7.7.1 Intel 8253初始化
7.7.2 Intel 8253应用实例
7.8 实时时钟电路MC146818
7.8.1 MC146818功能特点
7.8.2 MC146818的引脚功能及其工作原理
7.8.3 MC146818的工作方式
7.8.4 MC146818的寄存器
7.8.5 MC146818的初始化
7.8.6 MC146818与计算机系统的连接
7.8.7 MC146818应用举例
习题7
第8章 串行通信及其接口电路
8.1 串行通信简介
8.1.1 串行通信的特点
8.1.2 串行通信的基本概念
8.2 RS-232与RS-423、RS-422、RS-485接口标准
8.2.1 串行通信接口标准
8.2.2 RS-232接口标准
8.2.3 RS-423、RS-422、RS-485接口标准
……