《Programming from the Ground Up》读后感

之所以看这本书,是想了解一些跟汇编相关的知识,打开这本书后就被作者的观点------"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(第一遍看不懂,那就看第二遍;还是看不懂,记住它,回头再看)"吸引了,从2024年6月30到2024年10月11日,期间断断续续的抽空阅读,大概花了11天读完。

这是一本关于通过汇编语言(AT&T语法)入门编程的书。总共十三个章节,介绍了计算机基本结构、汇编语言语法、常用指令、函数、文件操作、内存管理、优化等基本内容,虽然整本书只有300多页,但编程的各个方便也基本涵盖了,和《The C Programming Language》一类书一样,属于非常精简的书。

既然这是一本通过汇编语言入门编程的书,那么是否适合无基础的人作为编程的入门教材?

我的观点是:不那么适合。这本书出版于2004年,当初32位的电脑很普遍,所以里面的汇编代码使用的指令大部分适用于32位的电脑,而如今是2024年,大部分的电脑都是64位的,那么关于寄存器、指令的这两部分的内容,稍微显得有点过时------当然,这并不是说里面的内容没有意义,也不是说里面的代码无法运行。本书的作者为了解决这个问题,在2021年又写了一本书------《Learn to Program with Assembly : Foundational Learning for New Programmers》,介入时间关系,我还没有开始阅读,各位感兴趣的读者不放先从后面一本书读起。

这本书对自己有什么帮助?

看完了一本技术类书籍,不能看完了就完了。有什么收获?于我而言,有一下几点收获:

**1.锻炼了英文阅读能力。**这本书比较简短,所以阅读起来相对来说没有那么困难。同时尽量将范围局限在技术之内,没有过多的涉及国外的历史、人文等知识。不想有些书,不像某些书,每个章节的开始都引用一段其它书的内容------个人真的很不喜欢这种话风格,去掉了对阅读完全没有影响。

2.掌握了AT&T的汇编语法

3.学习了一些优秀的思维方式。 应该说,这是本书让我最满意的一点,作者的很多观点。本人觉得很有指导意义:(1)"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(第一遍看不懂,那就看第二遍;还是看不懂,记住它,回头再看 )"。(2)Therefore, the time to optimize is toward the end of development, when you have determined that your correct code actually has performance problems(在开发即将结束时进行优化,因为这已经确定了代码的正确性,同时也确定了代码确实存在性能问题 )。(3)As a programmer, you will need to be

prepared to be constantly learning and pushing your limits。

最后的最后,推荐一下郭晴霞老师的中译本《深入理解程序设计:使用Linux汇编语言》,看完英文版后,去看了下中文版,中文版翻译质量很高,不想看英文版的,可以直接看中文版。

参考资料

1. 编程

(1)Jonathan Bartlett,《Programming From The Ground Up》:https://book.douban.com/subject/1787855/

欢迎搜索及关注:编程人(a_codists)

相关推荐
codists6 天前
《Django 5 By Example》阅读笔记:p105-p164
python·django·编程人
codists8 天前
《Django 5 By Example》阅读笔记:p76-p104
python·django·编程人
codists11 天前
《Django 5 By Example》阅读笔记:p1-p16
python·django·编程人·codists
codists20 天前
《使用Gin框架构建分布式应用》阅读笔记:p393-p437
golang·gin·编程人
codists22 天前
RabbitMQ的Overview Totals是空
rabbitmq·编程人
codists23 天前
《使用Gin框架构建分布式应用》阅读笔记:p212-p233
笔记·golang·gin·编程人·codists·gin框架
codists24 天前
《使用Gin框架构建分布式应用》阅读笔记:p251-p271
golang·gin·编程人
codists1 个月前
《使用Gin框架构建分布式应用》阅读笔记:p127-p142
golang·gin·编程人
codists1 个月前
《使用Gin框架构建分布式应用》阅读笔记:p108-p126
golang·gin·编程人
codists1 个月前
《使用Gin框架构建分布式应用》阅读笔记:p52-p76
gin·编程人