-
内容大纲
本书全面更新至x86-64。主要面向软件开发人员,旨在通过实用的案例帮助读者快速理解x86-64汇编语言程序设计的概念并掌握编程方法。书中首先介绍x86-64平台,包括Core体系结构、数据类型、寄存器、内存寻址模式和基本指令集等;然后讨论AVX、AVX2和AVX-512,包括寄存器集、指令集和增强功能等,并利用这些指令集编写性能增强函数和算法;最后讨论提高程序性能的编码策略及技巧。此外,书中包含大量可免费下载的源代码,便于读者实践。 -
作者介绍
-
目录
出版者的话
译者序
前言
关于作者
关于技术评审专家
第1章 x86-64 Core体系结构
1.1 历史回顾
1.2 数据类型
1.2.1 基本数据类型
1.2.2 数值数据类型
1.2.3 SIMD数据类型
1.2.4 其他数据类型
1.3 内部体系结构
1.3.1 通用寄存器
1.3.2 RFLAGS寄存器
1.3.3 指令指针
1.3.4 指令操作数
1.3.5 内存寻址
1.4 x86-64与x86-32编程的区别
1.4.1 无效指令
1.4.2 不推荐的指令
1.5 指令集概述
1.6 本章小结
第2章 x86-64 Core程序设计:第1部分
2.1 简单的整数算术运算
2.1.1 加法和减法
2.1.2 逻辑运算
2.1.3 移位运算
2.2 高级整数算术运算
2.2.1 乘法和除法
2.2.2 使用混合类型的运算
2.3 内存寻址和条件代码
2.3.1 内存寻址模式
2.3.2 条件代码
2.4 本章小结
第3章 x86-64 Core程序设计:第2部分
3.1 数组
3.1.1 一维数组
3.1.2 二维数组
3.2 结构
3.3 字符串
3.3.1 字符计数
3.3.2 字符串拼接
3.3.3 比较数组
3.3.4 数组反转
3.4 本章小结
第4章 AVX指令集
4.1 AVX概述
4.2 SIMD编程概念
4.3 环绕与饱和算术运算
4.4 AVX执行环境
4.4.1 寄存器集
4.4.2 数据类型
4.4.3 指令语法
4.5 AVX标量浮点数
4.5.1 浮点数编程概念
4.5.2 标量浮点寄存器集
4.5.3 控制状态寄存器
4.5.4 指令集概述
4.6 AVX打包浮点值
4.7 AVX打包整数
4.8 x86-AVX和x86-SSE之间的区别
4.9 本章小结
第5章 AVX程序设计:标量浮点数
5.1 标量浮点算术运算
5.1.1 单精度浮点数运算
5.1.2 双精度浮点数运算
5.2 标量浮点值的比较和转换
5.2.1 浮点值比较
5.2.2 浮点值转换
5.3 标量浮点数组和矩阵
5.3.1 浮点数组
5.3.2 浮点矩阵
5.4 调用约定
5.4.1 基本堆栈帧
5.4.2 使用非易失性通用寄存器
5.4.3 使用非易失性XMM寄存器
5.4.4 函数序言和函数结语的宏
5.5 本章小结
第6章 AVX程序设计:打包浮点数
6.1 打包浮点算术运算
6.2 打包浮点值比较
6.3 打包浮点值转换
6.4 打包浮点数组
6.4.1 打包浮点平方根
6.4.2 打包浮点数组的最小值和最大值
6.4.3 打包浮点最小二乘法
6.5 打包浮点矩阵
6.5.1 矩阵转置
6.5.2 矩阵乘法
6.6 本章小结
第7章 AVX程序设计:打包整数
7.1 打包整数加法和减法运算
7.2 打包整数移位
7.3 打包整数乘法
7.4 打包整数图像处理
7.4.1 像素的最小值和最大值
7.4.2 像素平均强度
7.4.3 像素转换
7.4.4 图像直方图
7.4.5 图像阈值化
7.5 本章小结
第8章 AVX2
8.1 AVX2执行环境
8.2 AVX2打包浮点数
8.3 AVX2打包整数
8.4 x86指令集扩展
8.4.1 半精度浮点数
8.4.2 乘法加法融合
8.4.3 通用寄存器指令集扩展
8.5 本章小结
第9章 AVX2程序设计:打包浮点数
9.1 打包浮点算术运算
9.2 打包浮点数组
9.2.1 简单计算
9.2.2 列均值
9.2.3 相关系数
9.3 矩阵乘法和转置
9.4 矩阵求逆
9.5 混合和排列指令
9.6 数据收集指令
9.7 本章小结
第10章 AVX2程序设计:打包整数
10.1 打包整数基础
10.1.1 基本算术运算
10.1.2 打包和解包
10.1.3 大小提升
10.2 打包整数图像处理
10.2.1 像素剪裁
10.2.2 RGB像素的最小值和最大值
10.2.3 RGB图像到灰度图像的转换
10.3 本章小结
第11章 AVX2程序设计:扩展指令集
11.1 FMA程序设计
11.1.1 卷积
11.1.2 标量FMA
11.1.3 打包FMA
11.2 通用寄存器指令
11.2.1 不影响标志位的乘法和移位
11.2.2 增强型位操作
11.3 半精度浮点转换
11.4 本章小结
第12章 AVX-512
12.1 AVX-512概述
12.2 AVX-512执行环境
12.2.1 寄存器集
12.2.2 数据类型
12.2.3 指令语法
12.3 指令集概述
12.3.1 AVX512F
12.3.2 AVX512CD
12.3.3 AVX512BW
12.3.4 AVX512DQ
12.3.5 操作掩码寄存器
12.4 本章小结
第13章 AVX-512程序设计:浮点数
13.1 标量浮点数
13.1.1 合并屏蔽
13.1.2 零屏蔽
13.1.3 指令级舍入
13.2 打包浮点数
13.2.1 打包浮点数算术运算
13.2.2 打包浮点值比较
13.2.3 打包浮点列均值
13.2.4 向量叉积
13.2.5 矩阵向量乘法
13.2.6 卷积
13.3 本章小结
第14章 AVX-512程序设计:打包整数
14.1 基本算术运算
14.2 图像处理
14.2.1 像素转换
14.2.2 图像阈值化
14.2.3 图像统计
14.2.4 RGB到灰度的转换
14.3 本章小结
第15章 优化策略和技术
15.1 处理器微体系结构
15.1.1 处理器体系结构概述
15.1.2 微体系结构流水线功能
15.1.3 执行引擎
15.2 优化汇编语言代码
15.2.1 基本技术
15.2.2 浮点算术运算
15.2.3 程序分支
15.2.4 数据对齐
15.2.5 SIMD技术
15.3 本章小结
第16章 高级程序设计
16.1 CPUID指令
16.2 非时态内存存储
16.3 数据预获取
16.4 多线程
16.5 本章小结
附录A
同类热销排行榜
- C语言与程序设计教程(高等学校计算机类十二五规划教材)16
- 电机与拖动基础(教育部高等学校自动化专业教学指导分委员会规划工程应用型自动化专业系列教材)13.48
- 传感器与检测技术(第2版高职高专电子信息类系列教材)13.6
- ASP.NET项目开发实战(高职高专计算机项目任务驱动模式教材)15.2
- Access数据库实用教程(第2版十二五职业教育国家规划教材)14.72
- 信号与系统(第3版下普通高等教育九五国家级重点教材)15.08
- 电气控制与PLC(普通高等教育十二五电气信息类规划教材)17.2
- 数字电子技术基础(第2版)17.36
- VB程序设计及应用(第3版十二五职业教育国家规划教材)14.32
- Java Web从入门到精通(附光盘)/软件开发视频大讲堂27.92
推荐书目
-

孩子你慢慢来/人生三书 华人世界率性犀利的一枝笔,龙应台独家授权《孩子你慢慢来》20周年经典新版。她的《...
-

时间简史(插图版) 相对论、黑洞、弯曲空间……这些词给我们的感觉是艰深、晦涩、难以理解而且与我们的...
-

本质(精) 改革开放40年,恰如一部四部曲的年代大戏。技术突变、产品迭代、产业升级、资本对接...
[
