现代x汇编语言程序设计原书第2版丹尼尔·卡斯沃姆江红,余青松,余靖译书籍 pdf下载
限时特惠
00:00:00
活动结束后恢复原价
纸质书参考价
¥23
电子版限时价
¥5.99
省 18 元
选择版本
内容简介
本篇主要提供现代x汇编语言程序设计原书第2版丹尼尔·卡斯沃姆江红,余青松,余靖译书籍电子书的pdf版本下载,本电子书下载方式为百度网盘方式,点击以上按钮下单完成后即会通过邮件和网页的方式发货,有问题请联系邮箱ebook666@outlook.com
作 者:(美)丹尼尔·卡斯沃姆 著 江红,余青松,余靖 译
定 价:129
出 版 社:机械工业出版社
出版日期:2021年07月01日
页 数:496
装 帧:平装
ISBN:9787111686088
●出版者的话
译者序
前言
关于作者
关于技术评审专家
第1章x86-64Core体系结构
1.1历史回顾
1.2数据类型
1.2.1基本数据类型
1.2.2数值数据类型
1.2.3SIMD数据类型
1.2.4其他数据类型
1.3内部体系结构
1.3.1通用寄存器
1.3.2RFLAGS寄存器
1.3.3指令指针
1.3.4指令操作数
1.3.5内存寻址
1.4x86-64与x86-32编程的区别
1.4.1无效指令
1.4.2不推荐的指令
1.5指令集概述
1.6本章小结
第2章x86-64Core程序设计:第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-64Core程序设计:第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.1AVX概述
4.2SIMD编程概念
4.3环绕与饱和算术运算
4.4AVX执行环境
4.4.1寄存器集
4.4.2数据类型
4.4.3指令语法
4.5AVX标量浮点数
4.5.1浮点数编程概念
4.5.2标量浮点寄存器集
4.5.3控制状态寄存器
4.5.4指令集概述
4.6AVX打包浮点值
4.7AVX打包整数
4.8x86-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.1AVX2执行环境
8.2AVX2打包浮点数
8.3AVX2打包整数
8.4x86指令集扩展
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.2RGB像素的最小值和优选值
10.2.3RGB图像到灰度图像的转换
10.3本章小结
第11章AVX2程序设计:扩展指令集
11.1FMA程序设计
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.1AVX-512概述
12.2AVX-512执行环境
12.2.1寄存器集
12.2.2数据类型
12.2.3指令语法
12.3指令集概述
12.3.1AVX512F
12.3.2AVX512CD
12.3.3AVX512BW
12.3.4AVX512DQ
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.4RGB到灰度的转换
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.5SIMD励技术
15.3本章小结
第16章高级程序设计
16.1CPUID指令
16.2非时态内存存储
16.3数据预获取
16.4多线程
16.5本章小结
附录A
译者序
前言
关于作者
关于技术评审专家
第1章x86-64Core体系结构
1.1历史回顾
1.2数据类型
1.2.1基本数据类型
1.2.2数值数据类型
1.2.3SIMD数据类型
1.2.4其他数据类型
1.3内部体系结构
1.3.1通用寄存器
1.3.2RFLAGS寄存器
1.3.3指令指针
1.3.4指令操作数
1.3.5内存寻址
1.4x86-64与x86-32编程的区别
1.4.1无效指令
1.4.2不推荐的指令
1.5指令集概述
1.6本章小结
第2章x86-64Core程序设计:第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-64Core程序设计:第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.1AVX概述
4.2SIMD编程概念
4.3环绕与饱和算术运算
4.4AVX执行环境
4.4.1寄存器集
4.4.2数据类型
4.4.3指令语法
4.5AVX标量浮点数
4.5.1浮点数编程概念
4.5.2标量浮点寄存器集
4.5.3控制状态寄存器
4.5.4指令集概述
4.6AVX打包浮点值
4.7AVX打包整数
4.8x86-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.1AVX2执行环境
8.2AVX2打包浮点数
8.3AVX2打包整数
8.4x86指令集扩展
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.2RGB像素的最小值和优选值
10.2.3RGB图像到灰度图像的转换
10.3本章小结
第11章AVX2程序设计:扩展指令集
11.1FMA程序设计
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.1AVX-512概述
12.2AVX-512执行环境
12.2.1寄存器集
12.2.2数据类型
12.2.3指令语法
12.3指令集概述
12.3.1AVX512F
12.3.2AVX512CD
12.3.3AVX512BW
12.3.4AVX512DQ
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.4RGB到灰度的转换
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.5SIMD励技术
15.3本章小结
第16章高级程序设计
16.1CPUID指令
16.2非时态内存存储
16.3数据预获取
16.4多线程
16.5本章小结
附录A
本书全面更新至x86-64。主要面向软件开发人员,旨在通过实用的案例帮助读者快速理解x86-64汇编语言程序设计的概念并掌握编程方法。书中首先介绍x86-64平台,包括Core体系结构、数据类型、寄存器、内存寻址模式和基本指令集等;然后讨论AVX、AVX2和AVX-512,包括寄存器集、指令集和增强功能等,并利用这些指令集编写性能增强函数和算法;最后讨论提高程序性能的编码策略及技巧。此外,书中包含大量可免费下载的源代码,便于读者实践。