Vorlesung "Struktur von Mikrorechnern" (SMR)

Ähnliche Dokumente

9. Assembler: Der Prozessor Motorola 68000

9. Assembler: Der Prozessor Motorola 68000

10. Die Adressierungsarten des MSP 430

Interruptverarbeitung

Teil 2: Rechnerorganisation

MOP: Befehlsliste für den Mikrocontroller 8051

Befehlssatz der Mikrocontroller der 51er -Familie

Mikroprozessoren Grundlagen AVR-Controller Input / Output (I/O) Interrupt Mathematische Operationen

Befehlssatz der Mikrocontroller der 51er -Familie

Rechnerstrukturen. 7. Assembler. Inhalt. Vorlesung Rechnerstrukturen. Assemblerprogrammierung SML-CPU. SML-Assembler. Binden

Prof. Dr. Sven-Hendrik Voß Sommersemester 2018 Technische Informatik (Bachelor), Semester 2 Termin 5, Maschinenorientierte Programmierung

Von-Neumann-Architektur

9. Die Adressierungsarten des MSP 430

Einführung in die Informatik

Mikrocomputertechnik. Thema: Der Aufbau des XC888-Mikrocontrollers -Teil 1 -

ARM-Cortex-M4 / Thumb-2-Befehlssatz Adressierungsarten und arithmetische Operationen

Rechnerorganisation. H.-D. Wuttke `

Mikroprozessoren Grundlagen AVR-Controller Input / Output (I/O) Interrupt Mathematische Operationen

Rechnernetze und Organisation

5.1 Beschreibung des Prozessors M Programmierung in Maschinensprache. 5.1 Beschreibung des Prozessors M 68000

5. Programmierung in Maschinensprache

Daniel Betz Wintersemester 2011/12

Sprungbefehle und Kontroll-Strukturen

Einführung in die Informatik

Die Mikroprogrammebene eines Rechners

Die Befehle mit dem Ziel IP sind nichts anderes als Sprungbefehle, sie sind unten noch mal aufgeführt.

TI2 Übung 2. Hauptspeicher, 6809-Prozessor. 23. November 2004 (WS 2004) Andreas I. Schmied Universität Ulm Fakultät für Informatik

Teil 1: Prozessorstrukturen

Zusammenfassung der Assemblerbefehle des 8051

05. Assembler-Programmierung. Datenstrukturen des ATMega32. Literatur

Rechnerorganisation. (10,11) Informationskodierung (12,13,14) TECHNISCHE UNIVERSITÄT ILMENAU. IHS, H.- D. Wuttke `09

Kap.2 Befehlsschnittstelle. Prozessoren, externe Sicht

A ProgrAmmer s Guide to KIM Programming

Der von Neumann Computer

EDT-REFERAT Adressierungsarten

"Organisation und Technologie von Rechensystemen 4"

Übungsblatt 10 (Block C 2) (16 Punkte)

Lösung 5. Übungsblatt

8051Speicherorganistaion. SFR u. oberer Datenspeicherbereich teilen sich den SPECIAL FUNCTION REGISTER. gleichen Adreßbereich. indirekt adressierbar

... Adressierung und Befehlsfolgen (1) Speicherbelegung. Hauptspeicheradressen. Inhalt von Speicherbelegungen: Operanden - Zahlen - Zeichen Befehle

Lösungsvorschläge zur Übungsklausur. zum Kurs 1708 Technische Informatik II. im WS 01/02

Informatikgrundlagen I Grundlagen der Informatik I

Vorwort 8. Kap. 1: Grundlagen 10

Musterlösungen Technische Informatik 2 (T2) Prof. Dr.-Ing. D. P. F. Möller

Arithmetik, Register und Speicherzugriff. Grundlagen der Rechnerarchitektur Assembler 9

Befehle zur Verarbeitung von Daten ( data processing ):

Aufbau eines Taschenrechners

Mikrocomputertechnik mit dem Controller C167

Selbststudium Informationssysteme - H1102 Christian Bontekoe & Felix Rohrer

Teil VIII Von Neumann Rechner 1

Struktur der CPU (1) Die Adress- und Datenpfad der CPU: Befehl holen. Vorlesung Rechnerarchitektur und Rechnertechnik SS Memory Adress Register

Rechnergrundlagen SS Vorlesung

Die HAM. Die Hypothetische Akku-Maschine

Rechnernetze und Organisation

Mikroprozessoren. Aufbau und Funktionsweise. Christian Richter. Ausgewählte Themen der Multimediakommunikation SS 2005

Mikroprozessoren Grundlagen AVR-Controller Input / Output (I/O) Interrupt Mathematische Operationen

Lehrveranstaltung: PR Rechnerorganisation Blatt 8. Thomas Aichholzer

i386 Interrupt-Deskriptortabelle (IDT)

Adressierungsarten des 6809 (Forts.)

MikroController der 8051-Familie

ERA-Zentralübung Maschinenprogrammierung

Praktikum Mikrorechner 1 (Einführung)

Vorlesung "Struktur von Mikrorechnern" (SMR)

Übungen für die Einführung in die Assemblerprogrammierung mit dem Prozessor c515c

1. Übung - Einführung/Rechnerarchitektur

Inhaltsverzeichnis. Vorwort 5

10. Der Befehlssatz des MSP 430

Assembler. Dr.-Ing. Volkmar Sieh. Department Informatik 4 Verteilte Systeme und Betriebssysteme Friedrich-Alexander-Universität Erlangen-Nürnberg

Mikrocomputertechnik

Inhaltsverzeichnis VII. Teil I: PC- und Mikrocomputer-Technik

Der Intel 8086 Reto Gurtner 2005

Name : Klasse : Punkte : Note :

INFORMATIK Oberstufe. Funktionsweise eines Rechners

1 Rechnerstrukturen 1: Der Sehr Einfache Computer

Mikrocomputertechnik mit Controllern der AtmelAVR-RISC-Familie

Assembler - Adressierungsarten

Computersysteme. Fragestunde

b i Ergänzung zu Vollkonjunktionen (ohne Indizierung i = 0... n-1): q = a b a b q = a b q = a b a b a b

Übung zu Betriebssystembau (Ü BS)

Architektur der Intel 8051 Familie und Grundlegende Programmierung Reto Gurtner 2005

13.2 Übergang zur realen Maschine

32 Bit Konstanten und Adressierung. Grundlagen der Rechnerarchitektur Assembler 78

Aufgabe 1 Entwicklung einer Virtuellen Maschine

Kap 4. 4 Die Mikroprogrammebene eines Rechners

Hinweise für Schüler

Datenpfad einer einfachen MIPS CPU

Praktikum Mikrorechner 4 (Bitmanipulation und Spezialregister)

Übungsblatt 7 Implementierung von Programmsteuerbefehlen in einer Befehlspipeline Abgabefrist: Mittwoch , 14:00 Uhr

Lösungsvorschlag 9. Übung Technische Grundlagen der Informatik II Sommersemester 2009

Grundlagen der Rechnerarchitektur. MIPS Assembler

Zusammenhang Interrupt, Befehlszyklus, indirekte Adressierung und Mikroprogramm [Stallings, Kap. 15, S ]

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung

Teil III: Wat macht ene Mikrokontroller?

Transkript:

Unterscheidung nach Instruktionsstruktur Kap. 6 / 34 Unterscheidung nach Befehlstypen: Übersicht Register-Register MOV r r, r 2 A Speicher/Peripherie Register Transferbefehle LDA addr STA addr Konstante Speicher/Register MVI M,K B Eingabe Akku Akku Ausgabe Ein-/ Ausgabebefehle IN addr (8 bit) OUT addr (8 bit) C Addition Subtraktion (über Komplement) Arithmetische Befehle ADD r/m SUB r/m D Logische Operationen AND, OR, NOT JNZ, etc. E Sprungbefehle CALL, RET RST n Kap. 7 / 34 Dr. R. Viga / EBS 28

Befehlstypen A Prozessorregister A Register-Register Speicher/Peripherie Register Konstante Speicher/Register Transferbefehle Beispiel für indirekte Adressierung MOV r, r 2 LDA addr STA addr MVI M, K Speicheradresse für indirekte Adressierung für H-L-Register Konstanter Wert Kap. 8 / 34 Befehlstypen B und C B Eingabe Akku Akku Ausgabe Ein- /Ausgabebefehle IN addr (8 bit) OUT addr (8 bit) C Addition Subtraktion (über Komplement) Arithmetische Befehle ADD r/m SUB r/m Mit Rechenoperationen verbunden sind sog. Flags: CY = carry : bei Übertragung über höchstes Bit hinaus AC = auxiliary carry : bei Übertragung von Bit 2 3 nach 2 4 P = parity : bei gerader Anzahl von en im Wort Z = zero : bei Ergebnis S = sign : erhält Wert von Bit 7 Kap. 9 / 34 Dr. R. Viga / EBS 28 2

Mehrbyte-Addition, z. B. 3-Byte3 Byte-Zahlen LDA 3H LXI H; 33H ADD M STA 4H LDA 3H INX H ADC M STA 4H LDA 32H INX H ADC M STA 42H MVI A; ACI STA 43 ;. Byte des. Operanden holen ; H und L bekommen die Adresse des 2. Operanden ; beide Operanden addieren ; Ergebnis abspeichern (. Byte) ; 2. Byte des. Operanden holen ; H und L zeigen auf das 2. Byte des 2. Operanden ; Addition mit Carryinhalt ; Ergebnis abspeichern (2. Byte) ; 3. Byte des. Operanden holen ; H und L zeigen auf das 3. Byte des 3.Operanden ; Addition mit Carryinhalt ; Ergebnis abspeichern (3. Byte) ; Akku auf Null setzen ; zum Akku und Carrybit addieren. Im Akku steht jetzt eine, wenn das Carrybit war; ansonsten ; Ergebnis abspeichern (4. Byte). Operand: B 3 B 2 B 32H 3H 3H 2. Operand: C 3 C 2 C 35H 34H 33H Kap. 2 / 34 Subtraktion als Addition im 2er-Komplement er Komplement bitweise Invertierung, also und 2er Komplement er Komplement + (ohne Übertrag) 8 8 H -3 + CY = FD H 5 H 3 3 H -8 + CY = F8 H FB H 2 7 2 6 2 5... 2 = + 27 = + = 2 7 2 6 2 5... 2 = - = - 28 Kap. 2 / 34 Dr. R. Viga / EBS 28 3

Befehlstypen D und E Bedingte Sprungbefehle: JNZ = Jump not Zero Unterprogrammsprung und Rücksprung D E AND, OR, NOT JNZ, etc. CALL, RET RST n Logische Operationen Sprungbefehle Unbedingter Sprungbefehl: RST = Restart, hier sog. Interrupt Kap. 22 / 34 Analyse des Befehlssatzes 88/ 885 Tabelle beispielhaft, unvollständig STA 487H 32H Registerpaare XX I LXI REG XXI I DAD I I SHLD LDA 3H 3AH A III II I LHLD B II I STA C I III I LDA D zur indirekten I X I STAX MOV C,E 4BH E II I XI I LDAX H Adressierung I XXI II DCX RP L II I XX II INX RP (H),(L) II II I INR M XXX I INR REG I ddd SSS MOV r,r 2 II II DCR M I II SSS MOV M,r 2 XXX II DCR REG I ddd II MOV r,m ddd II MVI REG I II II HLT II II MVI M I XXX ADD REG III RLC II ADD M I RRC I XXX ADC REG I RAL MVI M,4BH 36H II ADC M II RAR I XXX SUB REG I DAA II SUB M II CMA II XXX SAA REG II STC II SAA M III CMC I XXX ANA REG NOP II ANA M II XXX XRA REG II CRA M II XXX ORA REG II ORA M III XXX CMP REG II CMP M Zu allen Befehlen gibt es Angaben, wie viele Taktzyklen für die Ausführung erforderlich sind. Kap. 23 / 34 Dr. R. Viga / EBS 28 4

Notwendigkeit der unterschiedlichen Adressierungsarten - Erleichterung der Programmierung (bei sog. Assemblerprogrammen) - Beschleunigung der Verarbeitung (weniger Befehle, Adressen in CPU) - Kürzere Befehle - Hilfsmittel für die Speicherorganisation Adressierungsarten des 885 - Registeradressierung (a) - Register indirekt (b) - Absolute Adressierung weist in Speicher (c) - Automatisches inkrement / dekrement über Register (d) - Indizierte Adressierung (e) - Basis Adressierung (f) - Page Adressierung (g).5 Adressierungsarten Kap. 24 / 34 Registeradressierung (a) z. B. MOV C,E Register indirekt (b) z. B. MVI M, 4BH.5 Adressierungsarten Kap. 25 / 34 Dr. R. Viga / EBS 28 5

Absolute Adressierung (c): long absolute z. B. LDA 3H Absolute Adressierung (c): short absolute.5 Adressierungsarten Kap. 26 / 34 Automatisches inkrement über Register (d) Automatisches dekrement über Register (d).5 Adressierungsarten Kap. 27 / 34 Dr. R. Viga / EBS 28 6

Indizierte Adressierung (e) Basis Adressierung (f).5 Adressierungsarten Kap. 28 / 34 Page Adressierung (g) Jede Adressierung kann so gedeutet werden. Unterteilung des Speichers in Blöcke bzw. Seiten (pages) Page Nummer konstant Page Nummer aus Register, z.b. PC (oft bei Sprungbefehlen).5 Adressierungsarten Kap. 29 / 34 Dr. R. Viga / EBS 28 7

Software-Interrupts Assembler-Befehl: RST...7 (für "restart" zusammen mit Sprungvektor m) m führt auf Adressen m 8, also, 8, 6,, 56 im Speicher. Die Adressen m 8 gelangen in den PC als neue Programmadresse. Hardware-Interrupts Hardware-Interrupts werden durch externe Hardware-Ereignisse ausgelöst; Hardware-Interrupts haben unterschiedliche Prioritäten. Hardware-Restart Prioritäten: Trap, RST 5.5, RST 6.5, RST 7.5, INTR 2 3 4 5 Maskierbar (enable/disable) Auf INTR muss Software RST m- Befehl folgen.6 Interruptsystem Kap. 3 / 34 Interrupt-Übersicht TRAP RST RST MEMORY ADDRESSES H 8H RST 7.5 RST 6.5 RST2 RST3 H 8H RST 5.5 885A EXECUTING SOFTWARE RST INSTRUCTIONS IN RESPONSE TO INTR RST4 RST5 RST6 RST7 885A SYSTEM MEMORY 2H 24H 28H 2CH 3H 34H 38H 3CH.6 Interruptsystem Kap. 3 / 34 Dr. R. Viga / EBS 28 8

Vorschau: Interruptnutzung im PC (Teil ) Nummer Nr. Hex Adresse Segment offset Anwendung $ $ $47B : $CE Prozessor: Division durch Null $ $4 $352 : $45C Prozessor: Einzelschrittsteuerung 2 $2 $8 $DDF : $6 NMI-Interrupt: Systemfehler 3 $S3 $C $352 : $465 Haltepunkt durch Code $CC 4 $4 $ $7 : $75C Befehl INTO (Interrupt bei Overflow) 5 $5 $4 $F : $FF54 BIOS: Hardcopy durch Druck-Taste 6 $6 $8 $F : $F856 Prozessor (8286: unbekannter Code) 7 $7 $C $F : $F856 Prozessor (8286: Speicherschutz) 8 $8 $2 $DDF : $AB Gerät IRQ: Timer 9 $9 $24 $352 : $4BA Gerät IRQ: Tastatur $A $28 $F : $F853 Gerät IRQ2: AT: 2. PIC-Baustein XT: Bildschirm $B $2C $F : $F853 Gerät IRQ3: COM2 (Serienschnittstelle).6 Interruptsystem Kap. 32 / 34 Vorschau: Interruptnutzung im PC (Teil 2) Nummer Nr. Hex Adresse Segment offset Anwendung 2 $C $3 $FD : $BE Gerät IRQ4: COM (Serienschnittstelle) 3 $D $34 $F : $F853 Gerät IRQ5: AT: LPT2 (Drucker) XT: Festplatte 4 $E $38 $DDF : $43A Gerät IRQ6: Diskettenlaufwerke 5 $F $3C $7 : $75C Gerät IRQ7: LPT (Drucker) 6 $ $4 $352 : $7 BIOS: Bildschirmfunktion 7 $ $44 $F : $F84D BIOS: Ausgabe der Konfigurationsdaten 8 $2 $48 $F : $F84 BIOS: Ausgabe der Speichergröße 9 $3 $4C $352 : $74 BIOS: Disketten- u. Festplattenfunktionen 2 $4 $5 $F : $E739 BIOS: Serielle Schnittstellenfunktionen 2 $5 $54 $F : $F859 BIOS: AT: Echtzeituhr XT: Kassettenlaufwerk 22 $6 $58 $F : $E82E BIOS: Tastatur- und Druckerfunktionen 23 $7 $5C $F : $EFD2 BIOS: Parallelschnittstelle (Drucker).6 Interruptsystem Kap. 33 / 34 Dr. R. Viga / EBS 28 9

Vorschau: Interruptnutzung im PC (Teil 3) Nummer Nr. Hex Adresse Segment offset Anwendung 24 $8 $6 $F : $E BIOS: Start des ROM-BASIC (wenn vorhanden) 25 $9 $64 $7 : $9C BIOS: Systemneustart (STRG + ALT + ENTF) 26 $A $68 $F : $FE6E BIOS: Systemuhrenfunktionen 27 $B $6C $AAE : $F2 BIOS: Unterbrechung (STRG + Pause) 28 $C $7 $F : $FF53 BIOS: Timer - Interrupt (8.2 mal pro sek.) 29 $D $74 $F : $FA4 BIOS: Zeiger auf Videotabelle 3 $E $78 $ : $522 BIOS: Zeiger auf Laufwerktabelle 3 $F $7C $C : $483E BIOS: Zeiger auf Grafikzeichentabelle 32 $2 $8 $275 : $45C DOS: Rücksprung nach DOS 33 $2 $84 $352 : $7F DOS: Betriebssystemfunktionen MsDOS (register).6 Interruptsystem Kap. 34 / 34 Dr. R. Viga / EBS 28