Aus RN-Wissen.de
Wechseln zu: Navigation, Suche
Rasenmaehroboter fuer schwierige und grosse Gaerten im Test

K (Gegenüberstellung)
K (Gegenüberstellung)
 
(Eine dazwischenliegende Version von einem anderen Benutzer wird nicht angezeigt)
Zeile 2: Zeile 2:
  
 
{| {{Blauetabelle}}
 
{| {{Blauetabelle}}
 +
|- bgcolor="#ccccff"
 
! | Quellcode
 
! | Quellcode
 
! | Vorteile
 
! | Vorteile
 
! | Nachteile
 
! | Nachteile
  |- valign="top"
+
  |- valign="top"  
 
  | Assembler
 
  | Assembler
 
  | <!--------------------- + Assembler -->
 
  | <!--------------------- + Assembler -->
Zeile 11: Zeile 12:
 
  | <!--------------------- - Assembler -->
 
  | <!--------------------- - Assembler -->
 
* komplette Neuimplementierung bei Portierung auf eine andere Architektur
 
* komplette Neuimplementierung bei Portierung auf eine andere Architektur
* bein Umstieg auf eine andere Architektur muss zuerst ein anderen Assembler-Code erlernt werden
+
* 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
 
* sogar Portierung innerhalb der gleichen Controllerfamilie (z.B. AVR) erfordert Anpassungen wegen unterschiedlichem Befehlssätze
 
* aufwändig in der Entwicklung
 
* aufwändig in der Entwicklung
 +
* Wartung ist schwierig, denn Code wird leicht unübersichtlich
 
  |- valign="top"
 
  |- valign="top"
 
  | '''Hochsprache'''
 
  | '''Hochsprache'''

Aktuelle Version vom 25. Juni 2009, 20:12 Uhr

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.

LiFePO4 Speicher Test