最近读了一本好书《编码:隐匿在计算机软硬件背后的语言》
单看书名,你可能会觉得这是一本枯燥无味的、死板地介绍计算机科学中各种编码标准的口水书。其实不然,正如作者在本书序中承认的那样,这是一本介绍计算机如何组成及工作的书籍。
整本书400+页(中文版),但是阅读的整个过程很快,从9月1号到今天9月5号,一共5天。读完全书,就一个感觉,很开心。
首先是感叹于作者功力之深厚。全书从继电器到加法器再到计算机、从莫尔斯编码到布莱叶盲文再到二进制编码与浮点数、从机器码到汇编再到高级语言,其中涉及数电、模电、计算机组成原理、计算机操作系统等等等等。而作者都能以深入浅出的语言将这些知识娓娓道来,甚至在其中穿插各种历史与人文知识。我真的给大佬知识的广度和深度跪了。
其次是这本书出现的时机刚刚好。如果你看我之前的博文就会发现,我刚刚读完 《深入理解计算机系统》(CSAPP) 的第二章,紧接着要读的第三章是程序的机器级表示。在这一章中我需要阅读一些汇编代码,老实说,因为不会汇编语言,我对这一章有点抵触。加上我读的是英文原版(比读中文版更容易疲劳,需要适应时间)和开学(9月1号),阅读计划已经被搁置了。所以我才会逛B站,看看各种编程相关的有趣的教程,歪打正着在这个 编程前你最好了解的基本硬件和计算机基础知识(数字电路) 教程评论区发现了这本书。现在读完此书,我对汇编语言产生的背景、原因以及它的基本编码格式有了初步了解,不是那么畏惧了。也有信心继续啃 CSAPP 了。
现在,我打算先学习 汇编语言 ,这对继续读 CSAPP 有帮助,也是以后学习计算机操作系统必不可少的知识。
教材用的是王爽的 《汇编语言》 第三版。
最后,灵魂发问,我花了这么多时间学 CS 相关课程,什么时候能有产出呢?
学吧,别那么功利。至少等啃完 CSAPP ,学过 OS ,学好 数据结构和算法后再问这个问题。