汇编语言的编程艺术

汇编语言的编程艺术
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: [美] (Randall Hyde) , ,
2011-12
版次: 2
ISBN: 9787302263739
定价: 69.80
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 582页
字数: 930千字
正文语种: 简体中文
原版书名: The Art of Assembly Language
93人买过
  • 汇编语言是一种低级编程语言,只比计算机本身的机器语言高一级。虽然汇编语言经常用于编写设备驱动程序、模拟器和视频游戏,但是许多程序员认为汇编语言的语法不太友好,很难学习和使用。
    1996年以来,RandallHyde的《汇编语言的编程艺术》一书为非汇编程序员提供了全面、易读和循序渐进的32位x86汇编语言的介绍。Hyde使用的主要教学工具是高级语言汇编器(HighLevelAssembler,HLA),其中提供了许多高级语言(如C、X++和Java)的功能,以帮助读者快速掌握汇编语言的基本概念。HLA在允许汇编语言程序员编写真正低级代码的同时,也使他们能够利用高级语言编程的优势。
    通过阅读《汇编语言的编程艺术(第2版)》,读者可以学到计算机科学的底层理论基础,并将所学知识转化为真正可以运行的代码。 海德,RandallHyde是WriteGreatCode。Volumes1和Volumes2的作者,并且与人合著了MASM6.0Bible。他为Dr.Dobb’sJournal、Byte和多种专业刊物撰稿。他在加州大学河滨分校讲授汇编语言已经超过了十年的时间。 第1章进入汇编语言的世界
    1.1HLA程序的结构
    1.2运行第一个HLA程序
    1.3基本的HLA数据声明
    1.4布尔值
    1.5字符值
    1.6Intel80x86CPU系列简介
    1.7存储子系统
    1.8基本的机器指令
    1.9基本的HLA控制结构
    1.9.1HLA语句中的布尔表达式
    1.9.2HLA中的if..then..elseif..else..endif语句
    1.9.3布尔表达式中的逻辑与、逻辑或以及逻辑非
    1.9.4while..endwhile语句
    1.9.5for..endfor语句
    1.9.6repeat..until语句
    1.9.7break和breakif语句
    1.9.8forever..endfor语句
    1.9.9try..exception..endtry语句
    1.10HLA标准库入门
    1.10.1stdio模块中的预定义常量
    1.10.2标准输入和标准输出
    1.10.3stdout.newln例程
    1.10.4stdout.putix例程
    1.10.5stdout.putixsize例程
    1.10.6stdout.put例程
    1.10.7stdin.getc例程
    1.10.8stdin.getix例程
    1.10.9stdin.readln和stdin.flushinput例程
    1.10.10stdin.get例程
    1.11关于try..endtry的其他细节
    1.11.1try..endtry嵌套语句
    1.11.2try..endtry语句中不受保护的子句
    1.11.3try..endtry语句中的anyexception子句
    1.11.4寄存器与try..endtry语句
    1.12高级汇编语言与低级汇编语言的比较
    1.13更多信息

    第2章数据表示
    2.1数字系统
    2.1.1回顾十进制系统
    2.1.2二进制数字系统
    2.1.3二进制格式
    2.2十六进制数字系统
    2.3数据结构
    2.3.1位
    2.3.2半字节
    2.3.3字节
    2.3.4字
    2.3.5双字
    2.3.6四字和长字
    2.4二进制数和十六进制数的算术运算
    2.5关于数字及其表示
    2.6位逻辑运算
    2.7二进制数和位串的逻辑运算
    2.8有符号数和无符号数
    2.9符号扩展、零扩展、压缩和饱和
    2.10移位和循环移位
    2.11位域和压缩数据
    2.12浮点运算简介
    2.12.1IEEE浮点格式
    2.12.2HLA为浮点数值提供的支持
    2.13BCD数据表示
    2.14字符
    2.14.1ASCII字符编码
    2.14.2HLA对ASCII字符提供的支持
    2.15Unicode字符集
    2.16更多信息

    第3章存储器的访问与结构
    3.180x86的寻址方式
    3.1.180x86寄存器寻址方式
    3.1.280x86的32位存储器寻址方式
    3.2运行时存储器的结构
    3.2.1代码段
    3.2.2静态段
    3.2.3只读数据段
    3.2.4存储段
    3.2.5@nostorage属性
    3.2.6var段
    3.2.7程序中声明段的结构
    3.3HLA如何为变量分配内存
    3.4HLA对数据对齐的支持
    3.5地址表达式
    3.6类型强制转换
    3.7寄存器类型强制转换
    3.8栈段与push和pop指令
    3.8.1基本的push指令
    3.8.2基本的pop指令
    3.8.3用push和pop指令保护寄存器
    3.9栈的LIFO数据结构
    3.9.1其他的push和pop指令
    3.9.2不使用出栈而从栈内移除数据
    3.10访问已入栈而未出栈的数据
    3.11动态内存分配和堆段
    3.12inc和dec指令
    3.13获取存储器对象的地址
    3.14更多信息

    第4章常量、变量与数据类型
    4.1一些额外的指令:intmul、bound、into
    4.2HLA常量和数值声明
    4.2.1常量类型
    4.2.2字符串和字符字面常量
    4.2.3const段中的字符串常量与文本常量
    4.2.4常量表达式
    4.2.5HLA程序中的多个const段以及它们的顺序
    4.2.6HLA的val段
    4.2.7在程序中的任意位置修改val对象
    4.3HLA的type段
    4.4enum和HLA枚举数据类型
    ……
    第5章过程和单元
    第6章算术运算
    第7章低级控制结构
    第8章高级算术运算
    第9章宏与HLA编译时语言
    第10章位操作
    第11章字符串指令
    第12章类与对象
  • 内容简介:
    汇编语言是一种低级编程语言,只比计算机本身的机器语言高一级。虽然汇编语言经常用于编写设备驱动程序、模拟器和视频游戏,但是许多程序员认为汇编语言的语法不太友好,很难学习和使用。
    1996年以来,RandallHyde的《汇编语言的编程艺术》一书为非汇编程序员提供了全面、易读和循序渐进的32位x86汇编语言的介绍。Hyde使用的主要教学工具是高级语言汇编器(HighLevelAssembler,HLA),其中提供了许多高级语言(如C、X++和Java)的功能,以帮助读者快速掌握汇编语言的基本概念。HLA在允许汇编语言程序员编写真正低级代码的同时,也使他们能够利用高级语言编程的优势。
    通过阅读《汇编语言的编程艺术(第2版)》,读者可以学到计算机科学的底层理论基础,并将所学知识转化为真正可以运行的代码。
  • 作者简介:
    海德,RandallHyde是WriteGreatCode。Volumes1和Volumes2的作者,并且与人合著了MASM6.0Bible。他为Dr.Dobb’sJournal、Byte和多种专业刊物撰稿。他在加州大学河滨分校讲授汇编语言已经超过了十年的时间。
  • 目录:
    第1章进入汇编语言的世界
    1.1HLA程序的结构
    1.2运行第一个HLA程序
    1.3基本的HLA数据声明
    1.4布尔值
    1.5字符值
    1.6Intel80x86CPU系列简介
    1.7存储子系统
    1.8基本的机器指令
    1.9基本的HLA控制结构
    1.9.1HLA语句中的布尔表达式
    1.9.2HLA中的if..then..elseif..else..endif语句
    1.9.3布尔表达式中的逻辑与、逻辑或以及逻辑非
    1.9.4while..endwhile语句
    1.9.5for..endfor语句
    1.9.6repeat..until语句
    1.9.7break和breakif语句
    1.9.8forever..endfor语句
    1.9.9try..exception..endtry语句
    1.10HLA标准库入门
    1.10.1stdio模块中的预定义常量
    1.10.2标准输入和标准输出
    1.10.3stdout.newln例程
    1.10.4stdout.putix例程
    1.10.5stdout.putixsize例程
    1.10.6stdout.put例程
    1.10.7stdin.getc例程
    1.10.8stdin.getix例程
    1.10.9stdin.readln和stdin.flushinput例程
    1.10.10stdin.get例程
    1.11关于try..endtry的其他细节
    1.11.1try..endtry嵌套语句
    1.11.2try..endtry语句中不受保护的子句
    1.11.3try..endtry语句中的anyexception子句
    1.11.4寄存器与try..endtry语句
    1.12高级汇编语言与低级汇编语言的比较
    1.13更多信息

    第2章数据表示
    2.1数字系统
    2.1.1回顾十进制系统
    2.1.2二进制数字系统
    2.1.3二进制格式
    2.2十六进制数字系统
    2.3数据结构
    2.3.1位
    2.3.2半字节
    2.3.3字节
    2.3.4字
    2.3.5双字
    2.3.6四字和长字
    2.4二进制数和十六进制数的算术运算
    2.5关于数字及其表示
    2.6位逻辑运算
    2.7二进制数和位串的逻辑运算
    2.8有符号数和无符号数
    2.9符号扩展、零扩展、压缩和饱和
    2.10移位和循环移位
    2.11位域和压缩数据
    2.12浮点运算简介
    2.12.1IEEE浮点格式
    2.12.2HLA为浮点数值提供的支持
    2.13BCD数据表示
    2.14字符
    2.14.1ASCII字符编码
    2.14.2HLA对ASCII字符提供的支持
    2.15Unicode字符集
    2.16更多信息

    第3章存储器的访问与结构
    3.180x86的寻址方式
    3.1.180x86寄存器寻址方式
    3.1.280x86的32位存储器寻址方式
    3.2运行时存储器的结构
    3.2.1代码段
    3.2.2静态段
    3.2.3只读数据段
    3.2.4存储段
    3.2.5@nostorage属性
    3.2.6var段
    3.2.7程序中声明段的结构
    3.3HLA如何为变量分配内存
    3.4HLA对数据对齐的支持
    3.5地址表达式
    3.6类型强制转换
    3.7寄存器类型强制转换
    3.8栈段与push和pop指令
    3.8.1基本的push指令
    3.8.2基本的pop指令
    3.8.3用push和pop指令保护寄存器
    3.9栈的LIFO数据结构
    3.9.1其他的push和pop指令
    3.9.2不使用出栈而从栈内移除数据
    3.10访问已入栈而未出栈的数据
    3.11动态内存分配和堆段
    3.12inc和dec指令
    3.13获取存储器对象的地址
    3.14更多信息

    第4章常量、变量与数据类型
    4.1一些额外的指令:intmul、bound、into
    4.2HLA常量和数值声明
    4.2.1常量类型
    4.2.2字符串和字符字面常量
    4.2.3const段中的字符串常量与文本常量
    4.2.4常量表达式
    4.2.5HLA程序中的多个const段以及它们的顺序
    4.2.6HLA的val段
    4.2.7在程序中的任意位置修改val对象
    4.3HLA的type段
    4.4enum和HLA枚举数据类型
    ……
    第5章过程和单元
    第6章算术运算
    第7章低级控制结构
    第8章高级算术运算
    第9章宏与HLA编译时语言
    第10章位操作
    第11章字符串指令
    第12章类与对象
查看详情
12
相关图书 / 更多
汇编语言的编程艺术
汇编语言案例教程
李建俊、张慧明 著
汇编语言的编程艺术
汇编语言与逆向技术
王志;李旭昇;过辰楷;邓琮弋
汇编语言的编程艺术
汇编语言:基于x86处理器
[美]基普·R.欧文(Kip R.Irvine)
汇编语言的编程艺术
汇编语言程序设计——基于x86与MIPS架构
何云华
汇编语言的编程艺术
汇编语言上机指导
许向前 主编;崔素丽 副主编;李建俊;张慧明;孙曼曼
汇编语言的编程艺术
汇编语言编程基础 基于LoongArch
孙国云 敖琪 王锐
汇编语言的编程艺术
汇编语言:基于x86处理器
[美]基普·欧文(Kip R.Irvine)
汇编语言的编程艺术
汇编语言与计算机系统组成 第2版
李心广 张晶 潘智刚 罗海涛 编著
汇编语言的编程艺术
汇编语言
钱晓捷
汇编语言的编程艺术
汇编语言程序设计
刘慧婷 吕钊
汇编语言的编程艺术
汇编语言程序设计 刘爱琴
刘爱琴李世扬 主编
汇编语言的编程艺术
汇编语言
郭乐江
您可能感兴趣 / 更多
汇编语言的编程艺术
逻辑是练出来的:论证与批判性思考方法训练
[美]大卫·莫罗安东尼·韦斯顿
汇编语言的编程艺术
劳特利奇健康传播研究手册
[美]特蕾莎·L.汤普森;[美]南希·格兰特·哈灵顿
汇编语言的编程艺术
长寿简史【奥巴马推荐】史蒂文·约翰逊 著
[美]史蒂文·约翰逊
汇编语言的编程艺术
成为职场中温柔而坚定的存在
[美]弗兰·豪泽(FranHauser)
汇编语言的编程艺术
征服者威廉
[美]雅各布·阿伯特(jacobabbott)
汇编语言的编程艺术
孩子,值得!:成就坚韧自律的璀璨人生
[美]芭芭拉·科卢梭
汇编语言的编程艺术
业务分析:实践指南
[美]ProjectManagementInstitute(项目管理协会)
汇编语言的编程艺术
GO语言入门 第2版
[美]乔恩·博德纳(JonBodner) 著
汇编语言的编程艺术
美的,艺术的
[美]伊丽莎白·普雷特约翰
汇编语言的编程艺术
科伯特药物安全和药物警戒手册
[美]巴顿·科伯特(BartonCobert);[美]威廉·W.格里高利(WilliamW.Gregory);[法]让-卢普·托马斯(Jean-LoupThomas)
汇编语言的编程艺术
《了不起的飞猫》
[美]厄休拉·勒古恩S.D.辛德勒 著朱墨  译
汇编语言的编程艺术
圣路易斯雷大桥
[美]桑顿·怀尔德著但汉松 译