《Programming from the Ground Up》学习第1天,p1-18总结,总计18页。
一、技术总结
1.fetch-execute cycle
p9, The CPU reads in instructions from memory one at a time and executes them. This is known as the fetch-execute cycle。
2.general-purpose vs special-purpose
(1)general-purpose: 通用的,翻译的时候为了简洁性,可省略“的”字。例如:general-purpose register——通用寄存器。
(2)special-purpose:专用的,翻译的时候为了简洁性,可省略“的”字。例如:special-purpose register——专用寄存器。当然,也可以翻译成“特殊的”。
3.addressing mode
(1)immediate mode(立即寻址)
(2)direct addressing mode(直接寻址)
(3)register addressing mode(寄存器寻址)
(4)indexed addressing mode(变址寻址)
(5)indirect addressing mode(间接寻址)
(6)base pointer addressing mode(基址寻址)
其实这里是重点,但是书中没有详细的例子,这里先了解概念,继续往下读。
二、英语总结
1.with style
p1, I enjoy the challenge to not only make a working program, but to do so with style。
“with style”的意思是“put some thougt, design and so on into sth, and make sth impressive”。style在这里指的是编程风格,例如:谷歌的编程风格指南https://google.github.io/styleguide/。
2.concept vs conception
参考stackexchange(https://ell.stackexchange.com/questions/7620/concept-and-conception)的回答:
You use conception when talking about an idea or notion that someone has. When used in this sense, it always belongs to someone, or to a group of people. A concept is simply an idea or notion, in an abstract sense. It belongs to no one.
For example, you and I may agree that:
Freedom is a concept.
…in that we both agree that there exists an idea called “freedom.” However, it is possible that:
Your conception of freedom differs from mine.
…in that if we were both asked to define freedom, we would give two different answers. Your mental model of the concept of freedom is your conception of it.
3.frustrate
p1, Most introductory books on programming frustrate me to no end。
frustrate: to make sb feel annoyed or less confident(使xxx沮丧)。
to no end: 无止境的。
所以这句话的意思是“大多数关于编程的介绍性书籍都让我感到无止境的沮丧”。其实自己是理解英文的意思的,但是还想翻译成中文,这个习惯不好。理解英文后应该继续往下读。
4.base on vs base off of
p7, Modern computer architecture is based off of an architecture called the Von Neumann architecture, named after its creator。
在这句话中base off of可以写作base off, 也可以使用base on/base upon。base off美式英语中用得多一点,不那么正式(casual)。base on英式英语中用得多一点,更正式一点(formal)。
5.divide up into vs divide into
p7, The Von Neumann architecture divides the computer up into two main parts - the CPU(Central Processing Unit) and the memory。
这里的divide up into可以使用divide into代替。虽然两者意思差不多,但使用up的时候,有“至多”之意,这种用法比较普遍。
三、其它
1.为什么看这本书?
在看《Compilers: Principles, Techniques and Tools》时,里面有些跟汇编相关的内容,于是想找一些跟汇编有关的书,便发现了这本《Programming From The Ground Up》,读起来挺有意思的——比如作者说“第一遍看不懂,那就看第二遍;还是看不懂,暂且先记住它,后面再回头看”。当然,其实《Programming From The Ground Up》这本书不是介绍汇编语言的,而是已汇编语言作为示例让大家入门编程的。既然觉得有意思,那就看看吧,反正也就326页。
2.学习方法
p2, If you don’t understand something the first time, reread it. If you still don’t understand it, it is sometimes best to take it by faith and come back to it later. Ofter after more exposure to programming the ideas will make more sense.
四、参考资料
1. 编程
(1)Jonathan Bartlett,《Programming From The Ground Up》:https://book.douban.com/subject/1787855/
2. 英语
(1)Etymology Dictionary:https://www.etymonline.com
(2) Cambridge Dictionary:https://dictionary.cambridge.org
欢迎搜索及关注:编程人(a_codists)