汇编语言与计算机体系结构

当前位置:首页 > 计算机网络 > 程序设计 > 汇编语言与计算机体系结构

出版社:清华大学出版社
出版日期:2006-1
ISBN:9787302120032
作者:赖斯
页数:633页

前言

  本书特点  汇编语言和计算机体系结构都是难学的课程。传统的汇编语言是如此复杂和特别,以至于即使学习基本概念都可能是一项困难任务。计算机体系结构也有同样的问题,而且更严重。学习汇编语言,我们要研究一个复杂系统;而学习计算机体系结构,则要研究许多复杂系统。  那么怎样才能最有效地学习汇编语言和计算机体系结构呢?本书采用的方法是使用一个简单的计算机模型HIHI非常容易学习,学生可以迅速用HI完成大量任务。另外,学生可以着重学习重要的系统概念,而不是无关紧要的细节。  使用简单的计算机模型介绍基本概念很难说是一项创新技术。但是,本书以两种创新的方式使用Hl模型。第一,HI几乎出现在每一章。结果是连贯的计算机系统的开发,而不是不相关主题的集合。第二,HI不是静态模型,而是有一些学生可以修复的缺陷(事实上是重大缺陷)。HI的缺陷不是本书的缺陷,相反,它们是本书用来使学生参与设计和实现过程的资源。  本书的最重要特点之一是提供大量帮助更好理解的练习。例如,学生可以用c++或Ja-va编写连接器,或者为HI实现一种面向堆栈的体系结构并评估其性能。  因为本书重点在重要的系统概念上面,所以本书为计算机科学和工程领域的高级课程提供了极好的准备。使用本书的学生将具备在高级编程、编译器设计、编程语言设计、操作系统、高级体系结构和计算机工程方面从事重要工作的知识。  HI完美地示范了计算机体系结构和组织的基本方面。但是,它不能示范现代计算机中存在的某些高级功能。因此,笔者在第I4-I6章增加了关于现代系统的材料。这几章涉及存储系统、RISC、CISC、流水线技术、SPARC、Pentium和JVM(Java虚拟机,Java Virtual Machine)。  书中各章可以以不同顺序讲述,某些章节可以跳过(参见后面的每章前提)。例如,第5章(数字逻辑电路)可以在第l章之后的任何时间讲述,或者跳过;第I6章(Java虚拟机)可以在第7章之后的任何时间讲述,或者跳过。

书籍目录

第1章数制1.1简介1.2按位记数制1.3各数制的算术规则1.4数制转换1.5Horner法1.6有符号二进制数1.6.1符号-绝对值表示法1.6.22的补码表示法1.6.31的补码表示法1.6.4加n表示法1.7用2的补码加法计算减法1.82的补码和无符号数的范围1.9扩展2的补码和无符号数1.10溢出1.10.1有符号数溢出1.10.2无符号数溢出1.11分析2的补码数1.12加法器电路1.13门1.14用加法器执行减法1.15比较有符号数1.16比较无符号数1.17正数、负数和无符号数的一致对待1.18浮点数表示法1.18.1科学记数法1.18.232位IEEE754浮点数格式1.18.3下溢、溢出和特殊值1.18.4某些Java程序中的计算误差1.18.5长格式1.19小结1.20问题第2章机器语言2.1简介2.2计算机的组件2.3机器语言编程2.4在sim上运行机器语言程序2.5问题第3章H1汇编语言:第1部分3.1简介3.2汇编语言基础3.3注释汇编语言程序3.4使用标号3.5使用汇编器3.6低级语言与高级语言3.7汇编器工作原理3.8使用dup修饰符3.9操作数字段中的算术表达式3.10指定当前位置3.11字符串3.12org伪指令3.13end伪指令3.14指令的顺序执行3.15问题第4章H1汇编语言:第2部分4.1简介4.2描述指令的简写形式4.3直接指令4.4堆栈指令4.5立即指令4.6I/O指令4.7转移指令4.8间接指令4.9相对指令4.10变址4.11连接指令4.12终止指令4.13高级语言中指令的自动生成4.14调试4.15使用存储映像式I/O4.16equ伪指令4.17Java程序的潜在问题:大小端4.18问题第5章电子学和数字逻辑电路基础5.1简介5.2电子学基础5.2.1导体和绝缘体5.2.2一个简单电路5.2.3有效电压5.2.4电源5.2.5如何避免触电5.2.6晶体管5.2.7电容、电感和阻抗5.3组合逻辑电路5.3.1门5.3.2布尔函数5.3.3最小电路5.3.4使用布尔代数使电路最小化5.3.5摩根定律的图示法5.3.6使用卡诺图使电路最小化5.3.7多路复用器5.3.8解码器和编码器5.3.9半加器和全加器5.3.10一位移位器5.3.11乘法器阵列5.3.12算术逻辑单元5.3.13三态缓冲器5.3.14ROM5.4时序逻辑电路5.4.1SR触发器5.4.2时钟控制D触发器5.4.3时钟控制JK触发器5.4.4边沿检测5.4.5T触发器5.4.6RAM5.4.7二进制计数器5.4.8寄存器5.4.9时钟和序列发生器5.5集成电路5.6问题第6章H1和V1的微级6.1简介6.2H1的微级6.2.1H1的组织概述6.2.2微指令6.2.3存储器数据总线6.2.4存储器地址总线6.2.5寄存器库6.2.6指定微操作6.2.7驱动寄存器库的控制输入端6.2.8整合H1各部分6.2.9分支多路复用器6.2.10定时问题6.2.11微指令格式6.2.12序列发生器驱动的控制输入端6.2.13基本指令集的微代码6.2.14硬件/微代码权衡6.3在sim上使用新的微代码6.3.1如何使用!伪指令6.3.2创建配置文件6.3.3创建二进制微代码6.3.4用新指令集汇编6.3.5在微级上跟踪6.3.6加密微代码6.3.7编写并优化复杂的微代码6.4解释机器语言指令6.5硬接线控制6.6垂直微编程6.6.1使用V16.6.2构成更短的微指令6.6.3汇编垂直微代码6.7问题第7章评估H1的指令集体系结构:第1部分7.1简介7.2哑编译器7.3全局变量7.4局部变量7.5变化的相对地址7.6参数和传值调用7.7返回值7.8需要相对指令的原因7.9确定动态局部变量和参数的地址7.10间接引用指针7.11问题第8章评估H1的指令集体系结构:第2部分8.1简介8.2引用调用8.2.1引用调用的实现8.2.2C++引用参数的概念视图8.2.3不间接引用C++引用参数的情况8.2.4传值调用与引用调用的比较8.2.5常数和表达式作为变元8.3函数重载和重命名8.4结构8.5Java中的指针8.6函数指针8.7数组8.7.1定义并访问数组8.7.2数组作为变元8.7.3Java中的数组8.8控制语句8.9有符号数和无符号数比较8.10多字加法8.11位级操作8.12递归8.13问题第9章高级汇编语言编程9.1简介9.2指向指针的指针9.3引用调用及其他地方存在的潜在错误9.4关系和布尔表达式9.5字符串9.6值结果调用9.7变长变元列表9.8问题第10章连接和加载10.1简介10.2浮动字段10.3显示标题和机器代码正文的程序10.4小s项10.5禁止重定位10.6分别汇编10.7乘法子例程10.8使用库10.9分别汇编的优点10.10启动代码10.11C++模块的分别编译10.12问题第11章用C++或Java实现汇编器和连接器11.1简介11.2编写汇编器11.2.1一个简单汇编器的规范11.2.2操作码表11.2.3符号表11.2.4使用二进制文件11.2.5读取输入文本文件并创建标题11.2.6汇编机器字11.2.7将机器正文写入输出文件11.2.8分析输入11.2.9Java程序的大小端问题11.2.10添加对public、extern和end伪指令的支持11.3编写连接器11.3.1一个简单连接器的规范11.3.2构建P、E、R和S表11.3.3重定位地址并解析外部引用11.3.4添加库支持11.4问题第12章最优指令集12.1简介12.2新增和改进的指令12.2.1mult、m、div和rem12.2.2addc和subc12.2.3scmp12.2.4ucmp12.2.5shll和shrl12.2.6shra12.2.7addy12.2.8or、xor、and和flip12.2.9cali12.2.10sect和dect12.2.11sodd12.2.12esba、reba、bpbp、pobp和pbp12.2.13cora12.2.14bcpy12.3链表--使用最优指令集示例12.4关于最优指令集的进展报告12.4.1主存储器的数量不足12.4.2存储器存储字符串的效率不高12.4.3缺少加和减的立即指令12.4.4缺少变址寄存器12.4.5累加器型寄存器太少12.4.6swap指令破坏sp寄存器12.4.7缺少乘法和除法指令12.4.8sp寄存器作为栈顶指针和基址寄存器的双重用途12.4.9难以获得堆栈上变量的地址12.4.10缺少块复制指令12.4.11难以调用地址已知的函数12.4.12aloc和dloc指令的局限性12.4.13难以执行有符号数和无符号数比较12.4.14难以执行多字加法12.4.15不支持位级操作12.5问题第13章使用、评估并实现最优指令集和堆栈指令集13.1简介13.2H1上的乘法13.3二维数组13.4汇编语言中的面向对象编程13.4.1C++的结构、类和对象13.4.2继承13.4.3通过指针调用成员函数13.4.4虚函数和多态性13.5名调用13.6面向堆栈的体系结构13.6.1体系结构与组织13.6.2以栈顶代替ac寄存器13.6.34位操作码的可用性13.6.4特殊的堆栈操作13.6.5更简单的编译13.6.6返回值13.6.7使用堆栈指令集示例13.6.8比较最优指令集和堆栈指令集13.6.9关于JVM的几点观察13.7编写最优和堆栈指令集的微代码13.8微编程的挑战13.9问题第14章存储系统14.1简介14.2地址的传送14.3多程序系统14.4直接存储器存取14.5分时系统14.6重定位寄存器14.7虚拟存储器14.7.1简单分页系统14.7.2关联存储器14.7.3中断14.7.4请求式分页14.7.5请求式分页的页面替换策略14.7.6页面大小的考虑14.7.7超级用户/用户模式14.7.8存储器保护14.7.9分页的分段14.8高速缓冲存储器14.8.1缓存的替换策略14.8.2写策略14.8.3存储器到缓存的映射方案14.9可共享的程序14.10问题第15章某些现代体系结构15.1简介15.2CISC与RISC15.3SPARC:RISC体系结构15.3.1重叠的寄存器窗口15.3.2保存和恢复指令15.3.3加载和存储指令15.3.4转移、call和jmpl指令15.3.5指令流水线15.3.6连接指令15.3.7寻址方式15.3.8一个简单的汇编语言程序15.3.9合成指令15.3.10编译器生成的代码15.3.11存储映像式I/O15.4Pentium:CISC体系结构15.4.1寄存器结构15.4.2汇编语言15.4.3编译器生成的代码15.4.4I/O指令15.5问题第16章Java虚拟机(JVM)16.1简介16.2JVM的结构16.3某些使用操作数堆栈的普通操作16.4方法的调用和返回16.5执行引擎的实现16.6明智之举:JVM使用堆栈体系结构16.7一个简单的例子16.8常数池16.9类文件格式16.10字节码的空间效率16.11控制语句16.12反汇编类文件16.13对象和数组16.14JVM:抽象机器16.15问题附录A指令集汇总(s.txt、b.txt、o.txt、k.txt)附录B微指令级汇总(mic.txt)附录C标准指令集的微代码(s.has)附录DSPARC汇总(sparc.txt)附录Ejava虚拟机字节码汇总(jvm.txt)附录FASCII汇总(ascii.txt)附录G数制汇总(number.txt)附录H了解C++对Java程序员的帮助

编辑推荐

  通过一个逐步完善的计算机模型来演示基本概念  提供了完整的软件包(包括模拟器、汇编器和连接器等)  包含对C++和Java实现的汇编级分析  每童都有来自多年教学实践的大量练习

作者简介

《汇编语言与计算机体系结构》是一本优秀的汇编语言和计算机体系结构教材?书中通过设计并且逐步完善一个简单计算机模型HI,系统全面地介绍了计算机体系结构和组织,汇编语言、汇编器和汇编过程,C++和Java实现,标准指令集和最优指令集,现代存储系统、SPARC、Pentium和JVM等。《汇编语言与计算机体系结构》对硬件和软件均衡对待,适合作为计算机科学、软件工程及相关专业的大学教材?

图书封面


 汇编语言与计算机体系结构下载 更多精彩书评



发布书评

 
 


精彩书评 (总计2条)

  •     好书不多,但也不少,所以大家肯定也得有选择性的看,去选择看哪些书。我电脑全自学的,经常到处找人问,后来找到一个猎豹网校,还不错。都是看视频课程那种,真是学起来容易多了。而且有老师随时可以请教指点,这比自己单纯看书,理解得更容易了。
  •     有没有人能够给我发一份这本书的软件包。我实在是找不到哦lj20072045@163.com求求各位好心人啦在下感激不禁

精彩短评 (总计9条)

  •     当时读的时候很激动。现在汇编忘得七七八八了,总有种怀念的感觉。
  •     同求 软件包,有答案,论坛地址最好,PS:楼上的连接不可用。。。
  •     我的邮箱1020687749@qq.com
  •     给你一个地址。去哪里下载吧。我自己就是在那里下的
    http://www.course.com/studentcenter/downloads.cfm?isbn=978-0-534-40527-4&CFID=43329878&CFTOKEN=47256655
  •     买了本破败不堪的二手书,虽然没有不缺。但是书很破了,刚把书修补完。好辛酸啊
  •     这是我读过的最好的对于c语言以及就底层数据结构描述的书籍,而且翻译非常棒
  •     旧时误打误撞买来没看过,现在看来何其爽快。amazon评论非常好http://www.amazon.com/Assembly-Language-Computer-Architecture-Using/dp/B006GIRYVI
  •     教材,没啥好说的
  •       有没有人能够给我发一份这本书的软件包。我实在是找不到哦
      lj20072045@163.com
      求求各位好心人啦
      在下感激不禁
 

外国儿童文学,篆刻,百科,生物科学,科普,初中通用,育儿亲子,美容护肤PDF图书下载,。 零度图书网 

零度图书网 @ 2024