汇编语言的编程艺术

汇编语言的编程艺术
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: [美] (Randall Hyde) , ,
2011-12
版次: 2
ISBN: 9787302263739
定价: 69.80
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 582页
字数: 930千字
正文语种: 简体中文
原版书名: The Art of Assembly Language
94人买过
  • 汇编语言是一种低级编程语言,只比计算机本身的机器语言高一级。虽然汇编语言经常用于编写设备驱动程序、模拟器和视频游戏,但是许多程序员认为汇编语言的语法不太友好,很难学习和使用。
    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版
李心广 张晶 潘智刚 罗海涛 编著
汇编语言的编程艺术
汇编语言
钱晓捷
汇编语言的编程艺术
汇编语言程序设计
刘慧婷 吕钊
汇编语言的编程艺术
汇编语言程序设计 刘爱琴
刘爱琴李世扬 主编
汇编语言的编程艺术
汇编语言
郭乐江
您可能感兴趣 / 更多
汇编语言的编程艺术
牛津西方音乐史(卷二):17与18世纪音乐
[美]理查德·塔鲁斯金
汇编语言的编程艺术
阿斯顿体态评估
[美]朱迪思·阿斯顿
汇编语言的编程艺术
成为一把柳叶刀
[美]苏珊·波利斯萨钦·杰恩戈登·哈珀
汇编语言的编程艺术
走向无限:加密帝国的崛起与衰落 迈克尔·刘易斯
[美]迈克尔·刘易斯(Michael Lewis) 著;颉腾文化 出品
汇编语言的编程艺术
滤镜世界:人文视野下的算法推荐
[美]凯尔·柴卡著于建军编宋迪帆(KyleChayka) 译
汇编语言的编程艺术
时间旅行者地图——考古技术如何领我们返回过去
[美]马克·d.麦科伊
汇编语言的编程艺术
幸福方程式 追求成功、爱与意义的人生建议
[美]斯科特·加洛韦著白瑞霞 译
汇编语言的编程艺术
重现模拟之声 黑胶唱机设计史
[美]吉迪恩·施瓦茨(GideonSchwartz)
汇编语言的编程艺术
赛珍珠:我的父亲母亲
[美]赛珍珠 著
汇编语言的编程艺术
API设计模式
[美]奥拉夫·齐默尔曼
汇编语言的编程艺术
蛙小弟和朋友们
[美]伊芙·邦廷
汇编语言的编程艺术
钢琴视奏与节奏训练教程 第二册
[美]海伦·玛莱斯凯文·奥尔森