400 likes | 534 Views
Basisinformationstechnologie HK-Medien. Teil 1, 6.Sitzung WS 02/03. PC, Workstation, Mainframes. Mainframes haben die traditionelle DV bestimmt, sind heutzutage aber sowohl vom Preis wie von der Leistung überholt.
E N D
BasisinformationstechnologieHK-Medien Teil 1, 6.Sitzung WS 02/03 BIT – Schaßan – WS 02/03
PC, Workstation, Mainframes • Mainframes haben die traditionelle DV bestimmt, sind heutzutage aber sowohl vom Preis wie von der Leistung überholt. • Workstations bezeichnen Computer im oberen Preis-/Leistungsverhältnis, Personal Computer im unteren, sind aber faktisch ansonsten kaum noch zu unterscheiden. BIT – Schaßan – WS 02/03
Mainboard, etc. • Der Kern eines Rechners ist das Main- bzw. Motherboard. Auf dieser Haupt-platine befinden sich die Prozessoren, Sockel für weitere Platinen (Karten), Lüfter etc. • Über Karten bzw. (Parallel-)Kabel ist das Mainboard mit den Peripherie-geräten verbunden. BIT – Schaßan – WS 02/03
Schnittstelle und Treiber • Damit CPU und Peripheriegeräte verschiedener Hersteller zusammen arbeiten können, benötigt man • genormte Schnittstellen = Stecker, Hardwareverbindungen • passende Treiber = Programme, Software • Bei Ein- und Ausgabeverbindungen spricht man von I/Os (In/Out). BIT – Schaßan – WS 02/03
Karten • Da der Prozessor mit der Peripherie nur Daten in binärer Form austauschen kann, werden alle analogen Daten (Mausbewegungen, Ergebnisse eines Scanvorgangs, etc.) bereits auf den im Mainboard eingesteckten Karten in digitale Form umgewandelt. • Besondere Bauteile für diese Funktion bezeichnet man als Controller. BIT – Schaßan – WS 02/03
Controller • Zur Steuerung der Peripheriegeräte gibt es verschiedene Controller: • Der (Fest-)Plattencontroller bedient die Disketten- oder Festplattenlaufwerke. Dabei müssen Diskette bzw. Festplatte gedreht und der Schreib-Lese-Kopf an die richtige Stelle gebracht werden, um dort Schwankungen des Magnetfeldes in Bitfolgen umzuwandeln. • Die Grafikkarte dient zur Steuerung des Bildschirmes. Sie hat einen eigenen Prozessor und Speicher, um den Bildschirminhalt schneller aktualisieren oder neu berechnen zu können. BIT – Schaßan – WS 02/03
Busse • Kartenslots, Festplatte, Schnittstellen etc. sind untereinander bzw. mit dem Prozessor über einen Bus (Systembus) verbunden. • ISA: industry standard architecture • EISA • Local Bus • PCI: peripheral component interconnect • AGP: accelerated graphics port BIT – Schaßan – WS 02/03
Adress- und Datenbus • Neben dem Systembus, der Prozessor und Peripherie miteinander verbindet, gibt es CPU-interne Busse, den Adress- und den Datenbus. • Über den Adressbus übermittelt die CPU eine gewünschte Adresse an den Hauptspeicher, über den Datenbus werden die Daten ausgetauscht. BIT – Schaßan – WS 02/03
x-Bit-Computer • Die Bus-Breite ist entscheidend für die Bezeichnung "8-Bit-", "16-Bit-Rechner", wichtig für die Leistungsfähigkeit sind aber DREI Größen: • D: Anzahl der Datenbits, die vom Prozessor in einem Befehl verknüpft werden können. • S: Anzahl der Bits, die von einem LOAD- oder STORE-Befehl gleichzeitig zwischen Speichern und CPU-Register transportiert werden können. • A: Anzahl der Bits, die zur Adressierung verwendet werden können. BIT – Schaßan – WS 02/03
Prozessorleistungen BIT – Schaßan – WS 02/03
Arbeitsspeicher • Neben dem Speicher der CPU (Central Processing Unit, realisiert als ROM, Read only memory) und dem Cache , einem besonderen Speicher für häufig auszuführende Befehle oder gebrauchte Daten, gibt es den Hauptspeicher. Dieser ist direkt mit dem Memory-Controller verbunden. • Mögliche Bezeichnungen: • SIMM, DIMM (Single/Dual inline memory modules) • RIMM (Rambus inline memory modules) BIT – Schaßan – WS 02/03
BIOS • BIOS = Basic Input Output System • Der BIOS-Chip ist für den Startvorgang des Computers von zentraler Bedeutung: in seinem Speicher befinden sich elementare I/O-Programme, z.B. Prüfroutinen für angeschlossene Hardwarekomponenten sowie der Start-mechanismus für das Betriebssystem. BIT – Schaßan – WS 02/03
Aufgaben des Betriebssystems • Ressourcenverwaltung: • CPU (Rechenzeit) • Hauptspeicher • Festplattenspeicherplatz • externe Geräte • Zentrale Bestandteile des Betriebssystems: • Prozessverwaltung • Speicherverwaltung • Dateiverwaltung BIT – Schaßan – WS 02/03
DOS • Disk operating system • eigentlich nur ein Dateiverwaltungssystem • nur jeweils ein Prozess kann durchgeführt werden • "Anhängen" einer Prozess- und Speicherverwaltung Windows 95, 98, ME • Neuanfang mit Windows NT, 2000, XP "Multitasking" BIT – Schaßan – WS 02/03
Multitasking • Der Aufruf eines Programms kann mehrere Prozesse erzeugen, spätestens mit dem Starten mehrerer Programme müssen diese sich die Rechenzeit etc. der CPU teilen. • Jeder Prozess erhält eine abwechselnd eine kurze Spanne Rechenzeit • Probleme: • Zuteilung freien Hauptspeichers • Freigabe des Speichers beendeter Prozesse • Sicherung von Speicherbereichen vor gegenseitigem Zugriff BIT – Schaßan – WS 02/03
I/O-Ports • Wenn I/O-Ports Daten zur Verfügung stellen wollen, gibt es zwei Möglichkeiten, diese an die CPU zu senden: • Man könnte in bestimmten Abständen die I/O-Ports abfragen, ob sie Daten senden möchten. Dies ist sehr zeitaufwendig. • Man kann den I/O-Ports erlauben, den laufenden Betrieb zu unterbrechen, wenn sie Daten haben. BIT – Schaßan – WS 02/03
Interrupts • Hat ein I/O-Port Daten, sendet er einen Interrupt request (IRQ) an die CPU, die daraufhin ihren normalen Dienst unterbricht, die abzuarbeitenden Befehle auf einen Stapel schichtet und führt eine Interrupt Service Routine (ISR) aus, welche die Daten vom Port in den Speicher überträgt. Ist die ISR fertig, kehrt die CPU zu ihrer unterbrochenen Tätigkeit zurück. • Man unterscheidet zwischen Hardware- und Software-Interrupts. BIT – Schaßan – WS 02/03
Hardware-Interrupts • Der Programmierbare Interrupt Controller (PIC) ist für Hardware-Interrupts zuständig. Die meisten PCs haben zwei solcher PICs: einer ist zuständig für IRQ 0-7, der zweite für IRQ 8-15. • Der zweite PIC ist über IRQ 2 kaskadiert. • Neuere Treiber (Peripheral Component Interconnect, PCI) können IRQs gemeinsam benutzen. BIT – Schaßan – WS 02/03
Hardware-Interrupts (2) BIT – Schaßan – WS 02/03
Interrupts eines Windows-Rechners BIT – Schaßan – WS 02/03
Software-Interrupts • Rechner der Generation x86 hatte bis zu 256 Interrupts, die v.a. durch Software gesteuert wurden. Die Hexzahlen geben dabei Speicherbereiche an, in denen die Interrupts definiert sind. BIT – Schaßan – WS 02/03
Interrupt-Klassen BIT – Schaßan – WS 02/03
Interrupt Beispielablauf • Ein I/O-Gerät hat Daten Controller sendet IRQ an CPU • CPU prüft den Status und sendet Startsignal an Controller Daten werden in den Controller-Puffer übertragen • Puffer voll oder Übertragung beendet weiterer INT • CPU kopiert Daten in den Speicher wenn diese Aufgabe vom Controller direkt übernommen wird, spricht man von einem Direct Memory Access-Controller (DMA) BIT – Schaßan – WS 02/03
Vom BIOS zum Betriebssystem • Wie werden BIOS- und andere Programme auf niedriger Ebene (Mikroprogramme, ISA) geschrieben? in Maschinensprache! • Aber: Darstellung von Befehlen für den Prozes-sor im binären Zahlenformat erforderlich. Maschinensprache ist schwer zu program-mieren, da sie an der Hardware ausgerichtet ist und nicht wie die höheren Programmier-sprachen am Benutzer. Die Maschinensprache wird vom Compiler oder Assembler erzeugt. BIT – Schaßan – WS 02/03
Assembler • Maschinenspezifische / computerabhängige Programmiersprache, die dem direkten Befehlssatz eines ~ Prozessors sehr nahe kommt. Assembler ist die Programmiersprache, die zu der schnellsten Rechenzeit des auszuführenden Programms führt. Sie wird daher für viele Hochleistungsprogramme benutzt. • Übersetzungsprogramm, das die mnemotechnische (d.h. merkfähige) Darstellung eines in Assembler geschriebenen Programms als Eingabe verarbeitet und diese in den vom Prozessor ausführbaren Binärcode umwandelt. BIT – Schaßan – WS 02/03
Compiler • Ein Übersetzungsprogramm, welches Programme einer höheren Programmier-sprache in den vom Prozessor ausführ-baren Maschinensprache umwandelt. BIT – Schaßan – WS 02/03
Interpreter • Englische Bezeichnung für "Übersetzer"Programm, das Befehle einer Programmier-sprache in Maschinensprache umwandelt. • Ein Interpreter interpretiert (übersetzt) Quellcode und führt ihn umgehend aus. Im Gegensatz zu einem Compiler erzeugt ein Interpreter keinen speicherbaren Maschinencode. Ein Interpreter wird zum Beispiel für viele einfache Makro-sprachen (speicherbare Befehlsabläufe innerhalb eines Anwendungsprogrammes, z.B. Tastaturmakros o.ä.) eingesetzt. BIT – Schaßan – WS 02/03
Programme • Programme sind Ketten von Befehlen, die in einer Datei zusammengefasst werden. • Jeder Befehl besitzt einen sog. OpCode (Funktionscode), eine "Befehlsnummer", die auf Ebene der ALU, von Mikroprogrammen angesprochen werden. • Das Programm wird in den Speicher geladen , die CPU führt daraufhin die den OpCodes entsprechenden Befehle aus. BIT – Schaßan – WS 02/03
Befehlssatz der CPU • Die CPU verarbeitet Befehle.Dazu besitzen sie ein Repertoire von heute meist einigen hundert Befehlen. Die meisten davon sind Datentransferbefehle und Operationen. • LOAD: Laden des Wertes eines CPU-Registers aus dem Speicher • STORE: Speichern eines Registerinhaltes in einen Speicherplatz • ADD, SUB, MUL, DIV: Arithmetische Operation auf Registern • NOT, OR, AND, XOR: Logische Befehle auf Registern • COMPARE: Vergleich des Inhalts zweier Register • MOVE: Verschieben ganzer Datenblöcke im Speicher • OUT, IN: Ein- und Ausgabe von Daten an Register der Peripheriegeräte BIT – Schaßan – WS 02/03
Addressierungsarten • direkt: • LOAD A, B lädt den Inhalt von B nach A • LD B, 61h lädt den Wert 61h nach B 61h = 0x61 • ADD A, B A+B, Ergebnis nach A • ADD B, 2h B+2h, Ergebnis nach B • SHL multipliziert den Wert des Akku mit 2 • INC A inkrementiert A BIT – Schaßan – WS 02/03
Addressierungsarten (2) • indirekt: • LD A, (61h) lädt den Wert aus Speicher- zelle 61h nach A • JMP (61h) springe an die Stelle, die in 61h gespeichert ist • indirekt indiziert: • LD A, 02(I) lädt Wert aus derjenigen Speicherzelle, die 2 Stellen weiter als I ist BIT – Schaßan – WS 02/03
Befehlszähler • Ein internes Register, der Befehlszähler, zeigt auf den als nächstes auszuführenden OpCode. • Es entsteht der folgende Zyklus: • LOAD: Lade den OpCode, auf den der Befehlszähler zeigt. • INCREMENT: Erhöhe den Befehlszähler. • EXECUTE: Führe den Befehl aus, der zu dem OpCode gehört. BIT – Schaßan – WS 02/03
Sprungbefehle • Damit der Programmablauf nicht immer nur in der vorgegebenen Reihenfolge fortschreitet, sondern auf Eingaben, Prüfungen oder Rechenergebnisse "reagieren" kann, gibt es Sprungbefehle, welche die Fortsetzung der Verarbeitung an anderer Stelle ermöglichen. BIT – Schaßan – WS 02/03
Sprungbefehle (2) • unbedingte Sprünge: • JMP, RET (return, aus Unterprogrammen) • bedingte Sprünge: • JPC springe, wenn C gesetzt ist • JPZ springe, wenn Z gesetzt ist • JNZ springe, wenn nicht 0 (not Zero) BIT – Schaßan – WS 02/03
Flag-Register • C Carry Bereichsüberschreitung vorzeichenloser Zahlen • A Aux. Carry Bereichsüberschreitung vorzeichenloser Nibbles • O Overflow BÜ arithmet. Op. auf Zahlen mit Vorzeichen • S Sign Ergebnis war negativ • Z Zero Ergebnis war Null • P Parity Ergebnis war ein Byte/Word mit gerade vielen Einsen BIT – Schaßan – WS 02/03
Flag Beeinflussung • ADD, SUB, NEGbeeinflussen O, S, Z, C, P, A • INC, DECbeeinflussen O, S, Z, P, A • MUL, DIVbeeinflussen O, C • AND, OR, XORbeeinflussen S, Z, P, setzen C = 0 • CMP wie SUB • TEST wie ADD BIT – Schaßan – WS 02/03
Flag-Register (2) • D Direction Flag Richtung von String-Befehlen D = 1 von links nach rechts • I Interrupt Interrupt zugelassen? • T Trap Flag für Debugger: single step modus BIT – Schaßan – WS 02/03
Beispielprogramm 1 MOV A, 0h MOV B, 0 nochmal: ADD B, A DEC A JNZ nochmal Inhalt von Register 0h nach A Initialisiere B mit 0 Label für eine Subroutine Addiere A zu B Erniedrige A wenn Ergebnis ≠ 0, springe zu nochmal BIT – Schaßan – WS 02/03
Beispielprogramm 2 y = a-4b+7 BIT – Schaßan – WS 02/03
Literatur • Interrupts: http://www.beyondlogic.org/interrupts/interupt.htm • Assembler:http://www.minet.uni-jena.de/~matthi/www.ct-projekt.smigel.de/node228.html BIT – Schaßan – WS 02/03