本书以C语言程序的开发和运行过程为主线,采用循序渐进、深入浅出的方法,介绍与计算机系统相关的核心概念,将程序执行每个环节所涉及的硬件和软件关联起来,帮助读者建立一个完整的计算机系统层次结构框架。本书采用IA-32体系结构的计算机系统,通过反汇编工具,将高级语言、汇编语言、机器代码及其执行进行关联,实现对程序的跟踪和调试。 本书共分7章,主要内容包括计算机系统概述、数据的机器级表示与处理、层次结构存储系统、指令系统和程序的机器级表示、CPU结构和程序执行、异常和中断及输入/输出系统。 本书概念清楚、通俗易懂、实例丰富,与当代计算机技术相结合,可作为高等院校的"计算机硬件技术”"计算机系统”等课程的教材和参考书,也可以作为计算机及相关专业的计算机系统方面的基础教材或计算机技术人员的参考书。
崔丽群,女,副教授。本科毕业于阜新矿业学院,机电专门化专业,硕士毕业于辽宁工程技术大学,计算机应用专业。学术或教育组织任职:中国计算机学会会员。教学及科研获奖:2013年荣获辽宁省教学成果一等奖。出版教材:《计算机硬件技术及应用》,浙江大学出版社,2008年,总印数5000册。相关获奖情况:2009年,校级精品课;2010年,校级立项课程建设;2010年,校级优秀课件,一等奖;2012年,辽宁省教育软件大赛,三等奖;2016年,校级精品资源共享课;2017年,校级精品开放课程,二等奖;2018年,辽宁省精品开放课程,三等奖。
第1章 计算机系统概述
1.1 计算机的发展历程
1.2 计算机系统的基本组成
1.2.1 冯?诺依曼机的基本结构
1.2.2 现代计算机的基本组成
1.2.3 计算机的工作过程
1.3 计算机系统的层次结构
1.4 计算机系统的性能评价指标
1.5 本章小结
习题
第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 本章小结
习题
第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 高速缓冲存储器
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本章小结
习题
第4章 指令系统和程序的机器级表示
4.1 机器指令与汇编指令
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 本章小结
习题
第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本章小结
习题
第六章 异常和中断
6.1 异常和中断概述
6.1.1 中断源
6.1.2 中断系统的组成及其功能
6.1.3 中断条件
6.1.4 异常和中断的类型
6.2 异常和中断的响应
6.2.1 中断响应过程
6.2.2 中断请求的传送
6.2.3 中断源的识别与中断优先级
6.2.4 IA-32的中断向量表
6.2.5 IA-32的中断描述符表
6.3 异常和中断的作用
6.4 Intel 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 本章小结
习题
第7章 输入输出系统
7.1 输入输出系统概述
7.1.1 输入输出系统的发展
7.1.2 输入输出设备分类
7.2 输入输出软件系统
7.2.1 系统任务与工作过程
7.2.2 内核空间输入输出软件
7.2.3 用户空间输入输出软件
7.3 输入输出硬件系统
7.3.1 输入输出接口结构
7.3.2 输入输出设备的总线连接
7.3.4 输入输出接口功能
7.3.5 输入输出接口的寻址方式
7.4 CPU与接口交换数据的控制方式
7.4.1 程序查询方式
7.4.2 中断控制方式
7.4.3 DMA方式
7.5本章小结
习题
附录A 数字逻辑电路基础
A.1 逻辑代数基础
A.2 门电路
A.3 组合逻辑部件
A.4 时序逻辑部件
A.5 基本存储单元
附录B OllyDbg反汇编工具