该书的特点怎么说呢,在保持内容简洁,对初学者友好的同时,兼顾了底层,也就是看完这本书,你至少可以对linux的底层实现有比较清晰的认识,我觉得这本书在对于初学者,甚至远远超过那本备受好评的王爽版本。
一是因为内容已经比较新,16位的dos时代已经过去了,32位汇编在保护模式的操作系统下,其功能已和dos时代相去甚远,该书的更新很及时。16位实模式分段模型到32位保护模式之间跨度还是较大的。而32位过度到64位相对变动较小,主要是引入了新寄存器。
其次,在知识点的阐述上,王爽主要使用的是知识点隔离的手法,也就是不该说的绝对不说。而这本书呢,关键点该谈的绝对不会漏过,没必要谈的(比如指令集的细节)绝对不谈。看的比王爽那本过瘾。当然那,入门书看完要成大师几乎不可能,该书和琢石成器——win32汇编还是各有千秋的,后者注重实例,不过也更多的使用了win32API.linux下要更进一步可能需要看aoa了。。。
三是选用的汇编器不错,nasm,该汇编器为自由软件,代码示例可以比较容易的在各平台上编译(毕竟都是简单例子,没用太多高级的系统调用,况且linux平台中gui也并不统一,这点和win32汇编需要频繁调用系统api不一样。)
四、最后一点吧,其实谈linux下汇编的书实在太少,国内没有引进过。虽然x86 intel汇编书很多,但都是用win32示例。glibc和win32的c函数调用还是有很大区别的,该书的第11章,详细探讨了glibc运行时的一些细节,还是非常有帮助的。