《程序是怎样跑起来的》第十章读后感

第十章讲的是通过汇编语言了解程序的实际构成。我从本章中了解到汇编语言与本地代码之间的对应关系,也就是把汇编语言转换成本地代码的过程。这一章还介绍了函数的调用机制,函数的名称实际上对应于函数的内存地址。本章还对 CPU 解释运行的本地代码和汇编语言的一对一关系、汇编语言的源代码中包含的用来指示汇编器的伪命令、栈的 push/pop 以及调用函数的机制进行了说明。还介绍了局部变量和全局变量的不同、循环等流程控制的实现方式等。
如果直接打开看本地代码的话,只能看到数值的罗列。如果直接使用这些数值来编写程序,就会很难理解。但是可以在本地代码中附带上表示其功能的英语单词缩写。这些缩写被称为助记符。使用助记符的编程语言称为汇编语言。不过,用汇编语言编写的源代码,最终也必须要转化成本地代码才能运行。

除了将本地代码进行反汇编这一方法外,通过其他方式也可以获取汇编语言的源代码。汇编语言的源代码,是由转换成本地代码的指令和针对汇编器的伪指令构成的。伪指令负责把程序的构造及汇编的方法指示给汇编器。不过伪指令本身是无法汇编转换成本地代码的。汇编语言指令的语法结构是操作码+操作数。操作码表示的是指令动作,操作数表示的是指令对象。操作码和操作数罗列在一起的语法,就是一个英文的指令文本。
读了本章之后我对程序的运行机制有了深刻的了解。

posted @ 2024-02-27 15:07  梁恩赐  阅读(0)  评论(0编辑  收藏  举报