N
Diese 3 (auch recht empfehlenswerten Bücher) sind noch relativ problemlos erhältlich:
Buch vom Rainer Backer. Ziemlich sinvolle Einstiegslektüre, aber kein didaktischer Aufbau, sondern eher Nachschlagehilfe. Aber auch Bekanntmachung mit generellen Programmiertechniken (mit Zeigern z.B. beim Tabellenaufbau) oder auch mit dem immer mal wieder nützlichen Alt-Masm-Format.
Rohde und Roming inkl CD. Teuer, aber auch recht nützlich, weil eher programmiertechnisch eingeführt wird. Zwar auch proof-of-concept-like, und grundsätzlich lowlevel wird gar nicht groß erklärt, deckt aber dafür viele für Einsteiger wichtige Themen ab und nicht zu flach.
Assembler Gepackt von Rhode. Ziemlich nützliches Nachschlagewerk, auch noch, wenn man normalerweise Doku(-pdf)s am Zweitbildschirm liest, das Buch ist übersichtlicher und flexibler nutzbar, auf deutsch und deckt ziemlich viele Fragen ab.
--------------------------------------------------------------------------------
( 4)Ida 5.0 Freeware. Ist zwar gar kein Buch, und auch noch Werbung für ein, wenn auch nicht schlechtes, kommerzielles Produkt, dass es nur für Windows so schön grafisch gibt, aber Ida klärt ziemlich gut über Interrupts und Systemaufrufe auf, viel besser als jedes Buch.)
Sonst noch:
Weil a) deutschsprachig b) gute Asm und C Einblicke und c) auch sonst eines der besseren Bücher auf dem Markt:
Hacking von Erickson
Weil überdurchschnittlich gut:
Reversing von Eilam - dafür aber nur auf englisch verfügbar und überhaupt weniger auf Einstiegsassembler fixiert.
Weil notwendig:
a) eigener Fahrplan und Projektorientierung.
b) Doku des verwendeten Assemblers. Meistens sind hier schon die wichtigsten Befehle zusammengefasst und es werden einige (machmal auch mehr) Programmiertechniken vorgestellt.
(man könnte sich theoretisch ein Buch sparen, und erstmal gucken, wie weit man mit der jeweiligen Assemblerdoku kommt)
c) Plattformdoku. In vielen guten Dos-Dokumentationen waren meist auch gute Assemblergrundlagen zu finden, weil Dos ja auch Assemblerbasiert war. Die Windows-Doku find ich jetzt z.B. nicht gerade üppig, aber mit den Visual Studiotoos kann man auch sehr gut arbeiten. Für Linux gilt ähnliches. Und Linux ist trotz C-basiert, ziemlich Assemblerfreundlich. Assemblerlernen hier hauptsächlich über den C-Compiler und den gdb.
Weil wir auch Abgucker sind:
http://fabiensanglard.net/quake2/index.php
bleibt offen: 64 Bit Asm. Aber: ist eher für Fortgeschrittene, und die brauchen nur noch Dokus oder die ein oder andere Internetseite dazu lesen.
Vorgehensweise also: Fundierte Grundkenntnisse aufbauen, Programmiertechniken in Assembler, Algorithmen, viel Code abgucken, dann ist ist der Übergang nach 64 Bit leicht. 64Bit-Asm ist ein klein wenig anders, aber mit guten Grundlagenkenntnissen und leicht fortgeschrittenen Programmiertechniken leicht anzueignen. Das gute an dieser Vorgehensweise ist, dass man, wenn noch Fragen offenbleiben, Nachschlagebände o.ä. eben nicht ohne Fragen nach Antworten absuchen muß.