关于CSAPP的学习:如何与如同机翻的文字搏斗及如何快速理解冗长的说明

当然最简单快捷的方式就是学好英语然后买一本原文版。

甚至于你可以在英文不怎么太好的情况下购买一本原文版,毕竟CSAPP的用词并不会太难,相对来讲甚至可能会比你平常使用的英语教材还简单,毕竟图文并茂。

比如3.4.2中的

 

3.4.2 Data Movement Instructions
 Among the most heavily used instructions are those that copy data from one location to another. The generality of the operand notation allows a simple data movement instruction to express a range of possibilities that in many machines would require a number of different instructions. We present a number of different data movement instructions, differing in their source and destination types, what conversions they perform, and other side effects they may have. In our presentation, we group the many different instructions into instruction classes, where the instructions in a class perform the same operation but with different operand sizes.
 Figure 3.4 lists the simplest form of data movement instructions- -MOV class. These instructions copy data from a source location to a destination location without any transformation. The class consists of four instructions: movb, novw, mov1, and movq. AIl four of these instructions have similar efects; they dffer primarily in that they operate on data of dfferent sizes: 1, 2, 4. and 8 bytes respectively.

可能大家看到这么长的英文头都大了,别说学习,读完都成了问题。

那么我问大家,中文课本的重点内容会放在哪里,开头吗?肯定不是。教材要考虑如何给予学生一个理由,一个去思考接下来内容为何存在的理由。比如说,其实这里第一整段都是这个,你完~~~~~全可以略读甚至是不看。

重点是第二段文字,第一句话就点出了短期内的最大重心操作——MOV,并于段末介绍了按照移动单位大小进行的分类。

再往后看是位于新一面顶部的图表,这里简单还原一下:

Instruction EffectDescription
MOVS,DD<-SMove
 movb  Move byte
 movw  Move word
 movl  Move double word
 movq  Move quad word
movabsqI,RR<-IMove absolute quad word

 

这就是图文并茂中的图。它的重要性完全临驾于以上两段文字之上,最坏的情况就算你完全不通英语也可以读的半懂不懂的

就是这张必定要记下来背下来的图。

这张图给了什么信息呢?

其一看表头,好的看不懂也没关系。

其二观察竖排文字之间的关系,可以很快发现第一列都有共通的mov指令,并且最后一个字母虽然不同但都与最后执行的操作简写相关(movl不一样)。

其三分析内部逻辑与上文的关联,上文提到过4种按照大小分类的mov指令,分别为1,2,4,8个byte的移动量。观察图表很容易得出movb就是那个移动1byte的,依次类推word=2byte等等等。

好了到这里这一章节到此最重要的部分基本掌握。并不会有多大的阻碍感对不对。

至少比起中文版那种“明明我平时也是用的这语言为什么突然就看不懂”的气氛要好。

另外对于课后习题这种东西,不太好参考上面这种学习方法的话,建议先看答案理清其中一小部分逻辑关系然后自己对应依次类推。


 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值