CSAPP深入理解计算机系统(第二版)第三章家庭作业答案

《深入理解计算机系统(第二版)》CSAPP 第三章 家庭作业

这一章介绍了AT&T的汇编指令 比较重要 本人完成了《深入理解计算机系统(第二版)》(以下简称CSAPP)第三章的家庭作业,并与网上的一些答案进行了对比修正。

感谢博主summerhust的整理,以下贴出AT&T常用汇编指令

AT&T常用汇编指令

数据传送指令

指令 效果 描述
movl S,D D <-- S 传双字
movw S,D D <-- S 传字
movb S,D D <-- S 传字节
movsbl S,D D <-- 符号扩展S 符号位填充(字节->双字)
movzbl S,D D <-- 零扩展S 零填充(字节->双字)
pushl S R[%esp] <-- R[%esp] – 4;M[R[%esp]] <-- S 压栈
popl D D <-- M[R[%esp]];R[%esp] <-- R[%esp] + 4; 出栈

算数和逻辑操作地址:

指令 效果 描述
leal S,D D = &S movl地版,S地址入D,D仅能是寄存器
incl D D++ 加1
decl D D-- 减1
negl D D = -D 取负
notl D D = ~D 取反
addl S,D D = D + S
subl S,D D = D – S
imull S,D D = D*S
xorl S,D D = D ^ S 异或
orl S,D D = D | S
andl S,D D = D & S
sall k,D D = D << k 左移
shll k,D D = D << k 左移(同sall)
sarl k,D D = D >> k 算数右移
shrl k,D D = D >> k 逻辑右移

特殊算术操作:

指令 效果 描述
imull S R[%edx]:R[%eax] = S * R[%eax] 有符号64位乘
mull S R[%edx]:R[%eax] = S * R[%eax] 无符号64位乘
cltd S R[%edx]:R[%eax] = 符号位扩展R[%eax] 转换为4字节
idivl S R[%edx] = R[%edx]:R[%eax] % S;R[%eax] = R[%edx]:R[%eax] / S; 有符号除法,保存余数和商
divl S R[%edx] = R[%edx]:R[%eax] % S;R[%eax] = R[%edx]:R[%eax] / S; 无符号除法,保存余数和商

注:64位数通常存储为,高32位放在edx,低32位放在eax。

条件码:

条件码寄存器描述了最近的算数或逻辑操作的

  • 4
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 《计算机系统 第三版》是一本经典的计算机系统概念教材,其中的习题是帮助读者加深对计算机系统原理的理解和应用的工具。以下是对该书的习题的回答。 在《计算机系统 第三版》的习题中,涵盖了计算机系统的多个方面,包括计算机体系结构、操作系统、存储器系统、并发控制、网络通信等。这些习题的目的是帮助读者巩固对教材内容的理解,并通过实践问题的解决来培养解决复杂问题的能力。 举例来说,其中的习题可能包括: 1. 计算机系统体系结构的习题:如理解多级存储器体系结构的原理,设计一个具有多级缓存的计算机系统,并对性能进行评估。 2. 操作系统习题:如深入理解进程管理和线程管理的概念,编写一个多线程的程序,并通过调试和性能分析优化程序。 3. 存储器系统习题:如设计一个虚拟内存系统,讨论页表大小对页面错误率的影响,以及页表的压缩和局部性原理。 4. 并发控制习题:如理解并发控制的一致性和可见性概念,讨论分布式系统中多个进程的并发访问共享资源的问题,如何保证数据一致性。 5. 网络通信习题:如深入理解网络协议的工作原理,设计一个网络协议的通信实验,并进行性能测试与分析。 通过解答这些习题,读者可以加深对计算机系统原理的理解,并且培养解决实际问题的能力。同时,通过实践习题,读者能够更好地应用所学知识,加强计算机系统的实际应用能力。 ### 回答2: "计算机系统 第三版 csapp"是由深入了解计算机系统设计与实现的大师级教材。在这本书中,习题是重要的一部分,旨在帮助读者巩固和扩展他们对所学知识的理解。下面是对该书习题的一些回答和解释。 习题的目的是让读者进一步思考和实践书中所介绍的主题。这些习题包括了各个层面的知识点,例如机器级代码、汇编语言、处理器体系结构、内存层次结构、并发控制、网络编程等等。回答这些习题需要读者对这些主题有着清晰的理解和运用能力。 在回答习题时,读者应该从书中对应的章节中找到相关的信息来辅助解答。这有助于加深对知识点的理解,并且提高问题解决的效率。另外,在解答习题时,也可以参考书中的例子和实验,这样能更好地应用所学知识。 对于习题解答的思路,首先要仔细阅读题目,并且理解问题的要求。其次,要分析问题,找出解决问题所需的关键知识和技巧。然后,运用所学知识和技巧来解答问题,并进行验证和检查。最后,总结解题过程,并且思考问题的拓展和应用。 解答习题需要耐心和毅力。有些习题可能涉及到复杂的概念和技术,需要更多的时间和努力来理解和解答。但通过习题的实践和思考,读者可以更加深入地理解计算机系统的运作原理,提高解决问题的能力。 总之,“计算机系统 第三版 csapp”的习题是深入学习计算机系统设计与实现的重要途径,通过回答习题可以加深对知识点的理解,并提高自己解决问题的能力。在解答习题时,读者需要仔细阅读题目,理解问题的要求,分析问题,并运用所学知识和技巧来解答。通过实践和思考,读者可以更好地理解计算机系统,并提高自己的技术水平。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值