Vorlage:Überarbeiten
Gegenüberstellung Assembler und Hochsprache
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
- sogar Portierung innerhalb der gleichen Controllerfamilie (z.B. AVR) erfordert Anpassungen wegen unterschiedlichem Befehlssätze
- aufwändig in der Entwicklung, fehleranfällig, schwer zu debuggen und nachzuvollziehen
|
Hochsprache
|
- gute Portierbarkeit
- schnelle Entwicklung
- weniger fehlerabfällig, bessere Fehlersuche
- beim Upgrade auf eine neue Compiler-Version mit besserten Optimierunsstrategien hat man die Optimierungen, ohne die Quelle ändern zu müssen
|
- ineffizienterer Code
- Unsicherheit, wie der Code genau aussieht
|
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
|
Autor: SprinterSB