《程序是怎样跑起来的》的第十章主要介绍了汇编语言,通过体验汇编语言让读者更深入地理解程序的工作原理。以下是对这一章的总结:
本章让我们体验了用C语言编写的函数调用、局部变量、全局变量、条件分支、循环等语句,在转换成汇编语言之后会变成什么样子。
首先我们要知道汇编语言与本机代码是一一对应的,因为计算机的cpu能够直接解释执行的只有本机代码。用c语言等编写的源代码,需要使用各个编程语言相对应的编译器进行编译,转换成本机代码。
其次,在汇编语言中,每一行都表示的cpu要执行的一个指令。汇编语言的指令的语法是“操作码,操作数”,(也有一些指令只有操作码,没有操作数)其中操作码表示指令的动作,操作数表示指令的对象。
另外本章介绍了被调用函数的工作原理,其中的重点是从栈中取出参数并进行运算,将返回值存入eax寄存器,以及从栈中取出返回目标地址并让流程返回。还介绍了全局变量和局部变量的工作原理,以及循环和条件分支的工作原理。(全局变量可以在程序的所有函数中访问,而局部变量只能在声明它的函数中访问。)
总之,第十章通过让读者体验汇编语言,让读者更深入地理解计算机和程序最根本的工作原理,有助于读者提升自己的编程技术。