Aus RN-Wissen.de
Wechseln zu: Navigation, Suche


Gegenüberstellung

Quellcode Vorteile Nachteile
Assembler
  • Prinzipiell der schnellste bzw kürzeste Code, weil man volle Kontrolle über die Maschine hat
  • komplette Neuimplementierung bei Portierung auf eine andere Architektur
  • bei Umstieg auf eine andere Architektur muss zuerst ein anderer Assembler-Code erlernt werden
  • sogar Portierung innerhalb der gleichen Controllerfamilie (z.B. AVR) erfordert Anpassungen wegen unterschiedlichem Befehlssätze
  • aufwändig in der Entwicklung
  • Wartung ist schwierig, denn Code wird leicht unübersichtlich
Hochsprache
  • gute Portierbarkeit
  • schnelle Entwicklung
  • der Compiler kann bekannte Hardware-Bugs umschiffen
  • beim Upgrade auf eine neue Compiler-Version mit besseren Optimierungsstrategien hat man die Optimierungen, ohne die Quelle ändern zu müssen
  • ineffizienterer Code
  • Unsicherheit, wie der Code genau aussieht
  • Compiler sind oft wesentlich komplexer aufgebaut als Assembler, was die Wahrscheinlichkeit von Fehlern im Compiler im Vergleich zu einem Assembler erhöht.
Intermix Hochsprache + Assembler
  • Vorteile von Hochsprache und Assembler
  • nur die Assembler Module/Schnippsel sind schwer portierbar
  • Assembler kann ganz zielgerichtet an kritischen Stellen eingesetzt werden
  • Quellcode bleibt gut lesbar
  • Nachteile von Hochsprache und Assembler
  • die Konvention der Hochsprache muss genau befolgt werden (Registerverwendung bei Funktionsaufrufen, etc.)
  • es sind zwei Sprachen zu beherrschen
  • Objektformat bzw. Compiler und Assembler müssen zueinander passen
  • Je nach verwendeter Mix-Technik (Inline Assembler, Link mehrerer Objekte, dynamisch linkender Bootloader) sind noch zusätzliche Kenntnisse erforderlich.