内容简介
《计算机系统基础》是计算机科学与技术专业的一门重要基础课程教材,主要介绍计算机系统的基本概念、组成结构和工作原理。
本书从计算机系统的整体出发,结合现代计算机技术的发展,详细讲解了计算机硬件、软件、操作系统、网络等方面的基础知识。
书中内容深入浅出,图文并茂,适合作为高等院校计算机相关专业的教材,也可供计算机爱好者自学使用。
目录
第1章 计算机系统概述
1.1 计算机的发展历程
1.1.1 电子计算机的诞生
1.1.2 第一代计算机
1.1.3 第二代计算机
1.1.4 第三代计算机
1.1.5 第四代计算机
1.2 计算机系统的基本功能和基本组成
1.2.1 计算机系统的基本功能
1.2.2 计算机硬件
1.2.3 计算机软件
1.3 程序开发与执行过程
1.3.1 从源程序到可执行程序
1.3.2 可执行文件的启动和执行
1.3.3 程序中每条指令的执行
1.4 计算机系统的层次结构
1.4.2 计算机系统的不同用户
1.5 计算机系统性能评价
1.5.1 计算机性能的定义
1.5.2 计算机性能的测试
1.5.3 用指令执行速度进行性能评估
1.5.4 用基准程序进行性能评估
1.6 本书的主要内容和组织结构
1.7 小结
习题
第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 浮点数的规格化
2.3.3 IEEE 754浮点数标准
2.3.4 C语言中的浮点数类型
2.4 十进制数的表示
2.4.1 用ASCII码字符表示
2.4.2 用BCD码表示
2.5 非数值数据的编码表示
2.5.1 逻辑值
2.5.2 西文字符
2.5.3 汉字字符
2.6 数据的宽度和存储
2.6.1 数据的宽度和单位
2.6.2 数据的存储和排列顺序
2.7 数据的基本运算
2.7.1 按位运算和逻辑运算
2.7.2 左移运算和右移运算
2.7.3 位扩展运算和位截断运算
2.7.4 整数加减运算
2.7.5 整数乘除运算
2.7.6 常量的乘除运算
2.7.7 浮点数运算
2.8 小结
习题
第3章 程序的转换及机器级表示
3.1 程序转换概述
3.1.1 机器指令及汇编指令
3.1.2 指令集体系结构
3.1.3 生成机器代码的过程
3.2 IA-32指令系统概述
3.2.1 数据类型及其格式
3.2.2 寄存器组织和寻址方式
3.3 IA-32常用指令类型及其操作
3.3.1 传送指令
3.3.2 定点算术运算指令
3.3.3 按位运算指令
3.3.4 控制转移指令
3.3.5 x87浮点处理指令
3.3.6 MMX/SSE指令集
3.4 C语言程序的机器级表示
3.4.1 过程调用的机器级表示
3.4.2 选择语句的机器级表示
3.4.3 循环结构的机器级表示
3.5 复杂数据类型的分配和访问
3.5.1 数组的分配和访问
3.5.2 结构体数据的分配和访问
3.5.3 联合体数据的分配和访问
3.5.4 数据的对齐
3.6 越界访问和缓冲区溢出
3.6.1 缓冲区溢出攻击
3.6.2 缓冲区溢出攻击的防范
3.7 兼容IA-32的64位系统
3.7.1 x86-64的发展简史
3.7.2 x86-64的基本特点
3.7.3 x86-64的基本指令和对齐
3.8 小结
习题
第4章 程序的链接
4.1 编译、汇编和静态链接
4.1.1 编译和汇编
4.1.2 可执行目标文件的生成
4.2 目标文件格式
4.2.1 ELF目标文件格式
4.2.2 可重定位目标文件格式
4.2.3 可执行目标文件格式
4.3 符号表和符号解析
4.3.1 符号和符号表
4.3.2 符号解析
4.3.3 与静态库的链接
4.4 重定位
4.4.1 重定位信息
4.4.2 重定位过程
4.5 可执行文件的加载
4.6 动态链接
4.6.1 动态链接的特性
4.6.2 程序加载时的动态链接
4.6.3 程序运行时的动态链接
4.7 小结
习题
第二部分 可执行目标文件的运行
第5章 程序的执行
5.1 程序执行概述
5.1.1 程序及指令的执行过程
5.1.2 CPU的基本功能和组成
5.1.3 打断程序正常执行的事件
5.2 数据通路基本结构和工作原理
5.2.1 数据通路基本结构
5.2.2 数据通路的时序控制
5.2.3 数据通路基本工作原理
5.3 流水线方式下指令的执行
5.3.1 指令流水线的基本原理
5.3.2 适合流水线的指令集特征
5.3.3 CISC和RISC风格指令集
5.3.4 指令流水线的实现
5.3.5 高级流水线实现技术
5.4 小结
习题
第6章 层次结构存储系统
6.1 存储器概述
6.1.1 存储器的分类
6.1.2 主存储器的组成和基本操作
6.1.3 存储器的主要性能指标
6.1.4 各类存储元件的特点
6.1.5 存储器的层次结构
6.2 主存与CPU的连接及其读写操作
6.2.1 主存模块的连接和读写操作
6.2.2 “装入”指令和“存储”指令操作过程
6.3 磁盘存储器
6.3.1 磁盘存储器的结构
6.3.2 磁盘存储器的性能指标
6.3.3 磁盘存储器的连接
6.3.4 固态硬盘
6.4 高速缓冲存储器
6.4.1 程序访问的局部性
6.4.2 cache的基本工作原理
6.4.3 cache行和主存块的映射
6.4.4 cache中主存块的替换算法
6.4.5 cache一致性问题
6.4.6 影响cache性能的因素
6.4.7 IA-32的cache结构举例
6.4.8 cache和程序性能
6.5 虚拟存储器
6.5.1 虚拟存储器的基本概念
6.5.2 虚拟地址空间
6.5.3 虚拟存储器的实现
6.5.4 存储保护
6.6 IA-32/Linux中的地址转换
6.6.1 逻辑地址到线性地址的转换
6.6.2 线性地址到物理地址的转换
6.7 小结
习题
第7章 异常控制流
7.1 进程与进程的上下文切换
7.1.1 程序和进程的概念
7.1.2 进程的逻辑控制流
7.1.3 进程的上下文切换
7.1.4 进程的私有地址空间
7.1.5 程序的加载和运行
7.2 异常和中断
7.2.1 基本概念
7.2.2 异常的分类
7.2.3 中断的分类
7.2.4 异常和中断的响应过程
7.2.5 IA-32的中断向量表
7.2.6 IA-32的中断描述符表
7.2.7 IA-32中异常和中断的处理
7.2.8 Linux对异常和中断的处理
7.2.9 IA-32/Linux的系统调用
7.3 小结
习题
第8章 I/O操作的实现
8.1 I/O子系统概述
8.2 用户空间I/O软件
8.2.1 用户程序中的I/O函数
8.2.2 文件的基本概念
8.2.3 系统级I/O函数
8.2.4 C标准I/O库函数
8.2.5 用户程序中的I/O请求
8.3 I/O硬件与软件的接口
8.3.1 I/O设备
8.3.2 设备控制器
8.3.3 I/O端口及其编址
8.3.4 I/O控制方式
8.4 内核空间I/O软件
8.4.1 与设备无关的I/O软件
8.4.2 设备驱动程序
8.4.3 中断服务程序
8.5 小结
习题
附录A数字逻辑电路基础
附录B gcc的常用命令行选项
附录C GDB的常用命令
参考文献
您当前的等级为
登录后免费下载登录
小黑屋反思中,不准下载!
评论后刷新页面下载评论
支付¥以后下载
请先登录
您今天的下载次数(次)用完了,请明天再来
支付积分以后下载立即支付
支付以后下载立即支付
您当前的用户组不允许下载升级会员
您已获得下载权限
您可以每天下载资源次,今日剩余次
免责申明:
1. 本站分享的所有书籍均来源于自互联网,我们只进行收集整理,并不对书籍内容进行更改。
2. 部分书籍中可能有书籍压制者放置的广告,这并不是本站所为,请注意甄别。
3. 我们分享这些书籍,纯粹是出于知识分享的热情,以及对互联网分享精神的高度认同和践行,没有任何商业目的。
4. 本站分享的所有书籍,仅供个人学习研究使用,请勿用于任何商业用途,否则产生的一切法律纠纷与本站无关。
5. 如果这些书籍让你有所收获,在条件允许的情况下,请一定购买正版书籍,这是对创作者最好的支持。
6. 如果您是此书籍的版权所有者,且您不希望此作品出现在本站,请联系我们,我们将在收到您的请求后48时间内予以删除。