Teil 1: Prozessorstrukturen
|
|
- Achim Armbruster
- vor 7 Jahren
- Abrufe
Transkript
1 Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium 1 Motivation Hypothetische CPU weist einige Nachteile auf, aufgrund derer sie für reale Anwendungen ungeeignet ist: kein Zugriff auf die i-te Komponente eines ab der Startadresse a im Speicher abgelgten Datenfeldes, wenn i erst zur Laufzeit bekannt ist kein Arbeiten mit Zeigern möglich kein Aufruf von Unterprogrammen möglich Adressen können nur im b-bit Adreßfeld einer Instruktion kodiert werden ( Beschränkung auf Adreßraum mit 2 b Adressen) Datenwortbreite n ist fest und muß der Summe aus Instruktionslänge (8 Bit) und der Länge b des Adreßfeldes entsprechen einzelnes Datenregister erfordert häufige Zwischenspeicherung von temporären Ergebnissen im Speicher Aufgrund fehlender Programmunterbrechungen ( Interrupts ) ist die Implementierung von Betriebssystemen und E/A-Gerätetreibern schwierig 2 1
2 Motorola 6809: Übersicht 8-Bit Mikroprozessor Nachfolger von 6502, 6800 und Bit Datenbus 16-Bit Adreßbus Adreßraum von 64 kbyte addressierbar zwei 8-Bit Datenregister A und B, zum 16-Bit Datenregister D koppelbar zwei 16-Bit Indexregister X und Y zwei 16-Bit Stackpointer S und U 59 Instruktionen, 10 (!) Adressierungsarten (mit 24 Unterarten 1464 unterschiedliche Operationen) weitgehend orthogonaler Befehlssatz erster Mikroprozessor mit Bit Hardware-Multiplizierer Unterstützung von Interrupts 3 Aufbau des Motorola
3 Befehlssatz des 6809 Befehlsklassen: ALU-Befehle, Transfer-Befehle, Sprungbefehle, Stack-Befehle, System- und Sonstige Befehle Die meisten ALU-Befehle können angewandt werden auf: 8-Bit Akkumulator A (Mnemonik xxxa) 8-Bit Akkumulator B (Mnemonik xxxb) 16-Bit Akkumulator D (Mnemonik xxxd) eine beliebige 8-Bit Speicherstelle a (Mnemonik xxx) Bei zweistelligen ALU-Operationen (z.b. Addition) wird stets ein Speicherwert mit dem Inhalt von A, B oder D verknüpft Alle wichtigen Befehle sind in einem Byte kodiert; bei den übrigen Befehlen befindet sich zusätzliche Information (z.b. über die Adressierungsart) in einem Postbyte hinter dem Befehlsbyte 5 ALU-Befehle des 6809 (Auswahl) ADDA, ADDB, ADDD ADCA, ADCB SUBA, SUBB, SUBD CMPA, CMPB, CMPD SEX MUL INC, INCA, INCB DEC, DECA, DECB CLR, CLRA, CLRB TST, TSTA, TSTB BITA, BITB NEG, NEGA, NEGB COM, COMA, COMB ANDA, ANDB ORA, ORB EORA, EORB Addiere Speicherwert zu A, B oder D Addiere (mit Carry) Speicherwert zu A oder B Subtrahiere Speicherwert von A, B oder D dito, aber ohne Speicherung des Ergebnisses Fülle A mit Vorzeichen aus B ( Sign Extension ) Vorzeichenlose Multiplikation A B D Inkrementiere Speicherwert, A oder B Dekrementiere Speicherwert, A oder B Lösche Speicherwert, A oder B Teste Speicherwert M, A oder B auf negativ und 0 Teste M AND A bzw. M AND B auf negativ und 0 Zweierkomplement von Speicherwert, A oder B Einerkomplement von Speicherwert, A oder B Bitweises UND von Speicherwert und A bzw. B Bitweises ODER von Speicherwert und A bzw. B Bitweises XOR von Speicherwert und A bzw. B 6 3
4 ALU-Befehle des 6809 (Auswahl, Forts.) ASL, ASLA, ASLB ASR, ASRA, ASRB LSL, LSLA, LSLB LSR, LSRA, LSRB ROL, ROLA, ROLB ROR, RORA, RORB Arithmetischer Linksshift von Speicherwert, A oder B Arithmetischer Rechtsshift von Speicherwert, A oder B Logischer Linksshift von Speicherwert, A oder B Logischer Rechtsshift von Speicherwert, A oder B Rotation nach links von Speicherwert, A oder B Rotation nach rechts Speicherwert, A oder B Arbeitsweise der Shift-Befehle: (unter Verwendung des C-Flags aus dem CC-Register) 7 Transfer-Befehle des 6809 LDA, LDB LDD LDX, LDY, LDS, LDU STA, STB STD STX, STY, STS, STU EXG R1,R2 TFR R1,R2 Lade 8-Bit Wert aus Speicher in A oder B Lade 16-Bit Wert aus Speicher in Akkumulator D Lade 16-Bit Adresse aus Speicher in X,Y,S oder U Speichere 8-Bit Wert aus Akkumulator A oder B Speichere 16-Bit Wert aus Akkumulator D Speichere 16-Bit Adresse aus X,Y,S oder U Vertausche Inhalt zweier Register R1 und R2 Kopiere Inhalt von R1 nach R2 Hinweis: Bei den Befehlen EXG R1,R2 und TFR R1,R2 müssen Register R1 und R2 entweder beide ein 8-Bit Register (d.h. A, B, CC, DP) oder beide ein 16-Bit Register (d.h. X, Y, S, U, PC) repräsentieren! 8 4
5 Sprungbefehle des 6809 Sprungbefehle arbeiten mit relativen Sprüngen, bei denen das Sprungziel als Distanz zum aktuellen Stand des Befehlzählers (in Zweierkomplement) kodiert wird bei 8-Bit Operand sind Distanzen im Bereich von 128 bis 127 möglich bei 16-Bit Operand ( Long Relativ Branch, Mnemnonik LBxx) können Distanzen im Bereich von bis kodiert werden Einfache Sprungbefehle (abhängig von einzelnen Statusbits): BEQ, LBEQ BNE, LBNE BMI, LBMI BPL, LBPL BCS, LBCS BCC, LBCC BVS, LBVS BVC, LBVC Branch if Equal Branch if Not Equal Branch if Minus Branch if Plus Branch if Carry Set Branch if Carry Clear Branch if Overflow Set Branch if Overflow Clear (Sprung bei Z=1) (Sprung bei Z=0) (Sprung bei N=1) (Sprung bei N=0) (Sprung bei C=1) (Sprung bei C=0) (Sprung bei V=1) (Sprung bei V=0) 9 Sprung-Befehle des 6809 (Forts.) Bedingte Sprungbefehle nach Vergleich von zwei vorzeichenbehafteten ( signed ) 8-Bit oder 16-Bit Zahlen: BGT, LBGT Branch if Greater Than (Sprung bei Z+(N V)=0) BGE, LBGE Branch if Greater or Equal (Sprung bei N V=0) BLE, LBLE Branch if Less Than or Equal (Sprung bei Z+(N V)=1) BLT, LBLT Branch if Less Than (Sprung bei N V=1) Bedingte Sprungbefehle nach Vergleich von zwei positiven ( unsigned ) 8-Bit oder 16-Bit Zahlen: BHI, LBHI Branch if Higher (Sprung bei C+Z=0) BHS, LBHS Branch if Higher or Same (Sprung bei C=0) BLS, LBLS Branch if Lower or Same (Sprung bei C+Z=1) BLO, LBLO Branch if Lower (Sprung bei C=1) Unbedingter Sprung: BRA, LBRA Branch Always 10 5
6 Statusregister des 6809 Bit 7 E F H I Bit 0 C Bedeutung der Flags im Statusregister CC: C (Bit 0) bei aufgetretenem Überlauf ( Carry Flag ) V (Bit 1) bei aufgetretenem arithmetischem Überlauf ( Overflow Flag ) Z (Bit 2) gesetzt, wenn Ergebnis der letzten Operation Null ( Zero ) war N (Bit 3) höchstwertiges Bit der letzten Operation ( Negative Flag ) I (Bit 4) Maskierungsbit für IRQ (Interrupt gesperrt bei I=1) H (Bit 5) [4-Bit-Überlauf bei BCD-Arithmetik ( Half Carry Flag )] F (Bit 6) Maskierungsbit für FIRQ (Interrupt gesperrt bei F=1) E (Bit 7) [Alle Register auf Stack gesichert ( Entire Flag )] Hinweise: Jede Instruktion setzt nur bestimmte Flags! Bei den Befehlen SUB und CMP wird C-Flag komplementiert! N Z V 11 Speichermodell des 6809 hypothetische CPU ist eine wortorientierte CPU: benötigt einen wortadressierbaren Speicher aus n-bit Worten je n-bit Speicherzeile ein 8-Bit Befehlswort mit a Bit Adreßteil für einen großen Adreßraum wird ein langes Adreßfeld und somit auch eine hohe Speicherwortbreite benötigt großer Teil des Speichers bleibt ungenutzt, da auch für 8-Bit Daten oder Befehle ohne Operand (z.b. ASL ) ein n-bit Wort benötigt wird Motorola 6809 ist eine byteorientierte CPU: benötigt einen byteadressierbaren Speicher Ein Befehl belegt je nach Adressierungsart 1, 2 3 oder 4 aufeinanderfolgende Byte im Speicher für Befehlscode und Operanden 8-Bit Daten belegen ein Speicherbyte, 16-Bit Daten belegen zwei aufeinanderfolgende Speicherbyte (höherwertiges Byte auf kleinerer Adresse) 12 6
7 Adressierungsarten des 6809 Implizite Adressierung ( implied addressing ): Die Angabe des Operanden ist implizit im Befehlscode enthalten Beispiele: CLRA, NEGA, ASRB, ROLB Direkte oder absolute Adressierung ( extended addressing ): Die 16-Bit Speicheradresse (EA = Effektive Adresse) des Operanden befindet sich hinter dem Befehlscode Beispiel: LDA $1234 Unmittelbare Adressierung ( immediate addressing ): Der Operand befindet sich unmittelbar als sog. Literal hinter dem Befehlscode, entweder als 8-Bit Wert oder als 16-Bit Wert (2 Byte) Beispiele: LDA #59, LDD #$FFAA 13 Adressierungsarten des 6809 (Forts.) Direkte seitenbasierte Adressierung ( direct page addressing ): Nur die niedrigwertigen 8 Bit der EA befinden sich hinter dem Befehlscode; die höherwertigen 8 Bit werden dem Register DP entnommen. Beispiel: LDA $34 Register-Adressierung ( register addressing ): Das dem Befehlscode folgende Byte enthält die in jeweils 4 Bit kodierten Quell- und Zielregister R S und R D Beispiele: EXG X,Y TFR B,DP 14 7
8 Adressierungsarten des 6809 (Forts.) Indizierte Adressierung ( indexed addressing ): 1) ohne Offset ( zero offset indexed ) Die Speicheradresse EA wird unverändert einem der 16-Bit Register X,Y,U oder S entnommen. Beispiele: LDA,X oder STB 0,Y 2) mit konstantem Offset ( constant offset indexed ) Zum Inhalt eines der Register X,Y,U oder S wird eine konstante Distanzadresse addiert, die in 5 Bit (im Postbyte), in 8 Bit (im Byte hinter Postbyte) oder in 16 Bit (in 2 Bytes hinter Postbyte) kodiert ist. Beispiele: LDA -5,X LDY $300,S 15 Adressierungsarten des 6809 (Forts.) Indizierte Adressierung (Forts.): 3) mit Offset im Akkumulator ( accumulator offset indexed ) Zum Register X,Y,U oder S wird zur Bildung der EA der Inhalt von A,B oder D addiert. Beispiel: LDA B,X 4) mit Autoinkrement ( auto increment indexed ) wie bei 1), jedoch wird der Inhalt eines der Basisregisters X,Y,U und S nach der Berechnung der EA um 1 oder 2 erhöht Beispiel: LDA,X+ STD,Y++ 5) mit Autodekrement ( auto decrement indexed ) wie bei 1), jedoch wird der Inhalt des Basisregisters vor Berechnung der EA um 1 oder 2 erniedrigt Beispiel: LDA,-Y STD,--X 16 8
9 Adressierungsarten des 6809 (Forts.) Indirekte indizierte Adressierung ( indexed indirect ): Die indizierten Adressierungsarten können auch indirekt eingesetzt werden,d.h. die EA ergibt sich aus dem Inhalt der 2 Speicherbytes, deren Startadresse durch Addition von Basisadresse und Offset errechnet wird. Beispiele: LDA [B,Y] LDB [-6,X] LDD [,X++] Indirekte absolute Adressierung ( extended indirect ): Auch bei absoluter Adressierung von a ist eine Indirektion möglich, d.h. die EA ergibt sich aus dem Inhalt der 2 Speicherbytes an Adressen a und a+1 Beispiel: LDA [$FFEE] 17 Adressierungsarten des 6809 (Forts.) Relative Adressierung ( relative addressing ): Die Zieladressen bei den Sprung-Befehlen des 6809 werden immer relativ zum PC angegeben, entweder in einem Byte ( short relative, schnell) oder in zwei Bytes ( long relative, langsam). Beispiele: BEQ $F0 LBGT $0200 Hinweis: Bei einer Addition im long relative Format wird ein Überlauf ignoriert, d.h. alle Speicheradressen können erreicht werden! PC-relative Adressierung ( program counter relative ): Auch der PC kann als Indexregister eingesetzt werden, jedoch nur mit konstantem Offset. Hierdurch können positionsunabhängige Maschinenprogramme auf einfachem Wege implementiert werden. Beispiel: LDX table,pcr... table rmb
Teil 1: Prozessorstrukturen
Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium
MehrMOTOROLA MC Befehlssatz
Rechnersysteme MOTOROLA MC 689 Befehlssatz Otto-von-Guericke-Universität Magdeburg Unzulänglichkeiten des Modellrechners sehr kleiner Instruktionssatz keine Konstanten viele Speicherzugriffe nur eine Bedingung
MehrMaschinenbefehlssätze. an Beispielen von: Motorola: MC 6809 ATMEL: AVR ATmega
Technische Informatik-I Maschinenbefehlssätze an Beispielen von: Motorola: MC 6809 ATMEL: AVR ATmega Otto-von-Guericke-Universität Magdeburg Unzulänglichkeiten des Modellrechners sehr kleiner Instruktionssatz
MehrTI2 Übung 2. Hauptspeicher, 6809-Prozessor. 23. November 2004 (WS 2004) Andreas I. Schmied Universität Ulm Fakultät für Informatik
Universität Ulm Fakultät für Informatik Abteilung Verteilte Systeme Projektgruppe AspectIX TI2 Übung 2 Hauptspeicher, 6809-Prozessor 23. November 2004 (WS 2004) Andreas I. Schmied (schmied@inf...) 1 Hauptspeicher
MehrTeil 2: Rechnerorganisation
Teil 2: Rechnerorganisation Inhalt: Zahlendarstellungen Rechnerarithmetik schrittweiser Entwurf eines hypothetischen Prozessors mit Daten-, Adreß- und Kontrollpfad Speicherorganisation Mikroprogrammierung
MehrTeil 1: Prozessorstrukturen
Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium
MehrInhaltsübersicht. 1. Aufbau eines Maschinenbefehls. 2. Adressierungsarten. 3. Indizierte Adressierung. 4. Befehlssatz
Kurs 7: Mikrorechner-Praktikum Inhaltsübersicht. Aufbau eines Maschinenbefehls. Adressierungsarten. Indizierte Adressierung. Befehlssatz. Verzweigungsbefehle und Berechnung von relativen Sprungadressen
MehrF Ein einfacher Modellprozessor
F ein einfacher Modellprozessor F Ein einfacher Modellprozessor Einordnung in das Schichtenmodell:. Prozessor 2. Aufbau des Modellprozessors 3. Organisation eines SRAM 4. Beschreibung in RTL 5. Adresspfad
MehrTeil 1: Prozessorstrukturen
Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium
MehrRechnersysteme. Speicherorganisation und Adressierungsarten. Otto-von-Guericke-Universität Magdeburg
Rechnersysteme Speicherorganisation und Adressierungsarten Otto-von-Guericke-Universität Magdeburg Speicherorganisation Wort-orientierter Speicher Wort 00 Wort 01 Wort 02 Wort 03 2 n -1 0 Bit Wort 2 k
MehrBefehle zur Verarbeitung von Daten ( data processing ):
ARM: Befehlssatz Befehle zur Verarbeitung von Daten ( data processing ): Register/Register-Befehle: ,, (Achtung! Andere Interpretation: ) Transport-Befehl: MOV ,
MehrTechnische Informatik-I. Speicherorganisation und Adressierungsarten. Otto-von-Guericke-Universität Magdeburg
Technische Informatik-I Speicherorganisation und Adressierungsarten Otto-von-Guericke-Universität Magdeburg Speicherorganisation Wort-orientierter Speicher Wort 00 Wort 01 Wort 02 Wort 03 2 n -1 0 Bit
MehrMikrocontroller-Programmierung
Mikrocontroller-Programmierung Anhand des HC12 Fabian Wiesel Überblick Überblick Mikrocontroller Überblick HC12 CPU Peripherie des DG128 Assemblerprogrammierung Mikrocontroller Leistungsfähigkeit: zwischen
MehrMikrocomputertechnik 2.Mikroprozessor
2.3 Programmiermodell des 68000 Aus Sicht des Programmierers besteht der Prozessor aus Registersatz Befehlssatz Adressierungsarten Registersatz des 68000 8 universelle Datenregister (32 Bit) D0 D7 8 Adress-Register
MehrAssembler Kontrollstrukturen
Assembler Kontrollstrukturen Dr.-Ing. Volkmar Sieh Department Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2008 Assembler Kontrollstrukturen 1/21 2008-04-03 Kontrollstrukturen
MehrTeil 1: Prozessorstrukturen
Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium
Mehr9. Assembler: Der Prozessor Motorola 68000
9.1 Architektur des Prozessors M 68000 9.2 Adressierungsarten des M 68000 9-1 9.1 Beschreibung des Prozessors M 68000 Charakteristische Daten des 56 Maschinenbefehle 14 Adressierungsarten Zweiadressmaschine
MehrDATEN UND BEFEHLSFORMATE, ADDRESSIERUNGSARTEN UND MASCHINEN- PROGRAMMIERUNGSKONZEPTE
D - CA - IV - AA - 1 HUMBOLDT-UNIVERSITÄT ZU BERLIN INSTITUT FÜR INFORMATIK Vorlesung 4 DATEN UND BEFEHLSFORMATE, ADDRESSIERUNGSARTEN UND MASCHINEN- PROGRAMMIERUNGSKONZEPTE Sommersemester 2003 Leitung:
MehrH Hypothetischer Prozessor
1 Einordnung H Hypothetischer Prozessor Ebene 6 Ebene 5 Ebene 4 Ebene 3 Ebene 2 Ebene 1 Ebene 0 Problemorientierte Sprache Assemblersprache Betriebssystem ISA (Instruction Set Architecture) Mikroarchitektur
MehrKap.2 Befehlsschnittstelle. Prozessoren, externe Sicht
Kap.2 Befehlsschnittstelle Prozessoren, externe Sicht 2 Befehlsschnittstelle 2.1 elementare Datentypen, Operationen 2.2 logische Speicherorganisation 2.3 Maschinenbefehlssatz 2.4 Klassifikation von Befehlssätzen
MehrTechnische Informatik 2 Adressierungsarten
Technische Informatik 2 Adressierungsarten Prof. Dr. Miroslaw Malek Sommersemester 2009 www.informatik.hu-berlin.de/rok/ca Thema heute X-Adressmaschine 0-Adressmaschine 1-Adressmaschine 2-Adressmaschine
MehrTECHNISCHE HOCHSCHULE NÜRNBERG GEORG SIMON OHM Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten, z.b. Befehl
Mehr05. Assembler-Programmierung. Datenstrukturen des ATMega32. Literatur
0. Assembler-Programmierung Datenstrukturen des ATMega32 Literatur mikrocontroller.net avr-asm-tutorial.net asm Alles über AVR AVR-Assembler-Einführung Assembler AVR-Aufbau, Register, Befehle 2008: ouravr.com/attachment/microschematic/index.swf
Mehr10. Der Befehlssatz des MSP 430
1. Der Befehlssatz des MSP 43 1.1 Befehlsformate 1.2 Zweiadressbefehle 1.3 Einadressbefehle 1.4 Sprungbefehle 1.5 Emulierte Befehle Programmierkurs II Wolfgang Effelsberg 1. Befehlssatz des MSP 43 1 1
MehrMikrocomputertechnik. Thema: Der Aufbau des XC888-Mikrocontrollers -Teil 1 -
Mikrocomputertechnik Thema: Der Aufbau des XC888-Mikrocontrollers -Teil 1 - Mikroprozessor-Achritekturen Folie 2 Mikroprozessor-Achritekturen Klassifizierung anhand Wortbreite CPU-Architektur und Busleitungen
MehrVon-Neumann-Architektur
Von-Neumann-Architektur Bisher wichtig: Konstruktionsprinzip des Rechenwerkes und Leitwerkes. Neu: Größerer Arbeitsspeicher Ein- und Ausgabewerk (Peripherie) Rechenwerk (ALU) Steuerwerk (CU) Speicher...ppppp...dddddd..
MehrMikroprozessoren Grundlagen AVR-Controller Input / Output (I/O) Interrupt Mathematische Operationen
Mikroprozessoren Grundlagen Aufbau, Blockschaltbild Grundlegende Datentypen AVR-Controller Anatomie Befehlssatz Assembler Speicherzugriff Adressierungsarten Kontrollstrukturen Stack Input / Output (I/O)
MehrTeil III: Wat macht ene Mikrokontroller?
Programmierung von ATMEL AVR Mikroprozessoren am Beispiel des ATtiny13 Eine Einführung in Aufbau, Funktionsweise, Programmierung und Nutzen von Mikroprozessoren Teil III: Wat macht ene Mikrokontroller?
MehrMOP: Befehlsliste für den Mikrocontroller 8051
Beuth Hochschule Berlin FB VI, Labor für Digitaltechnik MOP: Befehlsliste für den Mikrocontroller 8051 Erläuterung der Operanden Operand A addr11 addr16 bit /bit C #data #data16 direct DPTR PC Ri Rn rel
MehrDie Mikroprogrammebene eines Rechners
Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten, z.b. Befehl holen Befehl dekodieren Operanden holen etc.
Mehr10. Die Adressierungsarten des MSP 430
10. Die Adressierungsarten 10.1 Übersicht über die Adressierungsarten 10.2 -Operanden 10.3 Indexregister mit Distanz 10.4 Symbolische (relativ zum ) 10.5 Absolute 10.6 Indirekte 10.7 Indirekte Adressierung
MehrStruktur der CPU (1) Die Adress- und Datenpfad der CPU: Befehl holen. Vorlesung Rechnerarchitektur und Rechnertechnik SS Memory Adress Register
Struktur der CPU (1) Die Adress- und Datenpfad der CPU: Prog. Counter Memory Adress Register Befehl holen Incrementer Main store Instruction register Op-code Address Memory Buffer Register CU Clock Control
MehrMikrocomputertechnik. Adressierungsarten
Adressierungsarten Ein Mikroprozessor bietet meist eine Reihe von Möglichkeiten, die Operanden für eine Rechenoperation zu bestimmen. Diese Möglichkeiten bezeichnet man als Adressierungsarten. unmittelbare
MehrBefehlssatz der Mikrocontroller der 51er -Familie
Befehlssatz der Mikrocontroller der 51er -Familie Abkürzungen: Mikrocontrollerfamilie 8051 Befehlssatz A : Akkumulator Rn : Register R0..R7 Ri : R0 oder R1 dadr : direkte Byte-Adresse im int. Speicher
MehrBefehlssatz der Mikrocontroller der 51er -Familie
Befehlssatz der Mikrocontroller der 51er -Familie Abkürzungen: Mikrocontrollerfamilie 8051 Befehlssatz A : Akkumulator Rn : Register R0..R7 Ri : R0 oder R1 dadr : direkte Byte-Adresse im int. Speicher
MehrMOS Technologies 6502 MPU - Der revolutionäre Mikroprozessor. Fabian Wenzel IAV 1 Rudolf-Diesel-Fachschule Nürnberg
MOS Technologies 6502 MPU - Der revolutionäre Mikroprozessor Fabian Wenzel IAV 1 Rudolf-Diesel-Fachschule Nürnberg Geschichtliches In den frühen 70er Jahren standen bereits leistungsfähige 8-Bit Mikroprozessoren
MehrDaniel Betz Wintersemester 2011/12
Daniel Betz Wintersemester 2011/12 Digitally signed by daniel.betz@daniel-betz.com Date: 2011.12.04 17:24:40 +01'00' Insgesamt 16 Register von je 16 Bit (=WORD) Breite Untere 8 Register auch als 2 Register
MehrÜbungen zur Vorlesung Technische Informatik I, SS 2002 Hauck / Guenkova-Luy / Prager / Chen Übungsblatt 5 Rechenwerke / Scheduling
Übungen zur Vorlesung Technische Informatik I, SS 2002 Hauck / Guenkova-Luy / Prager / Chen Übungsblatt 5 Rechenwerke / Scheduling Aufgabe 1: Sie haben in der Vorlesung einen hypothetischen Prozessor kennen
MehrZusammenfassung der Assemblerbefehle des 8051
Zusammenfassung der Assemblerbefehle des 8051 Seite 1 von 5 Befehl Bezeichnung Syntax Wirkung / Beispiel Befehle zum Datentransfer MOV Move MOV [Ziel],[Quelle] MOV P1,P3 Kopiert den Inhalt von P3 nach
MehrMikroprozessor als universeller digitaler Baustein
2. Mikroprozessor 2.1 Allgemeines Mikroprozessor als universeller digitaler Baustein Die zunehmende Integrationsdichte von elektronischen Schaltkreisen führt zwangsläufige zur Entwicklung eines universellen
MehrLösungsvorschlag 9. Übung Technische Grundlagen der Informatik II Sommersemester 2009
Fachgebiet Rechnerarchitektur Fachbereich Informatik Lösungsvorschlag 9. Übung Technische Grundlagen der Informatik II Sommersemester 2009 Aufgabe 9.1: Dinatos-Algorithmus-Analyse Die folgenden Verilog-Zeilen
MehrAssembler - Adressierungsarten
Assembler - Adressierungsarten Dr.-Ing. Volkmar Sieh Department Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2008 Assembler - Adressierungsarten 1/31 2008-04-01
MehrOrganisatorisches. PDV und Robotik Fakultät 4 TUB 1 INFO4 Übung Assembler 1
Organisatorisches Die Großübung findet zweimal mit gleichen Inhalt statt: Montag 16-18 und Mittwoch 14-16 jeweils im MA001. Betreute Rechnerzeit: Donnerstag 10-18 und Freitag 10-16 jeweils FR2516 Code:
MehrDer Toy Rechner Ein einfacher Mikrorechner
Der Toy Rechner Ein einfacher Mikrorechner Dr. Gerald Heim Haid-und-Neu-Str. 10-14 76131 Karlsruhe 16. Mai 1995 Allgemeine Informationen 2 Quelle: Phil Kopmann, Microcoded versus Hard-Wired Logic, Byte
MehrMikroprozessoren. Aufbau und Funktionsweise. Christian Richter. Ausgewählte Themen der Multimediakommunikation SS 2005
Mikroprozessoren Aufbau und Funktionsweise Christian Richter Ausgewählte Themen der Multimediakommunikation SS 2005 Christian Richter (TU-Berlin) Mikroprozessoren AT MMK 2005 1 / 22 Gliederung Was ist
MehrGrundlagen der Rechnerarchitektur. Binäre Logik und Arithmetik
Grundlagen der Rechnerarchitektur Binäre Logik und Arithmetik Übersicht Logische Operationen Addition, Subtraktion und negative Zahlen Logische Bausteine Darstellung von Algorithmen Multiplikation Division
MehrEinführung in die Informatik
Einführung in die Informatik Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik mwilhelm@hs-harz.de http://www.miwilhelm.de Raum 2.202 Tel. 03943 / 659 338 FB
Mehr6. Intel IA-32 Prozessoren Aufbau und Adressierungsarten
6. Intel IA-32 Prozessoren Aufbau und Adressierungsarten 6.1 Gegenstand der Vorlesung Interne Organisation - Architektur - Register - Statusbits - Speicherstruktur Basis-Adressierungsarten - direct - absolute
MehrAufgabe I: Im einzelnen soll das Hauptprogramm:
Aufgabe I: Gesucht ist ein Programm, das zwei Lauflichter realisiert. Das erste werde in der Siebensegment-Anzeige durch genau ein aktiviertes mittleres Segment g dargestellt, das von rechts nach links
MehrINFORMATIK Oberstufe. Funktionsweise eines Rechners
INFORMATIK Oberstufe Funktionsweise eines Rechners Lehrplan Inf 12.3 (ca. 17 Std.): Grundlegende Kenntnisse über den Aufbau eines Rechners und seiner prinzipiellen Funktionsweise helfen den Schülern, den
MehrDie ARM-Mikroarchitektur. Acorn RISC Machine ARM. Asm Prak SS03 p.1/13
Die -Mikroarchitektur Acorn RISC Machine Asm Prak SS03 p.1/13 Die -Mikroarchitektur Acorn RISC Machine Advanced RISC Machine Asm Prak SS03 p.1/13 Designziele Kostengünstig Asm Prak SS03 p.2/13 Designziele
MehrInformatikgrundlagen I Grundlagen der Informatik I
Informatikgrundlagen I Grundlagen der Informatik I Dipl.-Inf. Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik mwilhelm@hs-harz.de Raum 2.202 Tel. 03943 / 659 338 1 Inhalt 1. Einführung,
MehrInstruktionssatz-Architektur
Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2005/2006 Übersicht 1 Einleitung 2 Bestandteile der ISA 3 CISC / RISC Übersicht 1 Einleitung 2 Bestandteile
MehrTechnische Informatik 1
Technische Informatik 1 2 Instruktionssatz Lothar Thiele Computer Engineering and Networks Laboratory Instruktionsverarbeitung 2 2 Übersetzung Das Kapitel 2 der Vorlesung setzt sich mit der Maschinensprache
MehrARM: Befehlssatz (Forts.)
ARM: Befehlssatz (Forts.) Befehl SWI zum Auslösen eines Software-Interrupts: Instruktionsformat: Ausführung von SWI überführt CPU in den supervisor mode (nach Retten des PC in r14_svc und des CPSR in SPSR_svc)
MehrAssembler Integer-Arithmetik
Assembler Integer-Arithmetik Dr.-Ing. Volkmar Sieh Department Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2008 Assembler Integer-Arithmetik 1/23 2008-04-01 Arithmetik
MehrRechnergrundlagen SS Vorlesung
Rechnergrundlagen SS 2007 3. Vorlesung Inhalt Zahlensysteme Binäre Darstellung von Integer-Zahlen Vorzeichen-Betrag Binary Offset 1er-Komplement 2er-Komplement Addition und Subtraktion binär dargestellter
Mehr4 Assembler für die 8051-Controller-Familie
4 Assembler für die 8051-Controller-Familie Tabelle 4.1 Wichtige Schreibweisen und Bedeutungen für die Befehle Abkürzung #data data addr Rr @Rr code addr Bedeutung Daten sind in der Instruktion codiert
MehrNeues vom STRIP Forth-Prozessor
Neues vom STRIP Forth-Prozessor Tagung der Forth-Gesellschaft April 2013 in Garmisch-Partenkirchen Willi Stricker 1 STRIP Forth-Prozessor STRIP32 32 Bit-Version Eigenschaften: Die 32-Bit-Version ist nahezu
Mehr1. Übung - Einführung/Rechnerarchitektur
1. Übung - Einführung/Rechnerarchitektur Informatik I für Verkehrsingenieure Aufgaben inkl. Beispiellösungen 1. Aufgabe: Was ist Hard- bzw. Software? a Computermaus b Betriebssystem c Drucker d Internetbrowser
Mehr3. Grundlagen der Rechnerarchitektur
3. Grundlagen der Rechnerarchitektur 3.1 Architektur des von-neumann-rechners 3.2 Maschinentypen: Einadressmaschine, Zweiadressmaschine 3.3 Befehlsformate und Adressierungstechniken 3.4 Beispiel: der Prozessor
MehrMotorola 680x0: function codes
Motorola 680x0: function codes CPU unterscheidet mittels function codes fünf Adressräume: CPU-Adreßraum wird für E/A, Interrupts und Koprozessoren eingesetzt Realisierung z.b. durch Speicherverwaltungseinheit
MehrMotorola 680x0: function codes
Motorola 680x0: function codes CPU unterscheidet mittels function codes fünf Adressräume: CPU-Adreßraum wird für E/A, Interrupts und Koprozessoren eingesetzt Realisierung z.b. durch Speicherverwaltungseinheit
MehrTI-Übung Assembler. Andreas I. Schmied AspectIX-Team Abteilung Verteilte Systeme Universität Ulm WS2005
TI-Übung 2 6809-Assembler Andreas I. Schmied (andreas.schmied@uni-ulm.de) AspectIX-Team Abteilung Verteilte Systeme Universität Ulm WS2005 6809 Wiederholung (1) 8/16-Bit Prozessor Register: A/B/D, S, U,X,
MehrPC/XT/AT ASSEMBLER-BUCH
PC/XT/AT ASSEMBLER-BUCH Alle Befehle + Makro-Assembler KLAUS-DIETER THIES t
Mehrx86-assemblerprogrammierung
x86-assemblerprogrammierung von Michael Röhrs (Ergänzend zum Vortrag am 25.04.01) Einleitung Die Familie der x86-prozessoren gehört zur Klasse der CISC-Prozessoren ( Complex Instruction Set Computer ).
MehrRechnergrundlagen SS Vorlesung
Rechnergrundlagen SS 27 4. Vorlesung Inhalt Binäre Darstellung von Integer-Zahlen Vorzeichen-Betrag 2er-Komplement BCD Addition und Subtraktion binär dargestellter Zahlen Carry und Overflow Little Endian
MehrKap 4. 4 Die Mikroprogrammebene eines Rechners
4 Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten (Befehl holen, Befehl dekodieren, Operanden holen etc.).
MehrProzessor HC680 fiktiv
Prozessor HC680 fiktiv Dokumentation der Simulation Die Simulation umfasst die Struktur und Funktionalität des Prozessors und wichtiger Baugruppen des Systems. Dabei werden in einem Simulationsfenster
MehrAllgemeine Struktur eines Digitalrechners
2. Allgemeine Struktur eines Digitalrechner In diesem Skript soll im wesentlichen die maschinennahe Programmierung von Digitalrechnern behandelt werden. Deshalb wird auf die hardwaremäßige Realisierung
MehrTechnische Informatik 2: Addressierung und Befehle
Technische Informatik 2: Addressierung und Befehle Memory Map Programm Speicher: Adresse $000-$FFF max. 4096 Byte für kompiliertes Programm Data Memory: Adresse $0000-$FFFF 32 8Bit Register 64 I/O Register
MehrL3. Datenmanipulation
L Datenmanipulation Aufbau eines Computers Prozessor, Arbeitsspeicher und system Maschinensprachen und Maschinenbefehle Beispiel einer vereinfachten Maschinensprache Ausführung des Programms und Befehlszyklus
MehrSteuerwerk einer CPU. Einführung in die Technische Informatik Falko Dressler, Stefan Podlipnig Universität Innsbruck
Steuerwerk einer CPU Einführung in die Technische Informatik Falko Dressler, Stefan Podlipnig Universität Innsbruck Übersicht Implementierung des Datenpfads Direkte Implementierung Mikroprogrammierung
MehrDer 8086/88 als Rechenkünstler
Der 8086/88 als Rechenkünstler In diesem Referat wird jene Gruppe von Befehlen besprochen, denen der Computer seinen Namen verdankt ("to compute" = engl. rechnen). Dies sind die Arithmetik- und Logikbefehle
MehrALU ALU. ALU-Aufbau. Eine ALU (arithmetisch-logische Einheit) besteht in der Regel aus. Addierer. Logischer Einheit. Shifter
ALU ALU-Aufbau Eine ALU (arithmetisch-logische Einheit) besteht in der Regel aus Addierer Logischer Einheit Shifter Eingänge in eine ALU: zwei Operanden, Instruktionscode OP1 OP0 Ausgänge einer ALU: Ergebnis,
MehrHeute nur MIPS-Praxis (4 Aufgaben)
Themen heute Heute nur MIPS-Praxis (4 Aufgaben) Hinweis: Diese Aufgaben findet ihr auf den Übungsblättern zu den Tutorien (bei Aufgabe 4 wurde eine Teilaufgabe und im Tutorium #6 bereits geklärte Wissensfragen
MehrTeil 1 Magic Disk 01/90
Teil 1 Magic Disk 01/90 Einleitung: Dieser Assembler-Kurs soll allen BASIC-Programmierern den Einstieg in Assembler ermöglichen. Ich werde mich in der Folge darum bemühen, die komplizierten Fachbegriffe
MehrRechnerstrukturen 1: Der Sehr Einfache Computer
Inhaltsverzeichnis 1: Der Sehr Einfache Computer 1 Komponenten.................................... 1 Arbeitsweise..................................... 1 Instruktionen....................................
MehrHC680 PROGRAMMER'S REFERENCE MANUAL
HC680 PROGRAMMER'S REFERENCE MANUAL Programmieranleitung Mnemonic Assembler Maschinenbefehl Wirkung /Bedeutung Register (0 bis 3 allg. Reg.) Ope- Opcode/Binärcode - Adressierungsart - Nr Bez. xx Bin Art
MehrRO-Tutorien 15 und 16
Tutorien zur Vorlesung Rechnerorganisation Tutorienwoche 5 am 25.05.2011 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft
MehrMultiplizierer. Beispiel komplexer arithmetischer Schaltung. Langsamer als Addition, braucht mehr Platz. Sequentielle Multiplikation
Multiplizierer 1 Beispiel komplexer arithmetischer Schaltung Langsamer als Addition, braucht mehr Platz Sequentielle Multiplikation Kompakte kombinatorische Variante mit Carry-Save-Adders (CSA) Vorzeichenbehaftete
MehrGeräteentwurf mit Mikroprozessoren 1
Geräteentwurf mit Mikroprozessoren 1 Vorlesung am Institut für Elektronik der TU Graz Dipl.-Ing. Dr. Gerhard Stöckler SS 2003 Vorausgesetzte Kenntnisse: Grundlagen der Digitaltechnik Binäre Informationsdarstellung
MehrBeispiel: A[300] = h + A[300]
Beispiel: A[300] = h + A[300] $t1 sei Basisadresse von A und h in $s2 gespeichert. Assembler Code? Maschinen Code (der Einfachheit halber mit Dezimalzahlen)? op rs rt rd adr/shamt funct Instruktion Format
MehrKlausur Technische Informatik 1 + E-Technik SS 2013 Prüfer: Sutter Hilfsmittel: keine
Name:. Matrikel-Nr. Anzahl der Aufgaben: 18 Maximal erreichbare Punktezahl: 60 Ergebnis: 1. Gegeben ist der Motorola 1-of-8 Decoder/Demultiplexer MC74F138 mit folgendem Datenblattausschnitt: Datenblattausschnitt
MehrArchitektur der Intel 8051 Familie und Grundlegende Programmierung Reto Gurtner 2005
Architektur der Intel 8051 Familie und Grundlegende Programmierung Reto Gurtner 2005 1 1. DIE GESCHICHTE DER 8051-MIKROCONTROLLERFAMILE 4 2. GRUNDLEGENDE HARDWARESTRUKTUR UND FUNKTIONSMODELL 5 2.1 HARDWARESTRUKTUR
MehrProblem: Keine Integers in JavaCard. ToDo: Rechnen mit Bytes und Shorts
Kapitel 6: Arithmetik in JavaCard Problem: Keine Integers in JavaCard ToDo: Rechnen mit Bytes und Shorts Java SmartCards, Kap. 6 (1/20) Hex-Notation 1 Byte = 8 Bit, b 7 b 6 b 5 b 4 b 3 b 2 b 1 b 0 0101
MehrEinführung in AVR Assembler
Einführung in AVR Assembler Dennis Fassbender Institut für Technik Autonomer Systeme (LRT8) Universität der Bundeswehr München 09042014 Was ist Assembler? Low-level-Programmiersprache Erlaubt direkten
Mehr8. Intel IA-32 Prozessoren: Befehlsübersicht
8. Intel IA-32 Prozessoren: Befehlsübersicht Ganzzahlarithmetik Kontrollstrukturen Bitmanipulation Schieben und Rotieren 20.10.2007 Meisel 1 8.1 Ganzzahl-Arithmetik 8.1.1 Übersicht add adc sub sbb imul
MehrVorwort 8. Kap. 1: Grundlagen 10
Inhaltsverzeichnis Vorwort 8 Kap. 1: Grundlagen 10 1.1 Analogie zwischen der Spieluhr und einem Prozessor 10 1.2 Unterschiede zwischen Mikroprozessor und Spieluhr 11 1.3 Die Programmierung eines Mikroprozessors
MehrMIX-Befehle - Aufbau
MIX-Befehle - Aufbau 0 1 2 3 4 5 +/- A A I F C +AA ist der Adressteil des Befehls. Diese Zahl oder Adresse nennen wir M. I ist die Indexspezifikation. I=0 bedeutet unveränderter Adressteil, sonst wird
MehrAssembler-Programmierung
Assembler-Programmierung Dr.-Ing. Volkmar Sieh Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011 Assembler-Programmierung 1/48 2012-02-29 Assembler-Programmierung
MehrProgrammierung von ATMEL AVR Mikroprozessoren am Beispiel des ATtiny13
Programmierung von ATMEL AVR Mikroprozessoren am Beispiel des ATtiny13 Eine Einführung in Aufbau, Funktionsweise, Programmierung und Nutzen von Mikroprozessoren Teil II: Wat iss ene Bit, Byte un Word?
MehrRISC-Prozessoren (1)
RISC-Prozessoren (1) 1) 8 Befehlsklassen und ihre mittlere Ausführungshäufigkeit (Fairclough): Zuweisung bzw. Datenbewegung 45,28% Programmablauf 28,73% Arithmetik 10,75% Vergleich 5,92% Logik 3,91% Shift
MehrZahlen im Computer (Klasse 7 Aufbaukurs Informatik)
Zahlen im Computer (Klasse 7 Aufbaukurs Informatik) Die Bildauswahl erfolgte in Anlehnung an das Alter der Kinder Prof. J. Walter Bitte römische Zahlen im Geschichtsunterricht! Messsystem mit Mikrocontroller
MehrDatenpfad einer einfachen MIPS CPU
Datenpfad einer einfachen MIPS CPU Die Branch Instruktion beq Grundlagen der Rechnerarchitektur Prozessor 13 Betrachten nun Branch Instruktion beq Erinnerung, Branch Instruktionen beq ist vom I Typ Format:
MehrNeues vom STRIP Forth-Prozessor
Neues vom STRIP Forth-Prozessor Tagung der Forth-Gesellschaft März 2014 Bad Vöslau/Österreich Willi Stricker -Prozessor Inhalt 1. STRIP-Befehlssatz Bisher: minimaler Befehlssatz neu: erweiterter Befehlssatz
Mehr