Einzelnen Beitrag anzeigen

blackfin
(Gast)

n/a Beiträge
 
#15

AW: lehrer der mir asm bebringt

  Alt 1. Sep 2012, 00:41
Ich würde an deiner Stelle wohl nicht mit x86 Assembler anfangen, da der Nutzen in dieser Umgebung inzwischen eher marginal ist (zumindest bei "normalen" Anwendungen, da die Compiler inzwischen so gut optimieren...), sondern probieren, mit einem Microcontroller Assembler zu lernen, da man es hier immer noch gut gebrauchen kann und selbst in der Industrie noch viel weiter verbreitet ist als man vermutet (im gegensatz zu x86-Assembler, das meist nur bei hochoptimierten Routinen und / oder in der Treiberprogrammierung noch Verwendung findet, was beides für den Einstieg nicht gerade das richtige ist)
Nimm dir z.B. eine etwas ältere Motorola-MCU und das entsprechende Starter-Board und leg los. Der Vorteil dabei ist, dass der Sinn und Erfolg weit größer ist als wenn du es auf biegen und Brechen auf x86 versuchst
z.B. bau dir damit eine einfache LED-Matrix oder vergleichbares und programmier damit die Firmware in Assembler. Das macht unglaublich Spaß und du siehst auch direkt das Ergebnis deiner Mühe.

Ausserdem findest du im MCU-Bereich noch viel mehr "sinnvolles" im Netz und detaillierte Anleitungen als die sinnvolle Verwendung unter x86, hier kommt es wie gesagt (meist!!) nur bei Hochoptimierung oder bei Treibern zum Tragen.
Ausserdem ist das Verständnis einer kleineren MCU-Architektur meist für den Anfang verständlicher...man hat ja nur beschränkten Speicher und Instruktionen, was gerade beim Einstieg massiv hilft.

Doch selbst bei einer MCU ist es inzwischen so, dass ASM von C immer mehr verdrängt wird, was in erster Linie Gründe hat, was die Langzeit-Wartbarkeit des Codes betrifft (und die MCUs auch immer mehr Flash-ROM bekommen *g*). Assembler ist cool, keine Frage, aber es bedeutet auch immer eine fast vollständige Re-Analyse jeder Instruktion, wenn man den Code nach einiger Zeit wieder "anfassen" muss...das ist wohl der Hauptgrund, warum diese Sprache im Großen und Ganzen für die konventionelle Massen-Programmierung ausstirbt.
Auch wenn es noch so "cool" ist, es ist einfach, für den Menschen gesehen, zeittechnisch nicht sonderlich effektiv und vor allem nicht produktiv, da ein Mensch eben anders "tickt" als eine CPU

Wenn du dann aber MCU-Assembler halbwegs verstehst, wirst du auch ganz schnell in die x86-ASM einsteigen können. Im Endeffekt ist es nämlich dann nichts mehr anderes, nur mehr Instruktionen, (viel) mehr Speicher und viel mehr Möglichkeiten.

Geändert von blackfin ( 1. Sep 2012 um 00:57 Uhr)
  Mit Zitat antworten Zitat