Engineering A Compiler

Just finished reading this:

Photo of the book Engineering A Compiler

A very professional and elite book; if you are interested in compilers this book will probably be a good start for people that want to program one. I'm guessing if you have a degree, masters, or PhD in Computer Science then you will probably get more out of this book than I did. It mainly discusses the front end of the compiler, such as scanners and parsers. It also discusses intermediate representations, optimisations, and has a chapter on register allocation. If you want to program an assembler, then I'm guessing your best bet would be to refer to the specific processor manuals. Having said that, it did inspire me to want to delve deeper into x86 assembly programming...