Frage:
Ein universall assembler?
Patrick
2006-06-26 13:49:47 UTC
Interesiert sich denn kein mensch mehr für assembler? Will niemand einen "universall" assembler machen? Könnten nicht ein paar von informatikern die Arbeitslos sind oder die nichts besseres zu tun haben , ein neues projekt starten, so in die richtung ein assembler für alle typen von architektur. Ich meine so ein projekt wie es einmahl Linux war wo nur, ein typ die idee hatte und alle anderen mittgearbeitet haben.
Zwei antworten:
2006-07-09 15:09:00 UTC
Ich glaube nicht, dass sich jemand finden würde der ein solches Projekt initiiert. Wie Konrad schon sagte, wäre das Abstraktionsniveau so hoch, dass man auch gleich eine Hochsprache verwenden kann. Wer heute noch einen Assembler benutzt, tut das ja gerade um speziell für eine bestimmte Architektur zu schreiben, vermutlich aus Geschwindigkeitsgründen.



Allerdings kann man mittlerweile sogar mit Java echtzeitfähige Software schreiben (http://java.sun.com/developer/technicalArticles/Interviews/Bollella_qa2.html), deshalb wird sich kaum jemand die Mühe machen, sich mit den kryptischen Befehlen eines Assemblers auseinander zu setzen.
Konrad
2006-06-26 22:35:55 UTC
Das Problem ist, dass Assembler sehr nahe an der Hardware arbeiten. Bei jeder Architektur weichen die Anzahl und Größe der Speicherplätze (Register) voneinander ab. Zudem gibt es bei Assembler für jeden Befehl, denn der Prozessor kennt, einen eigene Assembleranweisung. Bei unterschiedlichen Systemen ist jedochder Befehlsumfang sehr unterschiedlich. Der universelle Assembler müsste sich auf die Eigenschaften der kleinsten Architektur beschränken (kaum Register, wenige Befehle).



Eine andere Möglichkeit wäre es, bestimmte Assembler-Befehle, zu denen es auf einer Architektur keine Prozessorfunktion gibt, durch eine machbare Folge von Befehlen zu ersetzen, die das gleiche macht. Kleine Register könnte man durch virtuell zu einem größerem zusammenfassen. Eine geringe Anzahl von Registern ersetzt man durch Speicher im RAM. Für das alles müsste der Assembler aber so abstrakt sein, dass es keinen Grund mehr gibt nicht stattdessen gleich eine hohe Programmiersprache wie C zu verwenden.


Dieser Inhalt wurde ursprünglich auf Y! Answers veröffentlicht, einer Q&A-Website, die 2021 eingestellt wurde.
Loading...