Two weeks back I was in Iceland and chose to take an assembly language tutorial with me. It turned out to be the greatest text I read so far on this subject and is freely available on Wikibooks: Assembler-Programmierung für x86-Prozessoren.
In regular intervals of about five year, or when I stumble upon them by accident, I am intrigued by the computer assembly language. The reason for that is that important parts (not much though, e.g. the Linux kernel is mostly written in C) of the code running on the computer, such as the initial boot sequence or hardware drivers, are written in this language and not understanding it somehow felt always unbearable.
Luckily found by pure chance the tutorial above which I found incredibly helpful and nicely written. Moreover, as it only consists of 100 pages it’s always quite a quick read. I want to therefore recommend this book to everyone interested in this subject.
The version above is of course German – the version I studied. Hence I cannot judge on the versions, but by experience these are nice as well.