x86汇编语言:从实模式到保护模式(第2版)
李忠 王晓波 余洁
第2版前言
时间过得真快,从本书第1版面市至今,十多年嗖嗖过去了。当初写这本书完全是意气用事,年少轻狂,就是觉得我可以把汇编语言讲得更好,就单纯是为了改变汇编语言的教学现状和教学方法。在我看来,汇编语言不单是一门程序设计语言,学习汇编语言指令、掌握汇编语言程序设计的方法和技巧固然重要,但更重要的是,它是面向硬件的语言,天生是为了控制硬件的。因此,一本好的汇编语言教材一定不是单纯地介绍汇编语言本身,它必须是以如何控制处理器和其他外部硬件为主线的,在这个过程中引入汇编指令和硬件原理方面的内容,最终使读者对计算机工作原理的认识达到熟悉其脉络的程度。
以上就是创作本书的初衷。现在看来,这个目标基本上算是达成了。同时,我还有一个意外的收获,那就是,很多读者认为这本书有助于学习操作系统,认为它对理解操作系统非常有帮助,这也算是无心插柳吧。
为什么一本讲汇编语言的书反而成了操作系统课程的前导教材呢?其实仔细想想也不难理解。对于一台计算机来说,处理器是硬件的核心,而操作系统是软件的灵魂。因此,编写操作系统的人和设计处理器的人拥有共同的客户。为了拉住他们共同的客户,取得客户欢心,编写操作系统的人会给设计处理器的人提意见,告诉他们如何改进处理器的设计以方便操作系统和应用软件的开发。处理器的很多指令是为操作系统设计的,它的一些工作模式也是为了给操作系统提供支持,这一点在64位处理器上尤其明显。
基于以上原因,当一名作者以处理器的工作模式为主线,同时融入指令的功能、应用和设计思想而写出一本书时,甚至连他自己都可能惊奇地发现,他写的其实是一本和操作系统密切相关的书。
图书的内容是结构化的,是按照主题来组织和编排的,但如此一来就会失去学习和理解上的连贯性。为此,从2019年开始,我推出了与本书配套的视频课程。视频要求学习过程具有很强的连续性,且要求学习曲线更加平滑,而写书则没有这种压力。
图书出版的…