Assemblerbuch für Linux
-
Hallo erstmal
Ich suche ein Assemblerbuch für Linux. Welche Empfehlungen habt ihr?
-
Hoi!
Ich kann dir zwei Bücher sehr ans Herz legen. Das eine wäre
Professional Assembly Language (Programmer to Programmer) by Richard Blum
Es ist eines der wenigen Bücher mit AT&T Syntax Beschreibung und Anwendung. Der Titel des Buches ist vielleicht verwirrend wegen "Professional" aber mach dir keine Sorgen es ist durchaus auch für den Anfänger geeignet.
Das zweite wäre
Assembly Language Step-by-Step: Programming with Linux by Jeff Duntemann
Ein ziemlich gutes Basics Buch. Momentan gibts nur ein etwas ältere Auflage zu kaufen aber wenn du noch ein wenig Geduld hast und bis Oktober 2009 warten könntest wäre es sicher empfehlenswert. Ich kenne Jeff er meinte bei nem Gespräch er schreibt jetzt dieses neue Buch mit Fokus auf Linux. Also noch ein wenig warten
Ich hoffe das hilft dir weiter
Greetings
-
Laeuft das Linux denn ueberhaupt auf einer x86-Architektur?
Damit wird auch schon klar, dass Assembler am plattformunabhaengigen Konzept von Linux vorbei zielt.
Es ist auch nicht unbeding notwendig unter Linux den AT&T Syntax zu benutzen.
Google kennt diverse Seiten die ein einfuehrendes Buch ueberfluessig machen.
-
assembler ist doch architektur/ processorabhängig?
oder täusch ich mich da, in X86 zb. was eh am verbreitensten ist:
16 bit AX 16bit register
32 bit EAX 32bit register
64 bit RAX 64bit registerund die ganzen processor erweiterungen wie SDD 3dNow etc..
bin leider auch nicht besonders gut was die sprache assembly betrifft
-
welchen untersied mach da ob windows oder linux ?????
-
punky schrieb:
welchen untersied mach da ob windows oder linux ?????
erstmal keinen, aber sobald du irgendwas vom Betriebssystem willst (Dateihandles, Consolenausgabe, GUI) natuerlich schon.
-
Ein Buch für Linux Assembler kenne ich nicht. Aber in der FAQ findest du ein paar Tutorials: http://www.c-plusplus.net/forum/viewtopic-var-t-is-39778.html
punky schrieb:
welchen untersied mach da ob windows oder linux ?????
Unter Windows ist die Intel-Syntax und unter Linux die AT&T-Syntax verbreiteter.
-
Ein Buch für Linux Assembler kenne ich nicht.
siehe Beitrag von mir weiter oben..sind zwar nicht GENAU für Linux jedoch wird die AT&T syntax mit guten Einführungsbeispielen erklärt. (zumindest das Buch von Richard Blum erfüllt diesen Zweck, das andere Buch erscheint erst Okt/Nov und ich kann daher noch kein Statement abgeben..
Da gäbe es noch Linux Assembly Language Programming von Bob Neveln
IMHO ist dieses Buch etwas chaotisch aufgebaut. Siehe auch Kommentare der Leser bei Amazon
-
also bei mir hat der Netwide Assembler sowohl unter Windows als auch unter Linux die gleiche Syntax xD
weiß jetzt allerdings nicht, ob das Intel oder AT&T ist
punky schrieb:
welchen untersied mach da ob windows oder linux ?????
ganz einfach, unter Windows rufst du Bibliotheksfunktionen per call auf
diese liegen ind en System-DLLs (kernel32.dll, user32.dll, ...)
die calls laufen über das "Standardcall"-Verfahren, unter C/C++ auch als __stdcall bekannt^^
das heißt, Parameter werden rückwärts auf den Stack gepusht und dann kommt der call.
Stack aufräumen ist nicht nötig, das macht die API-Funktion selber.unter Linux vernwendet man sogenannte "Syscalls", die laufen über einen bestimmten Interrupt
(hab leider gerade die Nummer vergessen, schon ewig nix gemacht xD)
Parameter werden in den Registern übergeben.MfG DrakoXP