Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
faecher:informatik:oberstufe:techinf:assembler:einfuehrung:start [22.07.2021 10:44] – sbel | faecher:informatik:oberstufe:techinf:assembler:einfuehrung:start [Unbekanntes Datum] (aktuell) – gelöscht - Externe Bearbeitung (Unbekanntes Datum) 127.0.0.1 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | {{ : | ||
- | ====== Einführung Assembler ====== | ||
- | |||
- | Das Hauptelement eines Computers ist der Mikroprozessor. Die Aufgabedes Mikroprozessors ist es, Daten zu manipulieren, | ||
- | |||
- | Über ein **Leitungssystem (Bus)** kann der Prozessor Daten mit Speicher- und Peripheriebausteinen austauschen. | ||
- | Fur die Verarbeitung der Daten verfügt er über einige interne Speicherplätze, | ||
- | |||
- | Jedes Programm, das auf einem Computer ausgeführt wird, wird in viele kleine Einzelschritte zerlegt, die | ||
- | der Prozessor dann ausführt, um Daten mit anderen Teilen des Rechners auszutauschen, | ||
- | |||
- | Ein Prozessor verfügt über eine gegebene Menge an Aktionen, die er ausführen kann((welche das genau sind, hängt von der Prozessorarchitekur ab)), den **Befehlssatz**. Die Befehle des Befehlssatzes heißen | ||
- | Es gibt Maschinenbefehle für den Datenaustausch mit Speicherzellen, | ||
- | |||
- | Maschinenbefehle sind letztlich nur binäre Bitmuster aus Nullen und Einsen, z.B.: | ||
- | |||
- | 00010101 00000000 00101010 10001011 11011000 ... | ||
- | |||
- | Das kann man nun platzsparend Hexadezimal schreiben((Erinnere dich: 4 Bit sind eine Hexadezimalzahl)) | ||
- | |||
- | A1 00 2A 8B D8 ... | ||
- | |||
- | Das ändert jedoch nichts am Umstand, dass die Darstellung für uns Menschen wenig intuitiv ist. | ||
- | |||
- | |||
- | |||
- | Es gibt jedoch Anwendungsfälle in denen man sehr nah an der Hardware programmieren möchte oder muss - wann immer man Kontrolle darüber erlangen möchte, was der Prozessor genau macht. | ||
- | |||
- | Die **Assemblersprache** ist eine fast vollständige 1:1 Repräsentation der Maschinenbefehle des Prozessors, der **Assembler** kann Assemblerbefehle also direkt in Maschinensprache übersetzen - auf diese Weise ist es auch für uns Menschen möglich, dem Prozessor direkte Anweisungen zu geben. Assemblerbefehle bestehen meist aus 3 Buchstaben, den sogenannten **Mnemonics**. | ||
- | |||
- | Die folgende Grafik veranschaulicht die Situation: | ||
- | |||
- | {{ : | ||
- | |||
- | {{simplefilelist>: |