Dienstag, 18. Oktober 2011

C und die Welt von Assembler - Teil 1

Assembler - need to know
Um Prozessoren programmieren zu können benötigt man eine Programmiersprache. Nun gibt es unzählige, verschiedene Sprachen, neben den bekannten Sprachen wie C, C++, C#, Turbo Phyton und Pascal gibt es den Assembler.
Assembler ist eigentlich ein Übersetzer oder Compiler welcher den "Assembler"(Programm)-Code in die Maschienensprache übersetzt.
Die Maschienensprache ist die Sprache des Prozessors welche aus null und eins besteht:
Als Beispiel Übersetzt er folgende Befehle in den Maschienencode:

Da das Dualsystem (0101 1100)  ungeeignet zum Programmieren ist, benützt man einen Assembler und schreibt das Programm im Assembler Code(mov). Dies ist viel einfacher und erspart viel Zeit.
Je nach Prozessor können die vorhandenen Befehle variieren. In den gebräuchlichen PC's werden allerdings Prozessoren verwendet, welche mit dem 8086 von Intel kompatibel sind. So gibt es doch noch eine gewisse Kompatibilität.
Im Gegensatz zu anderen höheren Programmiersprachen wie C oder Java, benötigt der Assembler für jeden Schritt eine Anweisung. Wobei bei den Hochsprachen mit einer Anweisung mehrere Schritte ausgeführt werden. Dies führt automatisch zu mehr Befehlen, für gleiche Anwendungen.

Einige Gründe für die Verwendung von Assemblersprache:
  1.  Treiber werden weitgehend in Maschinensprache geschrieben.
  2. Anspruchsvolle Programme (z. B. Spiele) werden meist erst in einer Hochsprache
    geschrieben - und laufen unzumutbar langsam. Ersetzt man später einige kritische (am häufigsten durchlaufene) Programmteile durch Maschinensprache, wird das gesamte Programm wesentlich schneller. Ersetzt man nur ein Prozent des Programms an den richtigen Stellen durch Assemblercode, läuft das Programm 10- bis 100-mal schneller!
  3. Jeder Compiler erzeugt auch aus einer Hochsprache ohnehin letztlich ein Programm in Maschinensprache. 
  4. Bei industriellen Steuerungen mit Echtzeit-Anforderungen, d.h. die sofort reagieren müssen, ist die Verwendung von Maschinensprache häufig notwendig.
  5. Beschäftigung mit Maschinensprache erfordert und fördert zugleich das Verständnis für das Funktionieren der Hardware.


Gratis Assembler zum Üben. :


C - simple programs
---------------------------------------------------------------------------------
Captain Malgardi
Malgardis Crew
become a fan on Facebook : Malgardi Fan!

1 Kommentar: