Frage von Borgler94, 23

Wie bekommt man unter Linux Assembler zum laufen?

ich habe im Studium jetzt gerade Assembler.. also wir haben damit angefangen.. der Prof. hat uns ein 64 Bit Linux zur Verfügung gestellt (als Virtuelle Maschine) ... der sch. ist aber das der Prof. uns nie gezeigt hat wie man eigtl. ein Assembler Programm startet, sondern nur wie man eins schreibt..

kann mir bitte jemand erklären wie man so ein Programm jetzt ausführt? (Dateiendung der Beispiele ".s")

Google gibt leider rein gar nichts sinnvolles her :/

Hilfreichste Antwort - ausgezeichnet vom Fragesteller
von androhecker, 20

Ihr sollt vermutlich den GNU Assembler verwenden.

Wie man den installiert ist bei den Distributionen unterschiedlich, bei einigen schon vorinstalliert und bei Debian zum Beispiel im Paket binutils, aber auch in gcc enthalten.

Dann kann man den Assembler mit "gcc dateiname.s" starten.

Wenn alles funktioniert wird eine a.out erstellt, diese kann man natürlich dann nennen wie man will. Im Gegensatz zu Windows wird oft gar keine Dateiendung genutzt (aber zB auch ".bin").

Dann einfach wie ein Shell Script oder ein normales Programm mit "./dateiname" starten.

Kommentar von Borgler94 ,

habs jetzt hinbekommen, danke! :)

Antwort
von mAin0x, 15

Also du musst eine Assemblerdatei erst kompilieren (In Maschinencode übersetzen), dann kannst du die fertige Datei (unter Linux  .out) mit ./<DATEINAME> ausführen.

Komisch... ich habe mir das Programmieren selbst beigebracht und in JEDEM Buch geht es (teilweise zu lange) um den Kompiler/ Interpreter.

Aber merke dir einfach, das du für Systemnahe Sprachen immer einen Kompiler benötigst, um den Text in Maschinencode (vom Pc lesbaren Code) umzuwandeln.

Ps. viel Glück im Studium!

Kommentar von Borgler94 ,

Compiler bzw. Interpreter sind mir auch geläufig und ich verwende sie regelmäßig, nur vermeide ich so gut es geht Linux und hatte noch nie zuvor mit Assembler zu tun.

So nebenbei... einfach weil ich es geäußert haben muss... ich mag Assembler nicht, und Linux auch nicht so wirklich ;)

 

Kommentar von mAin0x ,

Hm ich denke Linux ist so unbeliebt, weil man viel im Terminal arbeitet.

Allerdings kann ich nur sagen das jeder, der Grundkenntnisse in bash hat immer OS X oder Linux vorzieht.

Zu Assembler kann ich nicht viel sagen, da ich nur ein kleines Tutorial laß, um mich ein wenig in Nasm (ein Unix Assembler) einzuarbeiten. Und das habe ich nur gemacht, um ein wenig zu verstehen, wie es funktioniert. Und auch ich hasse es. Allerdings finde ich Fortran schlimmer! Es ist schwerer als C, langsamer als Pascal und die Compiler scheitern selbst bei der Aufgabe, ein Leerzeichen zu überlesen!

Keine passende Antwort gefunden?

Fragen Sie die Community