Every high level language program (such as C and C++) is converted by a compiler into assembly language before it is linked into an executable program. This book shows you how to view the assembly language code generated by the compiler and understand how it is created. With that knowledge you can tweak the assembly language code generated by the compiler or create your own assembly language routines.
The assembly introduction is rudimentary, omitting detailled (and, in the case of the optimisation chapter, even important) information, nor does it really help actually using the tools (such as gdb) beyond a synopsis (which is short enough to be completely useless in practice). It also endorses and uses AT&T syntax, which is a no-go for i386 (and some other) architectures.
If I remembered who recommended it to me, I’d enlighten them otherwise…
It was very good book which covered the basics of assembly language and linux programming interface. It is the only book I know that inspects assembly language in linux environment.
Very helpful, it also covers Linux api and useful information about CPU, static and shared libraries in linux, using assembly inside c/c++ programs, etc...
این کتاب هم ترجمهاش یکی دو سال پیش اومد تو بازار دیر متوجه شدم :(( اکثر کتابهای اسمبلی قدیمی هست و با mnemonicهای کامپیوترهای قدیمی آموزش دادهاند. اما خوبی این کتاب این هست که با مجموعه کامپایلر gcc کار میکنه. مخصوص بچههایی که با لینوکس کار میکنند و میخواهند اسمبلی را یاد بگیرند. حتا یک فصل از کتاب در مورد ارتباط با System Callهای لینوکس هست. جهت برقراری ارتباط با سیستمعامل