导语
内容提要
本书以高级语言程序的开发和运行过程为主线,采用循序渐进、深入浅出的方法,介绍与计算机系统相关的核心概念,将程序执行每个环节所涉及的硬件和软件关联起来,帮助读者建立一个完整的计算机系统层次结构框架。
本书采用IA-32体系结构的计算机系统,通过反汇编工具,将高级语言、汇编语言、机器代码及其执行进行关联,实现对程序的跟踪和调试。本书共分7章,主要内容包括计算机系统概述、数据的机器级表示与处理、层次结构存储系统、指令系统和程序的机器级表示、CPU结构和程序执行、异常和中断及输入/输出系统。
本书概念清楚、通俗易懂、实例丰富,与当代计算机技术相结合,可作为高等院校的“计算机硬件技术”“计算机组成原理”等课程的教材和参考书,也可以作为计算机及相关专业的计算机系统方面的基础教材或计算机技术人员的参考书。
目录
第1章 计算机系统概述
1.1 计算机的发展历程
1.2 计算机系统的基本组成
1.2.1 冯·诺依曼计算机的基本结构
1.2.2 现代计算机的基本组成
1.2.3 计算机的工作过程
1.3 计算机系统的层次结构
1.4 计算机系统的性能评价指标
1.5 本章小结
习题1
第2章 数据的机器级表示与处理
2.1 数制和编码
2.1.1 进位计数制
2.1.2 计算机中的编码
2.1.3 无符号数和有符号数
2.1.4 定点数与浮点数
2.2 定点数的表示
2.2.1 定点数的编码表示
2.2.2 C语言中的整数
2.3 浮点数的表示
2.3.1 浮点数的基本概念
2.3.2 IEEE 754标准
2.3.3 C语言中的浮点数
2.4 数据的存储
2.5 定点数的基本运算
2.5.1 定点数加/减法运算
2.5.2 定点数乘/除法运算
2.6* 浮点数的基本运算
2.6.1 浮点数加/减法运算
2.6.2 浮点数乘/除法运算
2.7 本章小结
习题2
第3章 层次结构存储系统
3.1 存储器技术
3.1.1 存储器概述
3.1.2 存储器的层次结构
3.1.3 存储器技术
3.2 主存储器
3.2.1 主存储器的结构和基本操作
3.2.2 主存储器的组成与控制
3.2.3 主存储器的读/写操作
3.3 高速缓冲存储器(Cache)
3.3.1 程序访问的局部性
3.3.2 Cache的基本工作原理
3.3.3 Cache地址映射
3.3.4 Cache替换算法
3.3.5 Cache设计考虑因素
3.4 虚拟存储管理
3.4.1 虚拟存储器
3.4.2 存储管理
3.5 IA-32系统地址转换
3.5.1 逻辑地址向线性地址的转换
3.5.2 线性地址向物理地址的转换
3.6 本章小结
习题3
第4章 指令系统和程序的机器级表示
4.1 机器指令
4.1.1 机器指令与汇编指令的关系
4.1.2 指令的一般格式
4.2 寄存器组织
4.2.1 通用寄存器
4.2.2 专用寄存器
4.2.3 段寄存器
4.2.4* 浮点寄存器栈和多媒体扩展寄存器组
4.3 存储器组织
4.3.1 存储模型
4.3.2 工作方式
4.3.3 逻辑地址
4.4 数据类型及格式
4.5 IA-32数据寻址方式
4.5.1 立即数寻址
4.5.2 寄存器寻址
4.5.3 存储器寻址
4.6 IA-32指令系统
4.6.1 指令格式
4.6.2 数据传送指令
4.6.3 算术运算指令
4.6.4 位操作指令
4.6.5 控制转移指令
4.7 程序的机器级表示
4.7.1 过程调用的机器级表示
4.7.2* 选择结构的机器级表示
4.7.3* 循环结构的机器级表示
4.8 本章小结
习题4
第5章 CPU结构和程序执行
5.1 程序执行概述
5.1.1 指令的执行过程
5.1.2 指令周期
5.2 CPU结构和工作原理
5.2.1 CPU的功能
5.2.2 CPU的主要寄存器
5.2.3 CPU的结构和工作原理
5.3 数据通路
5.3.1 数据通路的基本结构
5.3.2 单总线数据通路
5.3.3 多总线数据通路
5.4 指令流水线
5.4.1 指令流水线的基本原理
5.4.2 CISC指令集和RISC指令集
5.4.3 流水线冒险及其解决方法
5.4.4* 流水线多发技术
5.5 本章小结
习题5
第6章 异常和中断
6.1 异常和中断概述
6.1.1 异常和中断的基本概念
6.1.2 异常和中断的分类
6.1.3 异常和中断的作用
6.2 异常和中断的响应
6.3 IA-32的CPU中断管理
6.3.1 中断向量表
6.3.2 IA-32的中断描述符表
6.4* 8259A中断控制器
6.4.1 8259A的功能
6.4.2 8259A的内部结构
6.4.3 中断源识别与中断优先级
6.4.4 8259A的工作方式
6.4.5 8259A的工作过程
6.5 中断程序设计及响应过程举例
6.5.1 中断程序设计
6.5.2 中断响应过程举例
6.6 本章小结
习题6
第7章 输入/输出系统
7.1 输入/输出系统概述
7.2 输入/输出硬件系统
7.2.1 输入/输出接口功能
7.2.2 输入/输出接口结构
7.2.3 输入/输出设备的总线连接
7.2.4 输入/输出接口的寻址方式
7.3 输入/输出软件系统
7.3.1 输入/输出软件系统任务与工作过程
7.3.2 内核空间输入/输出软件
7.3.3 用户空间输入/输出软件
7.4 CPU与外设的数据交换方式
7.4.1 程序查询方式
7.4.2 程序中断方式
7.4.3 DMA方式
7.5 本章小结
习题7
附录A OllyDbg反汇编工具
主要参考文献