Grundlagen der Informatik: Computer, CPU, Speicher & OS

Eingeordnet in Informatik

Geschrieben am in Deutsch mit einer Größe von 8,39 KB

Was ist ein Computer?

Ein Computer ist eine Maschine, die Daten verarbeiten kann. Er akzeptiert Eingabedaten, verarbeitet diese und gibt das Ergebnis als Ausgabe wieder.

Frühe Rechenmaschinen

Vorläufer heutiger Computer waren mechanische Rechenmaschinen, wie die von Blaise Pascal und Gottfried Wilhelm Leibniz entwickelten.

Babbages Analytical Engine

Charles Babbage entwarf die Analytical Engine, die grundlegende Konzepte moderner Computer beinhaltete:

  • Eingabeeinheit
  • Ausgabeeinheit
  • Speicher (Memory/Store)
  • Steuereinheit (Control Unit)
  • Arithmetisch-logische Einheit (ALU/Mill)

Lochkarten & Tabelliermaschinen

Herman Hollerith entwickelte Lochkarten zur Datenspeicherung und eine Tabelliermaschine, die diese Karten lesen und die darauf enthaltenen Informationen auswerten konnte, beispielsweise bei Volkszählungen.

Beginn des elektronischen Zeitalters

Wichtige frühe elektronische Computer waren:

  • ENIAC (Electronic Numerical Integrator and Computer): Verwendete Vakuumröhren.
  • EDVAC (Electronic Discrete Variable Automatic Computer): Der erste Computer, der ein Programm speichern konnte (Von-Neumann-Architektur).
  • UNIVAC I (Universal Automatic Computer I): Verwendete Magnetbänder als Speichermedium.
  • UNIVAC II: Beinhaltete Ferritkernspeicher.

Computergenerationen im Überblick

Erste Generation (ca. 1940er-1950er)

Basierten auf Vakuumröhren. Diese Computer waren sehr groß und wartungsintensiv.

Zweite Generation (ca. 1950er-1960er)

Ersetzten Vakuumröhren durch Transistoren. Es kamen höhere Programmiersprachen wie COBOL, ALGOL und FORTRAN zum Einsatz.

Dritte Generation (ca. 1960er-1970er)

Basierten auf integrierten Schaltungen (ICs). Dies führte zu einer deutlichen Miniaturisierung der Computer.

Vierte Generation (ca. 1970er-heute)

Gekennzeichnet durch Mikroprozessoren, bei denen die gesamte CPU auf einem einzigen Chip integriert ist. Die Speicherkapazität verbesserte sich, und Speichermedien wie Disketten wurden verwendet.

Fünfte Generation (ab ca. 1980er/1990er)

Fokus auf Parallelverarbeitung, spezielle Hochgeschwindigkeits-Schaltungsdesigns und Architekturen (z.B. für künstliche Intelligenz).

Programmiersprachen

Maschinensprache vs. Hochsprache

Maschinensprache besteht aus codierten Anweisungen (Befehlen), die ein Computer direkt interpretieren und ausführen kann. Sie ist hardwarenah.

Eine Hochsprache (z.B. Python, Java, C++) ist abstrakter und unabhängiger vom spezifischen Computermodell. Sie bietet dem Programmierer bessere Werkzeuge und Lesbarkeit. Programme in Hochsprachen müssen vor der Ausführung in Maschinensprache übersetzt (kompiliert) oder interpretiert werden.

Die CPU: Herzstück des Computers

Die CPU (Central Processing Unit), auch Hauptprozessor genannt, ist ein integrierter Schaltkreis, der Befehle von Programmen interpretiert und ausführt. Sie empfängt Daten von Eingabegeräten, verarbeitet diese und sendet die Ergebnisse an Ausgabe- oder Peripheriegeräte. Ihre Hauptkomponenten sind:

Steuereinheit (Control Unit, CU)

Die Steuereinheit interpretiert die im Hauptspeicher abgelegten Maschinenbefehle und führt sie aus, indem sie entsprechende Steuersignale erzeugt.

Weitere Komponenten der CU

  • Befehlsdecoder: Analysiert den im Befehlsregister (IR) befindlichen Befehlscode und leitet die notwendigen Schritte zu dessen Ausführung ein.
  • Taktgeber (Clock): Erzeugt eine Folge von elektrischen Impulsen in konstanten Intervallen (Taktsignale), die die Aktionen innerhalb der CPU synchronisieren.
  • Sequenzer: Erzeugt auf Basis des dekodierten Befehls und der Taktsignale die elementaren Steuersignale, die die einzelnen Operationen Schritt für Schritt und in der richtigen Reihenfolge auslösen.

Arithmetisch-logische Einheit (ALU)

Die ALU (Arithmetic Logic Unit) führt arithmetische Operationen (z.B. Addition, Subtraktion) und logische Vergleiche (z.B. größer als, gleich) mit Daten durch und liefert das Ergebnis zurück.

Gleitkommaeinheit (FPU)

Ein wichtiger Bestandteil oder eine Erweiterung der ALU ist oft die Gleitkommaeinheit (Floating Point Unit, FPU). Sie ist spezialisiert auf die Durchführung von arithmetischen Operationen mit Gleitkommazahlen.

Register

Register sind kleine, sehr schnelle Speicherbereiche innerhalb der CPU, die temporär Daten und Steuerinformationen halten.

Registergröße

Die Größe eines internen Registers (z.B. 32 Bit, 64 Bit) gibt die Anzahl der Bits an, die der Prozessor gleichzeitig verarbeiten kann.

Benutzersichtbare Register

Dies sind Register, auf die in Assemblersprache direkt zugegriffen werden kann, um die Ressourcennutzung zu optimieren. Man unterscheidet u.a. folgende Kategorien:

  • Adressregister: Enthalten Speicheradressen, an denen sich Daten befinden.
  • Datenregister: Werden verwendet, um häufig genutzte Daten temporär zu speichern.
  • Statusregister (Condition Code Register): Speichern Informationen über das Ergebnis der zuletzt ausgeführten Operation (z.B. Überlauf, Nullergebnis).

Steuer- und Statusregister (intern)

Diese Register sind an der Befehlsausführung beteiligt und meist nicht direkt für den Programmierer zugänglich:

  • Programmzähler (Program Counter, PC): Enthält die Speicheradresse des nächsten auszuführenden Befehls.
  • Befehlsregister (Instruction Register, IR): Enthält den Code des aktuell auszuführenden Befehls.
  • Speicheradressregister (Memory Address Register, MAR): Enthält die Adresse der Speicherzelle, auf die als Nächstes zugegriffen wird.
  • Speicherpufferregister (Memory Buffer Register, MBR / Memory Data Register, MDR): Dient zum temporären Speichern von Daten, die zum Speicher gesendet oder vom Speicher empfangen werden.

Bussysteme: Datenautobahnen

Ein Bus ist ein System von Leitungen, das den Datenaustausch zwischen der CPU und anderen Komponenten (z.B. Speicher, Peripheriegeräten) ermöglicht.

Datenbus

Der Datenaustausch erfolgt über den Datenbus. Er besteht aus einer Reihe von parallelen Leitungen, über die Datenbits gleichzeitig übertragen werden können.

Adressbus

Der Adressbus überträgt Speicheradressen von der CPU zum Speicher oder zu Ein-/Ausgabegeräten. Er legt fest, welche Speicherzelle oder welches Gerät am Datenaustausch beteiligt ist. Die Übertragung erfolgt typischerweise unidirektional von der CPU zu den anderen Komponenten.

Arbeitsspeicher (RAM)

Der RAM (Random Access Memory), auch Hauptspeicher genannt, speichert zwei Arten von Informationen:

  • Das aktuell auszuführende Programm bzw. die Folge von Anweisungen.
  • Die Daten, die von diesen Anweisungen verarbeitet werden.

Jede Speicherzelle im RAM, oft als Byte bezeichnet, kann eine bestimmte Menge an Information (z.B. 8 Bit) speichern. RAM ist ein flüchtiger Speicher, d.h., seine Inhalte gehen verloren, wenn die Stromversorgung unterbrochen wird.

Das Betriebssystem (OS)

Das Betriebssystem (Operating System, OS) ist ein Programm oder eine Sammlung von Programmen, das bzw. die:

  • Den Betrieb der Computerhardware steuert.
  • Dem Benutzer eine Schnittstelle zur einfachen Nutzung des Computers bereitstellt.
  • Alle Prozesse und Ressourcen (wie CPU-Zeit, Speicher, Peripheriegeräte) koordiniert und verwaltet.

Wichtige Komponenten eines Betriebssystems sind oft:

  • Kernel: Der Kern des Betriebssystems, der die grundlegendsten Funktionen steuert.
  • Kommandointerpreter (Shell): Ermöglicht dem Benutzer die Eingabe von Befehlen.
  • Dateisystem: Organisiert und verwaltet Dateien und Verzeichnisse auf Speichermedien.

Verwandte Einträge: