出版社:清华大学出版社
年代:2009
定价:80.0
本书综合了Intel公司和AMD公司的x86系列的64位处理器的应用和系统编程。反映了当代微处理器的最新发展。本书详尽介绍了64位处理器的应用编程,也介绍了64处理器体系结构系统编程的主要方面,对于应用编程和系统编程的开发者都是十分重要和有用的。
第1章 引言
1.1 符号约定
1.1.1 位与字节顺序
1.1.2 保留位与软件兼容性
1.1.3 十六进制与二进制数
1.1.4 分段的寻址
1.1.5 对CPUID、CR和MSR值的新句法
1.1.6 异常
1.2 Intel 64和IA一32体系结构的简要历史
1.2.1 16位处理器与分段
1.2.2 Intel 286处理器
1.2.3 Intel 386处理器
1.2.4 Intel 486处理器
1.2.5 Intel Pentium(奔腾)处理器
1.2.6 处理器的P6族(系列)
1.2.7 Intel Pentium 4处理器系列
1.2.8 Intel Xeon处理器
1.2.9 Intel Pentium M处理器
1.2.10 Intel Pentium处理器极品版
1.2.11 Intel Core Du0和Intel Core Sol0处理器
1.2.12 Intel Xeon处理器5100系列和Intel Core 2处理器系列
1.3 更多的关于特定的先进技术
1.3.1 P6族微体系结构
1.3.2 Intel NetBurst微体系结构
1.3.3 Intel Core微体系结构
1.3.4 SIMD指令
1.3.5 超线程技术
1.3.6 多核技术
1.3.7 Intel 64体系结构
1.3.8 Intel虚拟化技术
第2章 基本执行环境
2.1 操作方式
2.1.1 Intel 64体系结构
2.1.2 x86—64的操作方式
2.2 基本执行环境概要
2.2.1 64位方式执行环境
2.3 内存组织
2.3.1 IA一32方式
2.3.2 分页和虚拟存储器
2.3.3 64位方式的内存组织
2.3.4 操作方式与内存模型
2.3.5 32位和16位地址与操作数尺寸
2.3.6 在保护方式扩展的物理寻址
2.3.7 在64位方式的地址计算
2.4 基本程序执行寄存器
2.4.1 通用寄存器
2.4.2 段寄存器
2.4.3 EFLAGS寄存器
2.5 指令指针
2.6 操作数尺寸和地址尺寸属性
2.7 操作数寻址
2.7.1 立即数
2.7.2 寄存器操作数
2.7.3 存储器操作数
2.7.4 规定段选择子
2.7.5 规定偏移量
2.7.6 汇编程序和编译器寻址方式
2.7.7 I/O端口寻址
第3章 数据类型
3.1 基本数据类型
3.2 数字数据类型
3.2.1 整数
3.2.2 浮点数据类型
3.3 指针数据类型
3.4 位字段数据类型
3.5 串数据类型
3.6 组合的SIMD数据类型
3.6.1 64位SIMD组合的数据类型
3.6.2 128位组合的SIMD数据类型
3.7.BCD和组合的BCD整数
3.8 实数和浮点格式
3.8.1 实数系统
3.8.2 浮点格式
3.8.3 实数和非数字编码
3.8.4 舍入
3.9 浮点异常概要
3.9.1 浮点异常条件
3.9.2 浮点异常优先权
3.9.3 浮点异常处理程序的典型动作
第4章 Intel64(AMDx86.6 4)和IA-32系统体系结构概要
4.1 系统级体系结构概要
4.1.1 全局和局部描述符表
4.1.2 系统段、段描述符和门
4.1.3 任务状态段和任务门
4.1.4 中断和异常处理
4.1.5 存储管理
4.1.6 系统寄存器
4.1.7 其他系统资源
4.2 操作方式
4.3 在EFLAGS寄存器中的系统标志和字段
4.4 存储管理寄存器
4.4.1 全局描述符表寄存器(GDTR)
4.4.2 局部描述符表寄存器(LDTR)
4.4.3 中断描述符表寄存器(IDTR)
4.4.4 任务寄存器(TR)
4.5 控制寄存器
4.6 系统指令概要
4.6.1 装入和存储系统寄存器
4.6.2 验证访问权
4.6.3 装入和存储调试寄存器
4.6.4 无效缓存和TLB
4.6.5 控制处理器
4.6.6 读性能监视和时戳计数器
4.6.7 读和写模型特定寄存器
第5章 保护方式存储管理
5.1 存储管理概要
5.2 使用分段
5.2.1 基本平面模型
5.2.2 保护的平面模型
5.2.3 多段模型
5.2.4 在IA一32e方式中的分段
5.2.5 分页和段
5.3 物理地址空间
5.4 逻辑和线性地址
5.4.1 在IA一32e方式中逻辑地址的转换
5.4.2 段选择子
5.4.3 段寄存器
5.4.4 在1A一32e方式中的段装入指令
5.4.5 段描述符
5.5 系统描述符类型
5.5.1 段描述符表
5.5.2 在IA一32e方式中的段描述符表
5.6 分页(虚拟存储器)概要
5.6.1 分页选项
5.6.2 页表和页目录
5.7 使用32位物理寻址的页转换
5.7.1 线性地址转换(4KB页)
5.7.2 线性地址转换(4MB页)
5.7.3 混合4KB和4MB页
5.7.4 内存混合
5.7.5 页目录的基地址
5.7.6 页目录和页表项
5.7.7 页目录和页项不存在
5.8 使用PAE分页机制的36位物理寻址
5.8.1 增强的传统PAE分页
5.8.2 具有PAE启用的(4KB页)的线性地址转换
5.8.3 具有PAE启用的(2MB页)的线性地址转换
5.8.4 访问具有扩展的页表结构的全扩展物理地址空间
5.8.5 具有扩展的地址启用的页目录和页表
5.9 使用PSE一36分页机制的36位物理寻址
5.10 在IA一32e方式中PAE启用的分页
5.10.1 IA一32e方式线性地址转换(4KB页)
5.10.2 IA一32e方式线性地址转换(2MB页)
……
第6章 内存缓存控制
第7章 保护
第8章 中断和异常处理
第9章 指令集小结
第10章 用x87 FPU编程
第11章 64位和128位媒体与科学编程
第12章 用SSE3和追加的SSE3编程
第13章 任务管理
第14章 调试与性能监视
第15章 先进的可编程的中断控制器
第16章 多处理器管理
第17章 处理器标识及特性
第18章 处理器管理和初始化
参考文献
本书综合了Intel公司和AMD公司的x86系列的64位处理器的应用和系统编程,是作者《微型计算机系统原理及应用(第五版)》一书向64位处理器的扩展与提高。反映了当代微处理器的最新发展。本书详细介绍了64位处理器的应用编程和64处理器体系结构系统编程的具体内容,对于应用编程和系统编程的开发者都是十分重要和有用的。本书适合希望了解和应用64位处理器的科技人员使用,也可作为高等院校相关课程的教材。
《64位微处理器系统编程和应用编程》特色
针对当前应用最广泛的两种64位处理器——Intel和AMD的四核处理器作为基础进行介绍分析。反映了当代微处理器的最新发展。
把Intel和AMD两种处理器综合起来进行分析。不论是应用编程还是系统编程,《64位微处理器系统编程和应用编程》的内容对两种处理器都适用。
应用编程全面而完整:既有通用编程,又有利用x86处理器的浮点和数学运算编程以及利用MMX技术和SSE2、SSE3、SSSE3的多媒体和科学计算的应用编程。
《64位微处理器系统编程和应用编程》包括了应用编程的详尽内容,也包含了系统编程的主要内容,对于绝大多数应用者自如地编程和应用是足够的。
《64位微处理器系统编程和应用编程》立足于应用。给出了丰富的编程实例。
周明德, 编著
周明德, 编著
王占杰, 编著
戴志涛, 刘健培, 编著
(美) 荷里希 (Herlihy,M.) , 著
(美) 赫利希 (Herlihy,M.) , (美) 谢菲特 (Shavit,N.) , 著
(美) 麦克法兰 (McFarland,G.) , 著
林海波等, 编著
(美) 赫利希 (Herlihy,M.) , (以) 谢菲特 (Shavit,N.) , 著