Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

BIT – Schaßan – WS 02/03 Basisinformationstechnologie HK-Medien Teil 1, 6.Sitzung WS 02/03.

Ähnliche Präsentationen


Präsentation zum Thema: "BIT – Schaßan – WS 02/03 Basisinformationstechnologie HK-Medien Teil 1, 6.Sitzung WS 02/03."—  Präsentation transkript:

1 BIT – Schaßan – WS 02/03 Basisinformationstechnologie HK-Medien Teil 1, 6.Sitzung WS 02/03

2 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.

3 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.

4 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).

5 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.

6 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.

7 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

8 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.

9 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.

10 BIT – Schaßan – WS 02/03 Prozessorleistungen ProzessorDSA 8080/ / / Pentium I / PowerPC Itanium / DEC α64

11 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 )

12 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.

13 BIT – Schaßan – WS 02/03 Aufgaben des Betriebssystems Ressourcenverwaltung: CPU (Rechenzeit) Hauptspeicher Festplattenspeicherplatz externe Geräte Zentrale Bestandteile des Betriebssystems: Prozessverwaltung Speicherverwaltung Dateiverwaltung

14 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"

15 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

16 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.

17 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.

18 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 Der zweite PIC ist über IRQ 2 kaskadiert. Neuere Treiber (Peripheral Component Interconnect, PCI) können IRQs gemeinsam benutzen.

19 BIT – Schaßan – WS 02/03 Hardware-Interrupts (2) INT (Hex)IRQGebrauch 080System Timer 091Keyboard 0A2Redirected (PIC 2) 0B3Serial Port 0C4Serial Port 0D5Reserved/Sound Card 0E6Floppy Disk Controller 0F7Parallel Port

20 BIT – Schaßan – WS 02/03 Interrupts eines Windows- Rechners

21 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. INT (Hex)IRQGebrauch Exception Handlers- 02 Non-Maskable IRQParity Errors Exception Handlers F Software Interrupts FF Software Interrupts-

22 BIT – Schaßan – WS 02/03 Interrupt-Klassen externintern (I/O-Cont. INT)Programmfehler (Division by Zero) maskablenon-maskable kann vorübergehend ignoriert werden muss auf jeden Fall durchgeführt werden (Division by Zero)

23 BIT – Schaßan – WS 02/03 Interrupt Beispielablauf 1. Ein I/O-Gerät hat Daten Controller sendet IRQ an CPU 2. CPU prüft den Status und sendet Startsignal an Controller Daten werden in den Controller-Puffer übertragen 3. Puffer voll oder Übertragung beendet weiterer INT 4. CPU kopiert Daten in den Speicher wenn diese Aufgabe vom Controller direkt übernommen wird, spricht man von einem Direct Memory Access-Controller (DMA)

24 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.

25 BIT – Schaßan – WS 02/03 Assembler 1. 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. 2. Ü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.

26 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.

27 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.

28 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.

29 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

30 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

31 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

32 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.

33 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.

34 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)

35 BIT – Schaßan – WS 02/03 Flag-Register CCarry Bereichsüberschreitung vorzeichenloser Zahlen AAux. Carry Bereichsüberschreitung vorzeichenloser Nibbles OOverflow BÜ arithmet. Op. auf Zahlen mit Vorzeichen SSign Ergebnis war negativ ZZero Ergebnis war Null PParity Ergebnis war ein Byte/Word mit gerade vielen Einsen

36 BIT – Schaßan – WS 02/03 Flag Beeinflussung ADD, SUB, NEG beeinflussen O, S, Z, C, P, A INC, DEC beeinflussen O, S, Z, P, A MUL, DIV beeinflussen O, C AND, OR, XOR beeinflussen S, Z, P, setzen C = 0 CMP wie SUB TEST wie ADD

37 BIT – Schaßan – WS 02/03 Flag-Register (2) DDirection Flag Richtung von String-Befehlen D = 1 von links nach rechts IInterrupt Interrupt zugelassen? TTrap Flag für Debugger: single step modus

38 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

39 BIT – Schaßan – WS 02/03 Beispielprogramm 2 y = a-4b+7 AdrBefehlBedeutung 0INa lesen 1STORE a, (11)speichert a auf 11 2INb lesen 3SHLAkku * 2 4SHLAkku * 2 (=4b) 5STORE h, (12) 6LDK 7Akku = 7 7ADD a, 11Akku = 7+a 8SUB h, 12Akku = 7+a-4b 9OUT 10HALT 11aSpeicherplatz für Variable 12hSpeicherplatz für Variable

40 BIT – Schaßan – WS 02/03 Literatur Interrupts: Assembler: projekt.smigel.de/node228.html projekt.smigel.de/node228.html


Herunterladen ppt "BIT – Schaßan – WS 02/03 Basisinformationstechnologie HK-Medien Teil 1, 6.Sitzung WS 02/03."

Ähnliche Präsentationen


Google-Anzeigen