Warum Assembler benutzen?

Assembler als Programmiersprache ist nicht mehr sehr populär heutzutage. Normalerweise wird eine dritte oder vierte Generationssprache benutzt.

Normalerweise - für "08/15" Anwendungen - ist dies genau richtig. Es gibt aber Situtationen in denen es nötig ist die Argumente für und gegen Assembler genau zu betrachten.

Auf der einen Seite sind die Argumente gegen die Benutzung von Assembler zum grossen Teil Vorurteile, auf der anderen Seite sind die Argumente für die Benutzung relativ unbekannt. Wenn man die Vorurteile gegen Assembler kennt und die Vorteile nicht kennt, wird es sehr schwer eine objektive Entscheidung bei der Wahl der Programmiersprache zu treffen.

Eine Regel bleibt wichtig - wie für jede Programmiersprache: ohne gut ausgebildete Leute kommt man nirgendwo hin, ohne gute Dokumentation enden Sie gar an einer unbekannten Position.

Unten finden Sie eine Übersicht über die wichtigsten Vorteile von assembler. Dannach werden wir versuchen die Vorurteile zu beseitigen. Wir beenden mit einer kurzen Zusammenfassung.

Die Vorteile von Assembler.

Das Arbeiten mit Assembler bietet eine Reihe von Möglichkeiten, welche nicht (in dieser Gesamtheit) verfügbar sind für 3GL- oder 4GL-Programmierer.

Die Vorurteile gegen Assembler.

Es gibt verschiedene Vorurteile gegen das Arbeiten mit Assembler. Die Wichtigsten sind:

  1. In Assembler ist strukturierte Programmierung unmöglich.
    Dies ist nicht wahr. In diesem Bereich bietet Assembler tatsächlich mehr Möglichkeiten als viele 3GLs.
  2. Pflege von Assemblerprogrammen ist viel teurer als die Pflege von 3GLs.
    Als 3GLs eingeführt wurden mag dies gestimmt haben. Aber heute ist diese Aussage durchaus debatierbar.
  3. Assembler ist eine umständliche Sprache, und schwer zu lernen.
    Assembler ist in der Tat ein bischen weniger lesbar für den Laien als z.B. COBOL. Sprachen wie C und C++ auf der anderen Seite sind viel schwerer zu beherschen.
Zu 1.
In Assembler ist strukturierte Programmierung unmöglich.
Struktur in Programme zu bringen ist zu Allererst eine Frage des Stils und der Arbeitsmethode. Wenn die benutzte Programmiersprache gute Möglichkeiten in diesem Bereich bietet, kann das eine Hilfe sein, aber nicht mehr.
Zu 2.
Die Pflege von Assembler Programmen ist weit teurer als die Pflege von 3GLs.
Als 3GLs zuerst eingeführt wurden, gab es eine breite Basis existierender Assembler Programme. Weil strukturierte Programmierung relativ neu in jenen Tagen war, liesen diese Programme vieles zu wünschen übrig, wenn es um Struktur ging. In Assembler - wie in jeder anderen Sprache auch - kann man beliebig viel oder wenig Struktur erzeugen. Mit allen Konsequenzen für die spätere Pflegbarkeit.
In Assembler gibt es mehr Möglichkeiten, als in vielen 3GLs ein Chaos anzurichten. Dank der Macro-Möglichkeit gibt es aber mehrere wichtige Optionen mehr Struktur zu erzeugen als in anderen Sprachen.

Eine sehr wichtige Frage ist die Frage des Stils. Ein 3GL-Programmierer der nebenher "ein bischen Assembler" macht, kann sich niemals mit einem professionellem Assembler-Programmierer messen. Die Resultate sind meßbar und zwar nicht nur in der Zeit in der eine gegebene Arbeit erledigt wird, sondern auch in der Qualität des produzierten Kodes. Das Hauptproblem ist demnach: wie finde ich den erfahrenen Profi. Ein Problem das Sie aber immer haben, egal welche Sprache Sie wählen.

Um also einen fairen Vergleich für benötigte Mannpower zwischen Assembler und 3GLs durzuführen, muß man Handwerker mit Handwerker vergleichen und man muß das Alter der Programme (lies: Grad der Strukturierung) berücksichtigen und die Qualität der vorhandenen Dokumentation.

Unsere Erfahrung mit neuen Programmen ist ein ca. 10 bis 20-prozentiger Mehrbedarf für Entwicklung in Assembler. Wenn es um Pflege geht, ist der Unterschied zu abhängig von der Verfügbarkeit von Dokumentation und der Struktur der Programme um sinnvolle Zahlen zu liefern.

Ein Beispiel: Einer unserer Kunden besitzt ein Assembler Modul (von uns) und ein COBOL-Modul. Beide tun exakt dasselbe. Die letzten paar Änderungen wurden von einem Assembler-Programmierer an einem Tag durchgeführt, wohingegen der Cobol-Programmierer 3 Tage brauchte. Obwohl dies außergewöhnlich klingt, zeigt es doch das Pflege eines Assembler Programmes nicht automatisch aufwendiger ist als Pflege eines 3GL Programmes.

Zu 3.
Assembler ist eine umständliche Sprache, und schwer zu lernen.
Wenn Sie von "Laien" abhängig sind, sollten Sie sicher nicht Assembler wählen. Wie mit jeder anderen Sprache werden Sie nur Ihre eigenen Probleme erzeugen.
Natürlich gibt es auch Profies. Diese können nicht nur Assembler programmieren, sondern beherrschen auch die verschiedenen Optionen, die Assembler bietet. Dies ermöglicht eine zügige, effiziente und saubere Arbeit.

Zusammenfassung.

Die Argumente für und gegen den Gebrauch von Assembler können wie folgt zusammen gefaßt werden:

Zusammenfassend unser Tipp: Kein Assembler wenn es nicht sein muß. Auf der anderen Seite, wenn es Gründe gibt, nur nicht genieren; Assembler ist nicht furchteinflössend. Und wenn Sie Assembler einsetzen, bitte nur für die Module die davon profitieren. Der größere Teil Ihrer Anwendung wird wahrscheinlich am besten in Ihrer Lieblings-3GL oder 4GL geschrieben.

Schließlich, für manche Anwendungen gibt es keine Alternative zu Assembler. Dies gilt insbesondere für viele Exits.
Nicht nur das Betriebssystem, sondern auch viele Standard Produkte sind mit Exitpunkten ausgestattet, damit Installationen diese Software an ihre Bedürfnisse anpassen können. Für viele Exits ist Assembler die einzige Sprache. Mit obigen Argumenten sollte dies (ab jetzt hoffentlich) kein unüberwindbares Problem sein.

 

Diese Seite ist Mitglied im einem Web-Ring.
Sie sind eingeladen die Liste der Mainframe-Liebhaber-Internetseiten zu durchstöbern.
Running Tyrannosaurus Rex Dinos sind nicht tod. Sie sind am Leben und fühlen sich wohl in einem Rechenzentrum in Ihrer Nähe. Sie sprechen seltsame Sprachen und betreiben Zauberei mit dem Computer. Und falls Sie auf ihr endgültiges Aussterben warten: Dinosaurier waren die Herren der Welt für 155 Millionen Jahren!
Dinos und andere Anachronismen.
[ Join Now | Ring Hub | Random | << Prev | Next >> ]
 

Nach die Vorteile von Assembler.
Nach die Vorurteile gegen Assembler.
Nach die Zusammenfassung.

Nach die deutsche Homepage.
Nach die allgemeine Homepage.



Hier finden Sie die Logos unserer Sponsoren und die Logos der Web-Standarts an die sich diese Seite hält.