出版时间:2006-1 出版社:机械工业出版社 作者:布鲁姆 页数:409
Tag标签:无
前言
在目前正在使用的程序设计语言之中,汇编语言是被误解得最深的一种。当提到“汇编语言”这个术语时,经常使人联想到低级的位移动和在长达数千页的指令手册中费力地查找正确的指令格式。随着各种出色的高级语言开发工具的快速发展,在各种程序设计新闻组中“汇编语言程序设计已经死亡了”这种评论并不少见。但是,汇编语言程序设计远没有到死亡的时候。每种高级语言程序在能够连接为可执行程序之前都必须被编译为汇编语言程序。对于高级语言程序设计者来说,了解编译器如何生成汇编语言代码很有用处,这表现在使用汇编语言直接编写例程和了解编译器如何把高级语言转换为汇编语言方面。
内容概要
每种高级语言程序在连接为可执行程序之前,都必须被编译为汇编语言程序,因此对于高级语言程序设计者来说,了解编译器如何生成汇编语言代码十分有用。 本书分为三部分。第一部分讲解汇编语言程序设计环境基础,第二部分研究汇编语言程序设计,最后一部分讲解高级汇编语言技术。本书的主要目的是向使用高级语言的程序员讲解编译器如何从C和C++程序创建汇编语言例程,以及编程人员应如何掌握生成的汇编语言代码,调整汇编语言例程以提高应用程序的性能。 本书适合有一定编程经验的开发人员参考。
作者简介
Richard Blum 毕业于美国普度大学电气工程专业,在美国一家政府组织工作了15年以上。在此期间,他使用过各种编程语言(C、C++、Java和Microsoft VB .NET以及C#)编写实用程序,因此他发现一个非常有价值的事实:通过研究编译器生成的汇编语言代码及使用汇编语言例程,可
书籍目录
第一部分 汇编语言程序设计环境基础 第1章 什么是汇编语言 1.1 处理器指令 1.1.1 指令码处理 1.1.2 指令码格式 1.2 高级语言 1.2.1 高级语言的种类 1.2.2 高级语言的特性 1.3 汇编语言 1.3.1 操作码助记符 1.3.2 定义数据 1.3.3 命令 1.4 小结 第2章 IA-32平台 2.1 IA-32处理器的核心部分 2.1.1 控制单元 2.1.2 执行单元 2.1.3 寄存器 2.1.4 标志 2.2 IA-32的高级特性 2.2.1 x87浮点单元 2.2.2 多媒体扩展 2.2.3 流化SIMD扩展 2.2.4 超线程 2.3 IA-32处理器系列 2.3.1 Intel处理器 2.3.2 非Intel处理器 2.4 小结 第3章 相关的工具 3.1 开发工具 3.1.1 汇编器 3.1.2 连接器 3.1.3 调试器 3.1.4 编译器 3.1.5 目标代码反汇编器 3.1.6 简档器 3.2 GNU汇编器 3.2.1 安装汇编器 3.2.2 使用汇编器 3.2.3 关于操作码语法 3.3 GNU连接器 3.4 GNU编译器 3.4.1 下载和安装gcc 3.4.2 使用gcc 3.5 GNU调试器程序 3.5.1 下载和安装gdb 3.5.2 使用gdb 3.6 KDE调试器 3.6.1 下载和安装kdbg 3.6.2 使用kdbg 3.7 GNU objdump程序 3.7.1 使用objdump 3.7.2 objdump范例 3.8 GNU简档器程序 3.8.1 使用简档器 3.8.2 简档范例 3.9 完整的汇编开发系统 3.9.1 Linux基础 3.9.2 下载和运行MEPIS 3.9.3 新的开发系统 3.10 小结 第4章 汇编语言程序范例 4.1 程序的组成 4.1.1 定义段 4.1.2 定义起始点 4.2 创建简单程序 4.2.1 CPUID指令 4.2.2 范例程序 4.2.3 构建可执行程序 4.2.4 运行可执行程序 4.2.5 使用编译器进行汇编 4.3 调试程序 4.4 在汇编语言中使用C库函数 4.4.1 使用printf 4.4.2 连接C库函数 4.5 小结 第二部分 汇编语言程序设计基础 第5章 传送数据 第6章 控制执行流程 第7章 使用数字 第8章 基本数学功能 第9章 高级数学功能 第10章 处理字符串 第11章 使用函数 第12章 使用Linux系统调用 第三部分 高级汇编语言技术 第13章 使用内联汇编 第14章 调用汇编库 第15章 优化例程 第16章 使用文件 第17章 使用高级IA-32特性
编辑推荐
每种高级语言(比如C和C++)在连接为可执行程序之前都会被编译器转换成汇编语言。本书面向使用高级语言的开发人员,讲解如何查看和解释编译器生成的汇编语言代码,了解它们是如何创建的,从而可以修改编译器生成的代码或创建自己的汇编语言例程。本书揭示如何使程序中的函数更快更高效的内幕,以及提高应用程序性能的方法。 本书主要内容: ● 查看高级语言程序生成的汇编语言代码的好处; ● 如何为Linux奔腾处理器环境创建独立的汇编语言程序; ● 如何将高级函数和库整合到汇编语言程序中; ● 如何将汇编语言例程整合到C和C++应用程序中; ● 如何在汇编语言程序中使用Linux系统调用; ● 如何在应用程序中使用奔腾处理器的MMX和SSE功能。
图书封面
图书标签Tags
无
评论、评分、阅读与下载