Assembler auf 64 Bit Prozessoren

Hallo Leute,
ich habe mir vorgenommen mit Assembler anzufangen und wollte fragen ob ich wegen den heutigen 64 Bit Prozessoren irgend etwas besonders beachten muss ( das bezieht sich auf die Sprache, sprich ob ich bspw. den Code den ich auf 32 Bit Systemen entwickelt habe ohne abzuändern weiterverwenden kann ) und ob ich nach wie vor Assembler aus Büchern lernen kann ( die sich auf ältere Systeme beziehen - z.B. dieses Buch hier : http://www.amazon.de/Assembler-Masc...2240/ref=sr_1_1?ie=UTF8&qid=1311645837&sr=8-1)

Bedanke mich schonmal im voraus!
 
Ja, das sollte gehen. Mit genügend Grundlagenwissen in x86 Assembly sollte man sich auch automatisch die nötigen Kompetenzen aneignen um so einen Transfer auf die x86-x64 Assembly machen zu können. Schließlich handelt es sich dabei "nur" um eine Erweiterung der x86-Architektur und somit der Instruktionen, Register, Modi u.ä.
Es ändern sich dann selbstverständliche Dinge wie 64bit Registerbreite und die entsprechende Adressierung, wie auch manche neue Spezialitäten wie RIP-Relative Adressing, was man sich dann aber auch später mal in einer ruhigen Minute anschauen kann. Interessant ist Letzteres vor allem für Shellcodes.

Btw.: Mich irritiert irgendwie der C Code auf dem Deckblatt des Assembly-Buchs aus deinem Amazon-Link. Wer hat sich denn diesen Scherz erlaubt?! :D
 
Bücher zu Assembler

Alle mir bekannten (deutschsprachigen) Assemblerbücher beschreiben den Einstieg in die Assemblersprachen mit Quelltexten in 16 bit. Diese Quellcodes sind unter 64 Bit Betriebssystemen natürlich, wegen der fehlenden 16 Bit Abwärtskompatibilität, nicht ausführbar.

Das wird bedeuten, Du musst mit 32Bit Assembler einsteigen oder ein 32 Bit Betriebssystem installieren (event. als virtuelle Maschine).

Ich wollte vor einiger Zeit ebenfalls mit Assembler beginnen und habe mir daher folgende Bücher gekauft:
ISBN:
9783499612244 Assembler Rainer Backer
9783826617560 Assembler ge-packt Joachim Rohde
9783486200010 Assembler Grundlagen der PC Programmierung E.W.Diterich
9783826614699 Assembler Grundlagen Joachim Rohde
9783772377983 Assembler Programmierung Wolfgang Link

Leider hab ich bis heute noch keine Anleitung zum Einstieg unter 64Bit gefunden, alleine hat mir auch ein bischen die Motivation gefehlt. Vielleicht hast Du Interesse Assembler gemeinsam zu Erlernen dann melde Dich bei mir mittels pn oder mail: oxoxo@kabsi.at

LG oxoxo
 
Hallo oxoxo,

ich arbeite unter Windows. Damals wollte ich mich nur ein wenig in Assembler einarbeiten, um z.B. Crackmes lösen zu können.
Die Unterschiede zwischen z.B. den einzelnen jmp-Anweisungen habe ich mir daher beim Durcharbeiten des Tutorials nicht gemerkt, die schlag ich bei Bedarf nach.
Einige Stellen hab ich auch öfter als zwei mal lesen müssen um sie zu verstehen. Aber im allg. gings ganz gut mit dem Lernen. Irgendwo in Kap. 5 war ich allerdings der Meinung, dass das als Grundlage für mich reicht.
Der gcc wird nach meiner Erinnerung wirklich nur ganz oberflächlich behandelt.

Die auf Seite 17 und 20 beschriebene Assemblierung
"nasm -f coff first.asm"
für Windows und MinGW hat bei mir so nicht funktioniert. Statt dessen hat
"nasm -f win32 first.asm"
geklappt.

Viel Spass und Erfolg
 
Zurück
Oben