|
korrigieren (wenn z. B. Preis und Artikelnummer nicht
zusammenpassen), Sonderangebote berücksichtigen (auch wenn der
alte Preis noch auf der Ware steht), Preisfragen beantworten und
Absatzstatistiken erstellen.
Kasse und Computer übernehmen also etliche Aufgaben, die
vorher die Angestellten des Kaufhauses erledigen mußten. Eine
weitere Computeranwendung war die Vorbereitung des Flugs und die
Steuerung der Raumschiffe, die Menschen vor nunmehr 30 Jahren zum
Mond und wieder heil zurück zur Erde brachten. Und die damaligen
Computer waren verglichen mit heutigen Maschinen äußerst
primitiv.
Am nächsten Beispiel, der Lohnabrechnung, werden Sie sehen,
worin der Unterschied liegt zwischen dem, was ein Mensch tut, und
dem, was der Computer tut. Schauen Sie sich zuerst die Arbeit
eines Lohnbuchhalters an. Er stellt zuerst anhand der
Stundenabrechnungen und Stempelkarten fest, wieviele Stunden der
Arbeitnehmer gearbeitet hat. Die Stunden werden addiert um die
Gesamtarbeitszeit zu erhalten. Diese Zeit wird mit dem
Stundenlohn multipliziert, und dann werden Steuern und
Sozialabgaben abgezogen. Dabei muß der Buchhalter einige Fakten
aus der Personalkartei heraussuchen - Kinderzahl, Familienstand,
Steuerklasse, Versicherungsnummer etc. Ist die Berechnung
beendet, werden Lohnstreifen und Überweisungsformulare
ausgefüllt und an die richtigen Stellen weitergeleitet.
Der Buchhalter erhält also gewisse Informationen, nämlich
Arbeitszeit, Steuerklasse, Stundenlohn usw.; er verarbeitet dann
diese Informationen nach einem bestimmten Schema und gibt
schließlich neue Informationen, z. B. den Betrag des Nettolohns
an andere weiter. Der Informationsfluß läßt sich also
folgendermaßen skizzieren:
Eingabe |
- |
Verarbeitung |
- |
Ausgabe |
Genauso arbeitet auch der Computer; er erhält aus einer
Eingabestation die Daten über die Anwesenheitszeiten des
Arbeitnehmers. Bereits das Addieren der einzelnen Zeiten wird
"vom Programm" übernommen, das dazu ebenfalls
eingegeben werden mußte. Die eigentliche Verarbeitung erfolgt in
der Zentraleinheit des Computers. Sie besteht im wesentlichen aus
drei Teilen, dem Arbeitsspeicher (dem Gedächtnis des Buchhalters
entsprechend), das Rechenwerk und das Steuerwerk (am besten, wenn
auch stark vereinfacht, den Koordinierungsfähigkeiten des
Buchhalters vergleichbar). Die Personalkartei wird nicht im
Arbeitsspeicher untergebracht, da dieser dafür zu klein ist (der
Buchhalter kann ja auch nicht alle Kontonummern im Kopf
behalten). Für die Personalkartei stehen externe Speicher zur
Verfügung, meist Magnetplatten. Wenn das Rechenwerk mit seiner
Arbeit fertig ist, wird das Ergebnis dann vom Drucker gleich an
die richtigen Stellen in die entsprechenden Formulare
eingetragen.
Im letzten Absatz wurden einige Begriffe erwähnt, so z. B.
Eingabestation, Zentraleinheit, Arbeitsspeicher, Steuerwerk. Die
Erklärungen dieser Begriffe sollen Sie nun erhalten.
Computer-Systeme
Computer sind Systeme, die aus Hardware und Software bestehen.
Jede der beiden Komponenten ist ohne die andere nichts wert. Die
von Ihnen geschriebenen Programme nehmen, damit sie ablaufen,
sowohl die Hardware als auch die Software des Computers in
Anspruch. Die Hardwarekomponenten umfassen alle
"anfaßbaren" Komponenten. Dazu zählt der Computer
selbst und alle Geräte, die daran angeschlossen sind:
Bildschirm, Drucker, Diskettenlaufwerk usw. Die Software ist
"nicht anfaßbar". Sie benötigt zum Transport, zur
Speicherung und zum Funktionieren immer irgendwelche Hardware.
Software läßt sich grob in das sog. Betriebsystem und die sog.
Anwendersoftware unterteilen.
Trotz allem kann man die Software nicht von der Hardware
trennen, da selbst die kleinsten Aufgaben beide in Anspruch
nehmen. Man braucht Hardware, um Daten eingeben zu können, aber
zugleich auch die Software, die den Datenaustausch zwischen
Terminal und Computer steuert. Man braucht Hardware, um Daten
ausdrucken zu können, aber auch die Software, die ein Zeichen
nach dem anderen vom Computer zum Drucker überträgt. Man
braucht Hardware, um mit Zahlen rechnen zu können, aber auch die
Software, die Zahlen für die Berechnung aufbereitet. Die beiden
Komponenten eines Computersystems sind nicht voneinander zu
trennen, trotzdem sollen sie nun nacheinander betrachtet werden.
Hardware
In der zuerst von J. v. Neumann 1947 angegebenen Modellvorstellung eines
Rechners besteht dieser aus vier Funktionseinheiten:
- die Recheneinheit,
- die Steuereinheit,
- den Speicher (Memory) und
- die Ein- und Ausgabegeräte (E/A-Geräte engl.
Input/Output Units oder I/O).
Recheneinheit und Steuereinheit werden oft als Zentraleinheit oder
Central Processing Unit (CPU) zusammengefasst. Die CPU ist das "Herz"
eines Computers. Sie bearbeitet Programme, führt Rechnungen aus
und steuert die Vorgänge in den anderen Teilen.
Der Speicher nimmt alle Daten auf, die der Computer braucht. Das
geht von Daten, die der nächste Programmschritt in einer
Mikrosekunde benötigt, bis hin zu ganz selten gebrauchten Daten.
Schließlich stellen die E/A-Geräte die Verbindung her zwischen
dem Computer und seinem Anwender.
Zentraleinheit
Die CPU besteht aus mehreren Teilen, die eng zusammenarbeiten: Recheneinheit
und Steuereinheit.
Sie enthält mehrere Register für die Aufnahme der Daten, die
bei der Ausführung eines Programms verfügbar sein müssen. So
nimmt z.B. das Befehlsregister den jeweils auszuführenden Befehl
auf. Ein Register kann man sich als schnellen (Zwischen-)
Speicher für ein einzelnes Datenwort vorstellen. Nur der
anstehende Befehl steht im Befehlsregister, daher gibt es - von
der Ausführung her gesehen - keinen Unterschied zwischen langen
und kurzen Programmen oder zwischen schwierigen und einfachen.
Die Befehle enthalten die Informationen über die Speicherplätze
der benötigten Daten; bei der Ausführung des Befehls werden die
Daten bereitgestellt und nach der Bearbeitung wieder abgelegt.
Recheneinheit
Die ALU (Arithmetic and Logic Unit) führt alle Berechnungen
aus und trifft logische Entscheidungen. Ihre Hauptaufgabe ist es,
Vergleiche zwischen Werten vorzunehmen und damit Bedingungen zu
überprüfen. Die Rechenfähigkeit beschränkt sich auf die
Addition, doch lassen sich daraus alle anderen arithmetischen
Operationen aufbauen. Die komplizierten Rechnungen, die der
Computer in kurzer Zeit ausführen kann, setzen sich aus einer
Vielzahl kleinster Schritte in der ALU zusammen.
Steuereinheit
Die Register der Steuereinheit und die Recheneinheit arbeiten Hand in Hand,
die Register der Steuereinheit liefern die Signale zur Steuerung der
gewünschten ALU-Funktion.
Die Verbindung zwischen ihnen (und von ihnen zu den übrigen
Einheiten) wird durch die Steuereinheit hergestellt. Man kann die
Steuereinheit als Schaltzentrale des Computers ansehen, die
alle Datenströme lenkt.
Speicher
Der Speicher nimmt alle Daten auf, dazu gehören die Programme
ebenso wie die von ihnen zu verarbeitenden Werte. Bei der
Verarbeitung werden Zwischenergebnisse im Speicher abgelegt und
schließlich die Endergebnisse. Man unterscheidet beim Speicher
zwischen dem Hauptspeicher (oder Arbeitsspeicher) und dem
externen Speicher. Der Hauptspeicher ist fest im Computer
eingebaut, man kann ihn meist durch zusätzliche Speicherkarten
erweitern. Im Hauptspeicher befindet sich das Programm, das Sie
schreiben oder verändern wollen oder das der Computer bearbeiten
soll. Auch die Daten, die beim Ablauf des Programms benötigt
werden, werden dort abgelegt. Auf den Hauptspeicher kann die CPU
direkt zugreifen, sie kann von dort neue Programmbefehle holen
und kann Daten laden oder abspeichern.
Externe Speicher (Massenspeicher)
Im externen Speicher werden die Programme und Werte
aufbewahrt, die man zur Zeit nicht benötigt. Als Datenträger
werden Festplatten und Disketten (Floppy- Disks) verwendet. Die
Diskette wird ins Diskettenlaufwerk eingelegt und kann dann mit
Daten "beschrieben" werden. Für das Abspeichern von
Programmen vom Hauptspeicher auf die Festplatte oder Diskette
gibt es besondere Kommando des Betriebssystems, ebenso für das
Laden von einem Massenspeicher in den Hauptspeicher.
Ein-/Ausgabe-Geräte
Die Eingabe- und Ausgabegeräte stellen die Verbindung her
zwischen einem Computer und seinem Benutzer, aber auch zwischen
einem Computer und anderen Geräten oder anderen Computern. Ohne
Geräte zur Ein- und Ausgabe könnte man keine Programme eingeben
und keine Daten an ein laufendes Programm liefern, man erhielte
keine errechneten Ergebnisse. Ein Ausgabegerät wie der Drucker
läßt sich einsetzen, um die Ergebnisse der Programmbearbeitung
zu erhalten oder um die Werte auszugeben, die in einem Speicher
abgelegt sind. Ein Eingabegerät wird komplementär eingesetzt,
mit ihm versorgt man die CPU oder den Hauptspeicher durch die CPU
mit neuen Daten.
Vernetzung
Zu den E/A-Geräten gehören auch die Netzwerk-Verbindungen,
mit denen sich mehrere Computer zu einem Verbund
zusammenschließen lassen. Sie erlauben einen sehr schnellen
Datenaustausch zwischen verschiedenen Computersystemen. Ein
Vorteil solcher Vernetzung liegt darin, daß mehrere Systeme
gemeinsam auf periphere Geräte wie Drucker oder Festplatte
zugreifen können. Damit erweitern sich die Fähigkeiten der
einzelnen Maschinen ohne entsprechende zusätzliche Kosten.
Sichtweisen eines Rechners
Der Benutzer eines Rechners sieht von der Maschine je nach seinem Status einen
mehr oder weniger eingeschränkten Teil.
- Der Anwender sieht den Rechner als das ihm zugängliche Anwendersystem, das
genau auf seine Bedürfnisse zugeschnitten ist und mit dem er in einer für
ihn bequemen Sprache Daten manipulieren kann.
- Der Anwendungsprogrannierer sieht den Rechner als das Betriebssystem, das
ihm Compiler für verschiedene höhere Programmiersprachen zur Verfügung
stellt und für ihn Dienstleistungen wie Editor und Dateiverwaltung
bereithält.
Wie das Betriebssystern realisiert ist, braucht auf dieser Stufe den
Anwendungsprogramierer nicht zu interessieren. Für ihn ist "der Rechner"
das Betriebssystem mit den Compilern.
- Der Systemprogrammierer sieht vom Rechner schon sehr viel mehr. Er kann alle
Möglichkeiten der Hardware ausnützen und Programme als Befehlsfolgen
für das Leitwerk schreiben.
Er schreibt diese Befehle aber i.A. in einer für ihn lesbaren Form
(Assemblersprache, siehe später), die noch durch ein spezielles Programm,
den Assembler, in eine Folge von 0 und 1 gewandelt werden muß, die allein
das Leitwerk des Rechners interpretieren kann. Für ihn ist Rechner und
Assembler fast synonym.
- Der Rechneringenieur beim Rechnerhersteller sieht die Hardware des Rechners
in allen Einzelheiten und kennt den genauen Aufbau der Befehle, die sich
z.T. aus Folgen einfachster Steuerkommandos (Mikroprogramm) zusammensetzen.
Hier ist der interne Aufbau des Rechners von Interesse, und die technische
Realisierung von Rechnwerk, Speicher und Leitwerk tritt in den Vordergrund.
Software
Damit kennen Sie nun in etwa den Hardwareaufbau eines
Computers. Es stellt sich jetzt die Frage nach seinen
Einsatzgebieten und nach der Herkunft seiner Fähigkeiten. Seine
Universalität erklärt sich aus den sehr elementaren Maschinenbefehlen,
der Rechnerarchitektur und der Tatsache, daß der Computer,
bevor er überhaupt etwas tun kann, erst in einem Programm
(Software) erklärt bekommen muß, was er zu tun hat. Es gibt
eine rieseige Vielfalt an Progammen, geschrieben für die
unterschiedlichsten Aufgaben, die aber auf ein und derselben
unveränderten Hardware lauffähig sind.
Die Software eines Computersystems kann grob in zwei Teile
gegliedert werden: die Anwendersoftware und das Betriebssystem.
Ein Anwenderprogramm ist für die Lösung einer ganz bestimmten
Aufgabe geschrieben worden, der Anwender setzt es dann (und nur
dann) ein, wenn er eine solche Aufgabe lösen will.
Dagegen ist das Betriebssystem eine anwendungsneutrale
Software. Was die Infrastruktur einer Stadt mit Ihren Straßen,
Buslinien, Trambahnen, Telefonnetz , Fernverkehrsanbindung für
den Einzelnen und die Geschäftswelt ist ,so ist das
Betriebssystem die komfortable standardisierte Umgebung für die
Anwenderprogramme. Möchte man in der Stadt von einem Ort zum
anderen Waren transportieren, so benutzt man mit dem Auto die
bestehenden Straßen und baut keine. Änlich ist es mit den
Anwendungsprogrammen. Sie sind für eine spezielle Aufgabe
geschaffen worden. Der Ersteller möchte sich aber nicht
unbedingt mit der Infrastruktur, der Hardware,
auseinendersetzten.
Das Betriebssystem wird ständig benötigt, um die Vorgänge
in der Hardware zu steuern und um die Wechselwirkung zwischen dem
Computer und seiner Anwendungsprogramme zu koordinieren.
Anwenderprogramme
Wenn man allgemein von Software spricht, meint man meist
Anwenderprogramme, also Programme, die eine spezielle Aufgabe
lösen. Einige typische Anwenderprogramme sind
- Programme zur Textverarbeitung,
- Spielprogramme,
- Programme für Tabellenkalkulation,
- Lernprogramme und
- Programme für die Verwaltung von Dateien,
- Programme für die Verwaltung großer Datenmengen (Datenbanken),
- Programme zum Steuern von Maschinen,
- Programme zum Regeln industrieller Prozesse,
- Programmiersprachen-Compiler
- und vieles mehr.
Wenn Sie in eine Computerzeitschrift schauen, finden Sie viele
weitere Beispiele für Anwenderprogramme. Und auch die Programme
dieses Skriptums sind zu den Anwenderprogrammen zu zählen, jedes
wird für die Lösung eines bestimmten Problems geschrieben.
Betriebssystem
Die "nackte" Hardware eines Computers hat nicht die
Fähigkeiten, ein Anwenderprogramm zu bearbeiten. Auch wenn die
CPU die Vorgänge in der Hardware auf einer niedrigen Ebene
koordinieren kann, es muß eine Verbindung zwischen dem
Anwenderprogramm und der jeweiligen Hardware hergestellt werden.
Die Bearbeitung des Programms erfordert den Einsatz verschiedener
Eingabe- und Ausgabegeräte. Es ist zunächst extern gespeichert
und muß in den Hauptspeicher geladen werden. Diese und viele
weitere Abläufe werden vorn Betriebssystem gesteuert. Es ist ein
sehr umfangreiches Programm, das die Vorgänge in der Hardware
steuert und koordiniert. Der Benutzer braucht sich nicht selbst
darum zu kümmern, wie die einzelnen Schritte bei der Bearbeitung
seines Programms intern ablaufen.
Wenn ein Computer nur ein einziges Programm zu bearbeiten
hätte wie z.B. der Mikroprozessor in einer Waschmaschine, dann
bräuchte er kein Betriebssystem. Die Aufgabe eines
Betriebssystems ist es, eine Umgebung zu schaffen, in welcher
verschiedene Anwenderprogramme ablaufen können. Es bietet
verschiedene Möglichkeiten an, den Computer einzusetzen. Da das
Betriebssystem unerläßlich ist, wird es vom Hersteller
mitgeliefert und läßt sich kaum verändern.
Aufgaben des Betriebssystems
Von den vielen Aufgaben des Betriebssystems sollten Sie einige
kennen. Zum Betriebssystem gehört z. B. ein Programm, das den
Zugriff auf externe Speicher steuert und die gespeicherten
Dateien verwaltet. Bei größeren Systemen und Netzwerken
kontrolliert das Betriebssystem z.B. den Zugang zum Computer mit
der Eingabe eines Paßwortes und organisiert die gleichzeitige
Arbeit, mehrerer Benutzer. Das Betriebssystem ist verantwortlich
für das Speichern und Laden von Programmen und für die
Zuteilung der benötigten Hilfsmittel. Aus der Sicht des
Programmierers ist besonders wichtig, daß vom Betriebssystem her
die Programmierumgebung geschaffen wird. Es liefert die Umgebung,
in der Sie Programme schreiben können, und es steuert den Ablauf
Ihrer Programme. Sie brauchen sich nicht um die Einzelheiten zu
kümmern, das Betriebssystem nimmt Ihnen (fast) alles ab. Die
Entwicklung immer leistungsfähigerer Betriebssysteme hat es
ermöglicht, die Programmier-Arbeit immer komfortabler
zu machen.
Mehr Infos zur Arbeitsweise von Betriebssystemen bietet das Skript
Betriebssysteme.
|
Fazit
Der Computer kann eine einmal programmierte Aufgabe beliebig
oft ausführen. Er ist also für Routineaufgaben, aber auch für
die Verarbeitung so riesiger Datenmengen geeignet, die der Mensch
nicht mehr bewältigen könnte. Wenn es also darauf ankommt, ein
Rechenergebnis unmittelbar nach Eintreffen der Daten zu erhalten,
wird man einen Computer bemühen - oder, wenn Sie wissen wollen,
ob die Zahl 94084005495481 eine Primzahl ist. Um dies
nachzuprüfen, bräuchte man sehr lange; vom Computer erfährt
man schon nach Sekunden, daß es sich um keine Primzahl, sondern
um das Quadrat der Primzahl 9699691 handelt. Die
Datenverarbeitung umfaßt also:
- Daten-Empfang ----------------------------------- lesen, eingeben
- Daten-Speicherung ------------------------------- speichern
/--------- umformen
/-- nach der Form +
/ \--------- rechnen
- Daten-Bearbeitung +
\
\-- nach dem Inhalt --------- ordnen
(sortieren, vergleichen,
selektieren, mischen)
- Daten-Ausgabe ----------------------------------- schreiben, ausgeben
- Daten-Übertragung ------------------------------- transportieren
|
|
|