Einführung in Assembler

Die Programmiersprache Assembler ist eine sehr hardwarenahe Programmiersprache. Die Assemblersprache ist je nach Befehlssatz der CPU (Central Processing Unit oder auch Prozessor) individuell zugeschnitten.

Im Assemblercode werden die programmierten Befehle und Operanden grundlegend verständlich für den Menschen dargestellt. Die Grundlage für die  Assembler-Programmierung bilden sogenannte Labels.

Labels sind nur symbolische Namen für Speicheradressen. Diese Adressen können sowohl Daten als auch Programmcode enthalten. Ein Label bezeichnet immer nur die Adresse, nie ihren Inhalt. Labels ermöglichen dem Programmierer im Programmcode zu springen, bzw. an bestimmten Stellen bestimmte Adressen aufzurufen.

Assembler – eine sehr hardwarenahe Maschinensprache

Jeder Personalcomputer verfügt über einen Mikroprozessor, der die arithmetischen, logischen und Kontrollaktivitäten des Computers verwaltet.

Jede Prozessorfamilie hat ihre eigenen Anweisungen für die Handhabung verschiedener Operationen, wie z.B. die Eingabe über die Tastatur, die Anzeige von Informationen auf dem Bildschirm oder die Ausführung verschiedener anderer Aufgaben. Diese Anweisungen werden als „Maschinensprache“ bezeichnet.

Ein Prozessor versteht nur die Maschinensprache, die Zeichenketten von Einsen und Null. Die Maschinensprache ist jedoch komplex für den Einsatz in der Softwareentwicklung. Die Low-Level-Assemblersprache ist also für eine bestimmte Familie von Prozessoren konzipiert, die verschiedene Anweisungen in symbolischem Code und einer verständlicheren Form darstellt.

Wichtige Merkmale zur Maschinensprache Assembler

Folgende Merkmale besitzt die Maschinensprache Assembler:

  • Sie benötigt weniger Speicherplatz und eine geringere Ausführungszeit als andere Programmiersprachen
  • Sie ermöglicht die Entwicklung von hardwarespezifischen  Aufgaben in einer einfacheren Form.
  • Sie ist für zeitkritische Arbeiten geeignet.
  • Sie eignet sich am besten zum Schreiben von Interrupt-Serviceroutinen und anderen speicherresidenten Programmen.

Unterschiede zur Hochsprache C

„Worin liegt der Unterschied zwischen der Assembler-Programmierung und der Programmierung in C?“ Die Programmiersprache C ist eine Hochsprache, das heißt eine höhere Programmiersprache. Programmiersprachen dienen lediglich dazu, dem Programmierer eine Möglichkeit zu bieten, den Code für den Menschen verständlich zu schreiben. Der Computer würde mit einem C-Programm nichts anfangen können. Assemblercode befindet sich bereits sehr nahe am Maschinencode. Er kann daher auch direkt in Maschinenbefehle übersetzt werden, wohingegen die Hochsprachen komplexere Kompiliervorgänge benötigen.

Kompilieren meint das Übersetzen von menschenlesbarem Code zu maschinenlesbarem Code, ein Compiler ist also ein Programm, welches den C- oder Assemblercode in Binärcodes übersetzt. Beim Kompilieren eines Programms in C entsteht mehr Binärcode als beim Kompilieren des Assemblers.

Ein Compiler, welcher für eine höhere Programmiersprache geschrieben wird, muss stark generalisiert geschrieben werden. C-Programmcode enthält zum Beispiel Variablen, diese sind deklariert und in der Regel initialisiert, das heißt sie besitzen einen Bezeichner, einen Wert und sind von einem bestimmten Typ, im Assemblercode jedoch wird jeder Variable zusätzlich eigene Speicheradresse zugewiesen.

Weiterführende Artikel

Teile und bewerte den Artikel zu Einführung in Assembler

1 Bewertungen 1 Stern2 Sterne3 Sterne4 Sterne5 Sterne
Loading...