64Bit Assembler
lima-city → Forum → Programmiersprachen → Sonstige Programmiersprachen
arbeiten
architektur
assembler
befehl
befehlssatz
bit
einsteigen
entscheiden
erweiterung
http
jeweiligen prozessor
lernen
mode
paar
prozessor
schub
setzen
uni
url
wissen
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Ich verstehe nicht ganz was du meinst, versuche aber ein paar Antworten zu geben.
Generell ist Assemlber(-sprache) verschieden.
Man muss sich also entscheiden, mit welcher "Prozessorfamilie" man arbeiten möchte, da bsp.-weise Assebmbler vom MSP430 anders aussieht als der vom AVR oder ARM oder Intel etc...
Es gibt zwar Parallelen, im Grunde sind sie jedoch unterschiedlich.
Es wäre also gut zu wissen, mit welchem Prozessor/µC du dich auseinander setzen möchtest, da, wie gesagt, es für den jeweiligen Prozessor/µC unterschiedliche (speziell angepasste) Befehlssätze gibt.
Ich hatte das Vergnügen mit MSP430 und MIPS zu arbeiten (im Rahmen einer UNI Arbeit).
Prinzipiell kann ich sagen, dass der 64Bit Befehlssatz (BS) die Erweiterung des 32Bit BSs ist.
Grob gesagt, wird der Adressraum von 32Bit auf 64Bit "aufgestockt".
Welche neue Features durch die Erweiterung dazu kommen, hängt dann mit dem jeweiligen Prozessor/µC zusammen.
MIPS wurde anfänglich mit 32Bit Architektur ausgestattet und später auf 64Bit erweitert.
MSP430 dagegen z.B. ist ein 16Bit Prozessor. -
Die Entscheidung, ob du dich mit 32 oder 64 bit Assembler beschäftigst, ist nicht so wichtig. Erstmal geht es darum die Grundlagen zu lernen und die sind in beiden Fällen ähnlich genug, so dass man sich da keinen Kopf machen sollte.
-
Alles klar, dank euch beiden, lese mich gerade in die klassischen Sachen auf 32Bit Intel ein.
-
Sind bei x86 Prozessoren die Befehle für 32- und 64-Bit nicht eigentlich gleich?
-
my-easytools schrieb:
Sind bei x86 Prozessoren die Befehle für 32- und 64-Bit nicht eigentlich gleich?
Nein, x86 ist "nur" eine 32-Bit-Architektur. Das gerne mal als x64 bezeichnete Prozessormodell AMD64 hat bspw. eine völlig andere Registerstruktur. Guckst du:
* AMD 64
* x(3)86 (32 Bit)
Ein großer Teil der Maschinenbefehle des x86-32-Bit-Mode ist aber quasi als Untermenge im AMD64-Mode enthalten und im Gegensatz zu anderen 64-Bit-Architekturen auch Opcode-kompatibel zu x86. "Nur" ein paar der 1-Byte-Schubs-Befehle hat AMD eingespart.
ajay85 schrieb
..., ich wollte mich demnächst näher mit Assembler beschäftigen
...
Tutorials gerne willkommen :)
http://stackoverflow.com/questions/1575948/advice-for-learning-linux-x86-64-assembly-documentation
http://stackoverflow.com/questions/254963/best-resources-for-learning-x86-64-assembly
http://stackoverflow.com/questions/15297842/intel-x86-64-assembly-tutorials-or-book (zumindest die Links in den Benutzerkommentaren)
... und würde gerne wissen ob es sich lohnt schon mit
64bit Befehlssätzen zu beschäftigen oder erstmal klassich mit 32 Bit einzusteigen?
Was verstehst du unter klassisch? Der erste AMD64-fähige Prozessor erschien vor knapp 11 Jahren (2003). Die Architektur ist noch ein paar Jährchen älter.
Wenn du wirklich richtig klassisch einsteigen willst, musst du auf einer 8-Bit-CPU Assembler lernen, also 8080/8085 und dann mal im Vergleich dazu den Z80 (damit du ein Gefühl dafür bekommst, dass Intel-Architekturen schon immer Mist waren). -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage