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

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

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

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

BIT – Schaßan – WS 02/03

Basisinformationstechnologie

HK-Medien

Teil 1, 6.SitzungWS 02/03

Page 2: BIT – Schaßan – WS 02/03 Basisinformationstechnologie HK-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.

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

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.

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

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, Hardwareverbindungenpassende Treiber = Programme, Software

Bei Ein- und Ausgabeverbindungen spricht man von I/Os (In/Out).

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

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.

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

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.

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

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 architectureEISALocal BusPCI: peripheral component interconnectAGP: accelerated graphics port

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

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.

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

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.

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

BIT – Schaßan – WS 02/03

Prozessorleistungen

Prozessor D S A8080/8085 8 8 16

8086/80186 16 16 20

80286 16 16 24

80386/80486 32 32 32

Pentium I-4 32 64 32

68000/68010 32 16 24

PowerPC 32 64 32

Itanium / DEC α 64 64 64

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

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)

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

BIT – Schaßan – WS 02/03

BIOS

BIOS = Basic Input Output SystemDer 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.

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

BIT – Schaßan – WS 02/03

Aufgaben des Betriebssystems

Ressourcenverwaltung:CPU (Rechenzeit)HauptspeicherFestplattenspeicherplatzexterne Geräte

Zentrale Bestandteile des Betriebssystems:

ProzessverwaltungSpeicherverwaltungDateiverwaltung

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

BIT – Schaßan – WS 02/03

DOS

Disk operating systemeigentlich nur ein Dateiverwaltungssystemnur jeweils ein Prozess kann durchgeführt werden"Anhängen" einer Prozess- und Speicherverwaltung Windows 95, 98, MENeuanfang mit Windows NT, 2000, XP "Multitasking"

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

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 RechenzeitProbleme:

Zuteilung freien HauptspeichersFreigabe des Speichers beendeter ProzesseSicherung von Speicherbereichen vor gegenseitigem Zugriff

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

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.

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

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.

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

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.

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

BIT – Schaßan – WS 02/03

Hardware-Interrupts (2)

INT (Hex)

IRQ Gebrauch

08 0 System Timer

09 1 Keyboard

0A 2 Redirected (PIC 2)

0B 3 Serial Port

0C 4 Serial Port

0D 5 Reserved/Sound Card

0E 6 Floppy Disk Controller

0F 7 Parallel Port

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

BIT – Schaßan – WS 02/03

Interrupts eines Windows-Rechners

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

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)

IRQ Gebrauch

00-01 Exception Handlers

-

02 Non-Maskable IRQ Parity Errors

03-07 Exception Handlers

-

10 - 6F Software Interrupts

-

78 - FF Software Interrupts

-

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

BIT – Schaßan – WS 02/03

Interrupt-Klassen

extern intern

(I/O-Cont. INT) Programmfehler (Division by Zero)

maskable non-maskable

kann vorübergehend ignoriert werden

muss auf jeden Fall durchgeführt werden (Division by Zero)

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

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)

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

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.

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

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.

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

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.

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

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.

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

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.

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

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

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

BIT – Schaßan – WS 02/03

Addressierungsarten

direkt:LOAD A, B lädt den Inhalt von B nach ALD B, 61h lädt den Wert 61h nach B

61h = 0x61ADD A, B A+B, Ergebnis nach AADD B, 2h B+2h, Ergebnis nach BSHL multipliziert den Wert des

Akku mit 2INC A inkrementiert A

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

BIT – Schaßan – WS 02/03

Addressierungsarten (2)

indirekt:LD A, (61h) lädt den Wert aus Speicher- zelle 61h nach AJMP (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

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

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.

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

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.

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

BIT – Schaßan – WS 02/03

Sprungbefehle (2)

unbedingte Sprünge:JMP, RET (return, aus Unterprogrammen)

bedingte Sprünge:JPC springe, wenn C gesetzt istJPZ springe, wenn Z gesetzt istJNZ springe, wenn nicht 0 (not Zero)

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

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

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

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 SUBTEST wie ADD

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

BIT – Schaßan – WS 02/03

Flag-Register (2)

D Direction Flag Richtung von String-BefehlenD = 1 von links nach rechts

I Interrupt Interrupt zugelassen?

T Trap Flag für Debugger: single step modus

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

BIT – Schaßan – WS 02/03

Beispielprogramm 1

MOV A, 0hMOV B, 0nochmal:ADD B, ADEC AJNZ 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

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

BIT – Schaßan – WS 02/03

Beispielprogramm 2

y = a-4b+7Adr Befehl Bedeutung

0 IN a lesen

1 STORE a, (11) speichert a auf 11

2 IN b lesen

3 SHL Akku * 2

4 SHL Akku * 2 (=4b)

5 STORE h, (12)

6 LDK 7 Akku = 7

7 ADD a, 11 Akku = 7+a

8 SUB h, 12 Akku = 7+a-4b

9 OUT

10 HALT

11 a Speicherplatz für Variable

12 h Speicherplatz für Variable

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

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