While it's true that assembler is only for a specific chip, the concepts are the same across the board (Much like higher level languages). Where these concepts do come in handy are in such things as scripting, specifically when you have to designe a VM.
Some books that I've found useful:
Compilers: Principles, Techniques and Tools
by Alfred V. Aho, Ravi Sethi, Jeffrey D. Ullman
Game Scripting Mastery
by Alex Varanese
PC programmers don't really need to learn to write assembly IMHO.
Learning to read assembly is a whole different thing and is extremely useful.
As others have said it gives you good insight into how computers work in general. It also lets you answer all those questions this board constantly gets about "which is faster, pointless trivial optimization A or pointless trivial optimization B" because you can just look at the damn compiler output and see that there is no difference. It will also make you a better debugger because you can follow the flow of your program at a much finer grained level as well as letting you debug in the field where you don't always have MSVC handy.
Learning to read assembly is a whole different thing and is extremely useful.
As others have said it gives you good insight into how computers work in general. It also lets you answer all those questions this board constantly gets about "which is faster, pointless trivial optimization A or pointless trivial optimization B" because you can just look at the damn compiler output and see that there is no difference. It will also make you a better debugger because you can follow the flow of your program at a much finer grained level as well as letting you debug in the field where you don't always have MSVC handy.
Quote:Original post by SiCrane
The Art of Assembly is widely recommended for learning assembly language. Though assembly isn't that hard, just tedious. Also, if you can get an assembly reference you can learn quite a bit from just looking at the generated assembly that your compiler produces for C or C++ code. The -S switch for gcc and /FA family of switches for MSVC.
I would recommend this book as well (also a free download)
John B
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement