Technische Informatik-I. Speicherorganisation und Adressierungsarten. Otto-von-Guericke-Universität Magdeburg
|
|
- Leon Reuter
- vor 6 Jahren
- Abrufe
Transkript
1 Technische Informatik-I Speicherorganisation und Adressierungsarten Otto-von-Guericke-Universität Magdeburg
2 Speicherorganisation Wort-orientierter Speicher Wort 00 Wort 01 Wort 02 Wort 03 2 n -1 0 Bit Wort 2 k -1 Byte-orientierter Speicher Byte 00 Byte 01 Byte 02 Byte Bit Byte 2 k -1 2
3 Speicherorganisation Wort-orientierter Speicher Wort 00 Wort 01 Wort 02 Wort Bit Wort 2 k -1 Byte-orientierter Speicher (Lang-) Wort (Halb-) Wort Byte-Adressen B- 8 F -C Wort 00 Wort 01 Wort 02 Wort Byte 0 Byte 1 Byte 2 Byte 0 Byte 1 Byte 2 Byte 0 Byte 1 Byte 2 Byte 0 Byte 1 Byte 2 Byte 3 Byte 3 Byte 3 Byte 3 0 Bit Doppelword Quad- Wort Wort 2 k -1 Byte 0 Byte 1 Byte 2 Byte 3 3
4 Big-Endian-Darstellung Beisp. Motorola 680x, 68x00, SPARC, PowerPC Sp.- Wort a Sp.- Wort a + 1 Sp.- Wort a + 2 Sp.- Wort a + 3 Byte W 0 Byte 1 E Byte L2 Byte T Byte Byte Byte Byte Byte 8 Byte 9 Byte A Byte B Byte C Byte D Byte E Byte F Big-Endian- Darstellung 32-Bit Integer: 0xA20D7777 Wortreihenfolge Zeichenkette: "WELTBANK" L-Wort k k +1 k +2 k +3 Byte 0 Byte 1 Byte 2 Byte MSB LSB MSB LSB w 0 w 1 W E L T L-Wort k +4 Byte 4 k +5 k +6 k +7 Byte 5 Byte 6 Byte 7 w 2 w 3 B A N K 4
5 Little-Endian-Darstellung Beisp. Intel 80x86, ARM Sp.- Wort a Sp.- Wort a + 1 Sp.- Wort a + 2 Sp.- Wort a + 3 Byte T 0 Byte L 1 Byte E2 Byte3 W 0111 Byte Byte Byte Byte Byte 8 Byte 9 Byte A Byte B Byte C Byte D Byte E Byte F Little-Endian- Darstellung 32-Bit Integer: 0xA20D7777 Wortreihenfolge Zeichenkette: "WELTBANK" Wort k k+1 k+2 k+3 Byte 0 Byte 1 Byte 2 Byte LSB MSB LSB MSB w 1 w 0 T L E W Wort k+4 Byte 4 k+5 k+6 k+7 Byte 5 Byte 6 Byte 7 w 3 w 2 K N A B 5
6 Ziele beim Entwurf eines Adressierungsmechanismus großer Adressraum kleines Adressfeld in der Instruktion Komfort für den Programmierer positionsunabhängiger (verschieblicher) Code Lösung des Zielkonflikts zwischen Größe des A-Raums und Größe des A-Feldes: Berücksichtigung von Lokalität der Berechnungen Vereinfachung der Adressierung einfacher Datenstrukturen (Listen, Arrays) 6
7 Möglichkeiten der Operandenspezifikation Spezifikation des Operanden Adresse Direktoperand (Literal, immediate value) implizit (0-Adress-Befehl) explizit (n-adress-befehl) Spezialbefehle, die sich auf bestimmte Register beziehen implizit addressierte Datenstrukturen z.b. Stacks, Queues Quelle/Ziel (Source/Destination) Anzahl der Operanden Reg./Reg. Reg./Mem. Mem./Mem. absolut relativ indirekt indiziert indirekt/indiziert 7
8 6809 Register Adressierung Befehle : TFR, EXG, Speicherplatz m m+1 m+2 m+3 m+4 OPCODE Reg. Spec. Postbyte Definition bei TFR und EXG:! Reg. 1 (S) Reg. 2 (D) S: Source D: Destination Register Code Hex (Bin) D X Y U S PC A B CCR 1010 A DP 1011 B 0 8
9 Stack (Stapel, Keller, LIFO-Queue) absteigende Adressen 0xFFFF Stack wächst in diese Richtung BOS Max Bottom of Stack Stack- Pointer TOS Top of Stack PUSH PULS Daten 0x0000 PUSH: SP ß SP-1 SP = MAX: Exception full Mem[SP] ß Register 9 PULS: SP = BOS: Exception empty Register ß Mem[SP] SP ß SP+1
10 6809 Stack Adressierung Befehle : PSHU, PSHS, PULU, PULS Speicherplatz m m+1 m+2 m+3 m+4 OPCODE Register List. Post-Byte Definition bei PSHx und PULx PSHS, PULS PC U Y X DP B A CC PSHU, PULU PC S Y X DP B A CC 10
11 6809 Direktoperanden (unmittelbare Adressierung, engl.: immediate) Speicherplatz m OPCODE m+1 m+2 m+3 post byte 1 post byte 2 8bit 16 Bit m+4 Beisp. : ADDA #$95 m 8B m+1 95 ADDD #$1295 m C3 m+1 12 m+2 95 PC = PC+2 PC = PC+3 11
12 Absolute (Direkte) Adressierung Speicherplatz 6809 (extended direct) m m+1 m+2 m+3 OPCODE qq pp m+4 EA = qq pp qq pp Die effektive Adresse EA wird durch Konkatenation der beiden Post Bytes nach dem OPCODE gebildet. Das erste Post Byte (qq) gibt das höherwertige Byte, das zweite Postbyte (pp) das niederwertige Byte der EA an. 12
13 6809 (base page direct) Adressierung über Basisregister Speicherplatz m OPCODE Direct Page Register qq DP m+1 m+2 m+3 pp m+4 EA = qq pp qq pp Die effektive Adresse EA wird durch Konkatenation einer kurzen Adresse nach dem OPCODE mit dem Inhalt des Direct Page Registers (DP) gebildet. Die kurze Adresse gibt das niederwertige Byte, der Inhalt des DP das höherwertige Byte der EA an. Das DP kann dynamisch durch einen Transferbefehle z.b. TFR A, DP geladen werden oder durch eine Assemblerdirective SETDP gesetzt werden. 13
14 6809 (extended indirect) Indirekte Adressierung Speicherplatz Beisp.: ADDA[$E0D7] m m+1 m+2 m+3 m+4 OPCODE post byte (9F) qq pp spezifiziert den indirekt Modus qq pp I A = qq 28 + pp 403E 403F m m+1 m+2 Datum AB 9F E0 m+3 D7 n n +1 dd ee m+4 E 0D6 E 0D7 40 dd ee E A = dd 28 + ee E0D8 E0D9 3F Die dem OPCODE folgende Adresse gibt nicht an, wo sich die Daten für den Befehl befinden, sondern Technische die Adresse, Informatik die auf I, WS die 14/15 Daten zeigt (Unterstützung von Zeigern). 14
15 Indizierte Adressierung (Indexed Adressing) Basisadresse Versatz displacement, offset + EA =Basisadresse + Distanzadresse Wo steht die Basisadresse? Register: Indexregister Speicher: indirekte Adressierung Wo steht der Versatz? Speicher (Literal) Register Autoincrement /Autodecrement 15
16 Grundform der indiziert indirekten Adressierung Indexregister + displacement, offset Versatz Adresse der EA im Speicher EA OPCODE 16
17 Indizierte Adressierung beim MC 6809: Zero offset 5-Bit offset Long (16 Bit) constant offset Accumulator offset (Versatz kann verändert werden) Autoincrement Program Counter Relativ Indexed Indirect 17
18 Grundformen der indizierten Adressierung Basisadresse Versatz + EA =Basisadresse + Versatz Basisadresse Versatz Bezeichnung (Index-) Register Literal (kurz 5 Bit) Adressierung mit konstantem Versatz X, Y, U, S, PC Speicher (lang 8/16 Bit) vom Indexregister Constant Offset Mode (Index-) Register Register A, B, D Adressierung mit Versatz aus X, Y, U, S dem Accumulator A, B oder D Accumulator Offset (Index-) Register fest ±1, ±2 Autoincrement / Autodecrement X, Y, U, S POST increment / PRE decrement 18
19 Instruktion Adresse EA Operand direkt Instruktion Register Adresse Versatz + indiziert EA Operand Instruktion Adresse Adresse indirekt EA Operand Register Adresse indiziert indirekt Versatz + Adresse 19 EA Operand
20 6809 Indizierte Adressierung (Indexed Adressing) Modi für indizierte Adressierung: Konstanter Versatz Langform (zusätzliches Byte) lange Form(16 Bit) Kurzform (Spez. im Post Byte) kurze Form (8 Bit) Versatz = 0 Versatz ist 5-Bit lang Programmzähler Offset 8/16 Bit Accumulator Offset A, B und D Auto Increment um 1 oder 2 Auto Decrement um 1 oder 2 Extended Indirect Assembler Notation: Notation Bedeutung,R das Register R (X, Y, U, S, PC) ist als Indexregister spezifiziert offset,r offset wird zum Indexregister R addiert label,pcr Programmzähler-relative Adressierung den Versatz zwischen PC und Label wird in der Assemblierungsphase berechnet und als konstanter Versatz im Modus: constant PC-Offset eingesetzt,r+(+) Autoincrement um 1 (bzw. 2) des Registers R (X, Y, U, S, PC) (Postincrement), -(-)R Autodecrement um 1 (bzw 2) des Registers R (X, Y, U, S, PC) (Predecrement) [... Technische ] Informatik I, WS indizierte 14/15 Adresse ist eine indirekte Adresse 20
21 LDX HEAD_OF_LIST Index Reg. COMP CMPX End_lst BHI Fin LDA,X+ Indiziert mit (Post-) Autoincrement CMPA #77 BNE COMP BSR EF! Subroutine Branch to "element found" Fin BSR NF!! Subroutine Branch to "element not found" HEAD-OF-LIST FDB $0000 End_lst FDB $0FFF Listen Element Listen Element Listen Element Listen Element Listen Element Index Reg. LDX HEAD_OF_LIST LDA Sem_O COMP LDB A,X Indiziert mit Register A Offset Versatz CMPB S_zahl Falls Semesterzahl >12: BHI OUTPUT Ausgabe: Name, Vorname LEAX RL, X Addieren der Record-Länge* CMPX End_lst Ende der Liste erreicht? BHI Fin BRA COMP RL FCB 32 Sem_O FCB 29 S_zahl FCB 12 HEAD_OF_LIST FDB $0000 End_lst FDB $0FFF * da es keinen Additionsbefehl für das Indexregister X gibt, wird LEAX verwendet. 21 Name (14 Byte) Vorn ame (14 Byte) Alter (1 Byte) Semester (1 Byte) Matr.Nr. (2 Byte) Name (14 Byte) Vorn ame (14 Byte) Alter (1 Byte) Semester (1 Byte) Matr.Nr. (2 Byte) HEAD_OF_LIST
22 Erweiterungen für die Indizierte Adressierung Indexregister Basisform Versatz displacement, offset + EA = Indexregister + Distanzadresse Erweiterungen: skalierter Index zusätzliche feste Distanzadressen Indirektion 22
23 Indiziert, indizierter, am... Memory indirect pre-indexed Adressierungsart bei MC Addressregister memory address Base Displacement 31 sign extended value 0 + Index Register 31 sign extended value 0 Scale scale value x indirect memory address points to value of indirect memory address 0 0 Output Displacement 31 sign extended value 0 + Effective Address 23 operand
24 Architektur Varianten 0,1,2,3 wie viele Adressen dürfen es denn sein? Stack orientiert: Burroughs, Java VM Speicher orientiert: IBM 360 series, Accumulator-Architekturen, frühe Mikroprozessoren Erweitert Speicher-orientiert: DEC VAX, Motorola 68K, IBM PowerPC, Intel x 86, Pentium II Register orientiert: DEC Alpha, Sparc, MIPS 24
25 Beisp. : Motorola 6809 Ein-Adreß-Befehl OPCODE Adr eßfeld Befehlsformate: 680x0, Intel 386,486 Beisp.: Mot orola 680x0 Zwei-Adreß-Befehl OPCODE Adr eßfeld (Quelle) Adr eßfeld (Ziel) 2. ter Quel loperand ste ht an Zi eladresse und wird d urch Ope ration überschrieben OPCODE REG MO D Adreßfeld MOD Re giste r Re giste r # RE G Speiche r kurz, lang MIP S, Alpha, SPARC Drei-Adreß-Befehl OPCODE Adr eßfeld (Quelle 1) Adr eßfeld (Quelle 2) Adr eßfeld (Ziel) Beisp. MIP S 6 OPCODE 5 5 rs rt rd shamt func Technische OPCODE Informatik MIPSI, WS rs 14/15 rt Adresse rs: erstes Quellreg. rt: zweites Quellreg. rd: Zielreg. shamt : shift amount func: funktionale Erw. J. Kaiser, des OPCO IVS-EOS DE
26 Lernziele - Aufbau eines realen einfachen Prozessors - Befehlssatz - Standardbefehle (arithm./log., Shift, Transfer, System) - Verzweigungen und Sprünge - Behandlung von Bedingungen - Adressierungsarten - Zielkonflikte bei der Adressierung - gängige Adressierungsarten - einfache Programme in Assembler unter Ausnutzung der Befehls- und Adressierungsmöglichkeiten. 26
27 Adressierungsarten des AVR Alternative Befehlssätze TI-I, WS 2014/15 ATMEL AVR Intruction Set Rev. 0856I AVR 07/10
28 Register-Adressierung
29 Adressierung des I/O- und Datenspeichers
30 Adressierung des Datenspeichers
31 Adressierung des Datenspeichers
DATEN 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:
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
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 2 Maschinenprogrammierungskonzepte
Technische Informatik 2 Maschinenprogrammierungskonzepte Prof Dr Miroslaw Malek Sommersemester 2005 wwwinformatikhu-berlinde/rok/ca Thema heute Ausführung von Befehlen Ein-/Ausgabeprogrammierung Architekturen
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
MehrRechnerorganisation 2 TOY. Karl C. Posch. co1.ro_2003. Karl.Posch@iaik.tugraz.at 16.03.2011
Technische Universität Graz Institut tfür Angewandte Informationsverarbeitung und Kommunikationstechnologie Rechnerorganisation 2 TOY Karl C. Posch Karl.Posch@iaik.tugraz.at co1.ro_2003. 1 Ausblick. Erste
MehrGrundlagen der Rechnerarchitektur
Grundlagen der Rechnerarchitektur ARM, x86 und ISA Prinzipien Übersicht Rudimente des ARM Assemblers Rudimente des Intel Assemblers ISA Prinzipien Grundlagen der Rechnerarchitektur Assembler 2 Rudimente
MehrName: ES2 Klausur Thema: ARM 25.6.07. Name: Punkte: Note:
Name: Punkte: Note: Hinweise für das Lösen der Aufgaben: Zeit: 95 min. Name nicht vergessen! Geben Sie alle Blätter ab. Die Reihenfolge der Aufgaben ist unabhängig vom Schwierigkeitsgrad. Erlaubte Hilfsmittel
MehrAlgorithmen und Datenstrukturen (ESE) Entwurf, Analyse und Umsetzung von Algorithmen (IEMS) WS 2012 / 2013. Vorlesung 9, Dienstag 18.
Algorithmen und Datenstrukturen (ESE) Entwurf, Analyse und Umsetzung von Algorithmen (IEMS) WS 2012 / 2013 Vorlesung 9, Dienstag 18. Dezember 2012 (Performance Tuning, Profiling, Maschinencode) Prof. Dr.
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
MehrInformationssysteme Semesterwoche 3
Informationssysteme Semesterwoche 3 Teil 1: Zahlen und Logik A) Aufgaben zu den ganzen Zahlen 1. Konvertieren Sie die folgenden Zahlen in die Binärform: 1984 / 2 = 992 0 (LSB) / 2 = 496 0 / 2 = 248 0 /
Mehr5.BMaschinensprache und Assembler
Die Maschinenprogrammebene eines Rechners Jörg Roth 268 5.BMaschinensprache und Assembler Die vom Prozessor ausführbaren Befehle liegen im Binärformat vor. Nur solche Befehle sind direkt ausführbar. So
MehrB1 Stapelspeicher (stack)
B1 Stapelspeicher (stack) Arbeitsweise des LIFO-Stapelspeichers Im Kapitel "Unterprogramme" wurde schon erwähnt, dass Unterprogramme einen so genannten Stapelspeicher (Kellerspeicher, Stapel, stack) benötigen
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
Mehr1 Einleitung zum RISC Prozessor
1 Einleitung zum RISC Prozessor Wesentliche Entwicklungsschritte der Computer-Architekturen [2, 3]: Familienkonzept von IBM mit System/360 (1964) und DEC mit PDP-8 (1965) eingeführt: Gleiche Hardware-Architekturen
MehrGrundlagen der Rechnerarchitektur
Grundlagen der Rechnerarchitektur Einführung Unsere erste Amtshandlung: Wir schrauben einen Rechner auf Grundlagen der Rechnerarchitektur Einführung 2 Vorlesungsinhalte Binäre Arithmetik MIPS Assembler
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.
MehrRechnerarchitektur und Betriebssysteme (CS201): AVR-CPU und -Assembler
Rechnerarchitektur und Betriebssysteme (CS201): AVR-CPU und -Assembler 1. Oktober 2013 Prof. Dr. Christian Tschudin Departement Mathematik und Informatik, Universität Basel Wiederholung / Diskussion 1.
MehrTeil 1: Prozessorstrukturen
Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium
MehrGrundlagen der Rechnerarchitektur. Einführung
Grundlagen der Rechnerarchitektur Einführung Unsere erste Amtshandlung: Wir schrauben einen Rechner auf Grundlagen der Rechnerarchitektur Einführung 2 Vorlesungsinhalte Binäre Arithmetik MIPS Assembler
MehrKap.2 Befehlsschnittstelle. Prozessoren, externe Sicht
Kap.2 Befehlsschnittstelle Prozessoren, externe Sicht 2.1 elementare Datentypen, Operationen 2.2 logische Speicherorganisation 2.3 Maschinenbefehlssatz 2.4 Klassifikation von Befehlssätzen 2.5 Unterbrechungen
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
MehrTIn 1: Feedback Laboratories. Lecture 4 Data transfer. Question: What is the IP? Institut für Embedded Systems. Institut für Embedded Systems
Mitglied der Zürcher Fachhochschule TIn 1: Lecture 4 Data transfer Feedback Laboratories Question: What is the IP? Why do we NEED an IP? Lecture 3: Lernziele Moving data, the why s and wherefores Moving
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)
Mehr4.2 Universalrechner: Schaltung unabhängig vom Problem 185
4.2 Universalrechner: Schaltung unabhängig vom Problem 85 a) Geben Sie binär die Befehlsworte an, mit denen Sie die Eingänge a, b und c in die Register R, R2 und R übernehmen. K D M4 M M2 M Kommentar XXXXXXXXXXX
MehrL3. Datenmanipulation
L Datenmanipulation Aufbau eines Computers Prozessor, Arbeitsspeicher und system Maschinensprachen und Maschinenbefehle Beispiel einer vereinfachten Maschinensprache Ausführung des Programms und Befehlszyklus
MehrMikrocomputertechnik - Programmierung
3 Programmierung Assembler Aufgaben: Übersetzt mnemotechnische Abkürzungen (z.b. move, add...) in die Maschinenbefehle des Prozessors Ermöglicht die Vergabe von Namen für Speicheradressen (Label) Berechnet
Mehrx86 Assembler Praktische Einführung Sebastian Lackner Michael Müller 3. Juni 2013
x86 Assembler Praktische Einführung Sebastian Lackner Michael Müller 3. Juni 2013 1 / 53 Inhaltsverzeichnis 1 Einführung 2 Assembler Syntax, Register und Flags 3 Hauptspeicher 4 Stack 5 Assemblerbefehle
Mehr12. Maschinennahes Programmieren
12. Maschinennahes Programmieren Der Kern jedes Computers oder jeder Microcontroller-gestützten Schaltung ist ein Prozessor: in Hochleistungsservern sind es 64-Bit-Prozessoren (z.b. vom Typ Spark oder
MehrMikroprozessortechnik. 03. April 2012
Klausur 03. April 2012 Name:. Vorname Matr.-Nr:. Studiengang Hinweise: Bitte füllen Sie vor dem Bearbeiten der Aufgaben das Deckblatt sorgfältig aus. Die Klausur besteht aus 6 doppelseitig bedruckten Blättern.
MehrAufbau und Funktionsweise eines Computers
Aufbau und Funktionsweise eines Computers Thomas Röfer Hardware und Software von Neumann Architektur Schichtenmodell der Software Zahlsysteme Repräsentation von Daten im Computer Hardware Prozessor (CPU)
MehrComputer-Architektur Ein Überblick
Computer-Architektur Ein Überblick Johann Blieberger Institut für Rechnergestützte Automation Computer-Architektur Ein Überblick p.1/27 Computer-Aufbau: Motherboard Computer-Architektur Ein Überblick p.2/27
MehrDas Prinzip an einem alltäglichen Beispiel
3.2 Pipelining Ziel: Performanzsteigerung é Prinzip der Fließbandverarbeitung é Probleme bei Fließbandverarbeitung BB TI I 3.2/1 Das Prinzip an einem alltäglichen Beispiel é Sie kommen aus dem Urlaub und
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
MehrProgrammieren in C Teil 3: Mikrocontrollerprogrammierung
Programmieren in C Teil 3: Mikrocontrollerprogrammierung 08/30/10 Fachbereich Physik Institut für Kernphysik Bastian Löher, Martin Konrad 1 Tag 1 Hello World 08/30/10 Fachbereich Physik Institut für Kernphysik
MehrSicheres C Programmieren in Embedded Systemen ARM II (ARM7TMDI [1] ) Wintersemester 2010-2011
Sicheres C in Embedded Systemen ARM II (ARM7TMDI [1] ) Wintersemester 2010-2011 Dipl. Ing. (FH) Ebrecht Roland, Infineon Technologies AG M.Eng (Electronic Systems) Güller Markus, Infineon Technologies
MehrCompiler und Codegenerierung. Hw-Sw-Co-Design
Compiler und Codegenerierung Hw-Sw-Co-Design Wo sind wir? System Verhalten Modul Architektur Block SW HW Logik Struktur Compiler und Codegenerierung Compiler - Aufbau Codegenerierung Codeoptimierung Codegenerierung
MehrBefehlssatz AVR RISC Controller
Befehlssatz AVR RISC Controller Design-Philosophie des AVR Befehlssatzes Assembler-Sprache AVR-Befehlssatz Philosophie RISC = Reduced Instruction Set Computing keine komplexen Befehle möglichst symmetrischer
MehrTechnische Informatik 1 Übung 2 Assembler (Rechenübung) Georgia Giannopoulou (ggeorgia@tik.ee.ethz.ch) 22./23. Oktober 2015
Technische Informatik 1 Übung 2 Assembler (Rechenübung) Georgia Giannopoulou (ggeorgia@tik.ee.ethz.ch) 22./23. Oktober 2015 Ziele der Übung Aufgabe 1 Aufbau und Aufruf von Funktionen in Assembler Codeanalyse
MehrGrundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny
Grundlagen der Informatik Prof. Dr. Stefan Enderle NTA Isny 2 Datenstrukturen 2.1 Einführung Syntax: Definition einer formalen Grammatik, um Regeln einer formalen Sprache (Programmiersprache) festzulegen.
MehrVorlesungsziele. Mit gängigen Begriffen etwas anfangen können. In der Lage sein, die Architektur von Mikroprozessoren zu verstehen
Vorlesungsziele Mit gängigen Begriffen etwas anfangen können In der Lage sein, die Architektur von Mikroprozessoren zu verstehen Die Grundkomponenten eines Mikroprozessor - Systems und ihr Zusammenwirken
MehrDie Maschinenprogrammebene eines Rechners Jörg Roth 294
Die Maschinenprogrammebene eines Rechners Jörg Roth 294 5.E Die SPIM-Umgebung SPIM ist ein Simulationswerkzeug für MIPS-Prozessoren Es enthält einen Assembler und eine Laufzeitumgebung Da das Wirtsystem
MehrBetriebssysteme Kap B: Hardwaremechanismen
1 Betriebssysteme Kap B: Hardwaremechanismen 2 Beispielprozessor Ein- / Ausgabe p[ ] ir Leitwerk pc Register a f sp Rechenwerk Speicher m[ ] Spezielle Register Flagregister f f.i: Interrupt-Enable-Flag
MehrBetriebssysteme Teil 6: Hardware-Schicht II
Betriebssysteme Teil 6: Hardware-Schicht II 13.11.15 1 Literatur [6-1] Engelmann, Lutz (Hrsg.): Abitur Informatik Basiswissen Schule. Duden-Verlag, 2003, S.43-53, 214-224, 239-242, S. 267-299,304-313 [6-2]
MehrEnterprise Computing Einführung in das Betriebssystem z/os. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13
UNIVERSITÄT LEIPZIG Enterprise Computing Einführung in das Betriebssystem z/os Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13 Verarbeitungsgrundlagen Teil 2 Virtual Storage el0100 copyright
MehrTechnische Informatik 1
Technische Informatik 1 4 Prozessor Einzeltaktimplementierung Lothar Thiele Computer Engineering and Networks Laboratory Vorgehensweise 4 2 Prinzipieller Aufbau Datenpfad: Verarbeitung und Transport von
MehrDer 80535-Übungsrechner
6. Für den Test kleinerer Programmodule ohne Berücksichtigung des Echtzeitverhaltens ist der Simulator das geeignete Werkzeug. Durch die Möglichkeit der Einzelschrittausführung sind erste Tests von Programmen
MehrStephan Brumme, SST, 2.FS, Matrikelnr. 70 25 44
Aufgabe 33 a) Der Pseudobefehl move $rd,$rs wird als addu $rd,$0,$rs übersetzt. Dabei macht sich SPIM zunutze, dass das Register $0 immer Null ist. Somit wird das Register $rd ersetzt durch $rd=0+$rs=$rs,
MehrPraktikum Mikrocomputertechnik
Anleitung zum Praktikum Mikrocomputertechnik Im Praktikum wird der Mikrocontroller 68332 von Motorola verwendet. Dieser Mikrocontroller besteht aus einer 32-Bit CPU und integrierten Peripheriebausteinen
MehrKlausur zur Mikroprozessortechnik
Prof. Dr. K. Wüst WS 2001 FH Gießen Friedberg, FB MNI Studiengang Informatik Klausur zur Mikroprozessortechnik Nachname: Vorname: Matrikelnummer: 7.3.2001 Punkteverteilung Aufgabe Punkte erreicht 1 3 2
MehrZahlendarstellungen und Rechnerarithmetik*
Zahlendarstellungen und Rechnerarithmetik* 1. Darstellung positiver ganzer Zahlen 2. Darstellung negativer ganzer Zahlen 3. Brüche und Festkommazahlen 4. binäre Addition 5. binäre Subtraktion *Die Folien
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.).
MehrImplementierung: Direkt abgebildeter Cache
Implementierung: Direkt abgebildeter Cache Direkt-abgebildeter Cache von 64 KB mit 16-Byte-Linien (Adress- und Wortlänge 32 Bit, Byteadressierung) Address (showing bit positions) 31 30 29 28..... 19 18
MehrPraktikum Compilerbau Sitzung 9 Java Bytecode
Praktikum Compilerbau Sitzung 9 Java Bytecode Prof. Dr.-Ing. Gregor Snelting Matthias Braun und Sebastian Buchwald IPD Snelting, Lehrstuhl für Programmierparadigmen KIT Universität des Landes Baden-Württemberg
MehrDesign and Implementation of a Soft-error Resilient OSEK Real-time Operating System
Design and Implementation of a Soft-error Resilient OSEK Real-time Operating System Florian Lukas Lehrstuhl für Informatik 4 Verteilte Systeme und Betriebssysteme Friedrich Alexander Universität Erlangen
Mehr0 C (Carry) Überlauf des 8ten Bits. 1 DC (Digit Carry) Überlauf des 4ten Bits. Mnemonic Parameter Beschreibung Status-Flags.
3. Assembler-Programmierung Der PIC 16F84A Microcontroller kennt 35 verschiedene Befehle. Für eine ausführliche Beschreibung aller Befehle siehe PIC16F84A-Datenblatt Kapitel 7.1. 3.1 Wichtige Flaggen im
MehrGrundlagen der Informatik III
Grundlagen der Informatik III WS 2008 / 2009 [Folien basierend auf VL von Prof. Dr. Claudia Eckert, WS 07/08] Prof. Dr. rer. nat. Frederik Armknecht Sascha Müller Daniel Mäurer Fachbereich Informatik /
MehrSteuerungen. 4 Typen verbindungsprogrammierte Steuerung (VPS), speicherprogrammierte Steuerung (SPS), Mikrokontroller (MC) und Industrie-PCs (IPC)
Steuerungen 4 Typen verbindungsprogrammierte Steuerung (VPS), speicherprogrammierte Steuerung (SPS), Mikrokontroller (MC) und Industrie-PCs (IPC) VPS - Funktion der Steuerung in der Schaltungstopologie
MehrAssembler-Programme. Systemprogrammierung (37-023) Elementare Komponenten eines Assembler-Programmes
Systemprogrammierung (37-023) Assemblerprogrammierung Betriebssystemgrundlagen Maschinenmodelle Dozent: Prof. Thomas Stricker krankheitshalber vertreten durch: Felix Rauch WebSite: http://www.cs.inf.ethz.ch/37-023/
MehrKapitel 6 Speicherverwaltung Seite 1 zum Teil nach: Silberschatz&Galbin, Operating System Concepts, Addison-Wesley)
Kapitel 6 Speicherverwaltung Seite 1 6 Speicherverwaltung 6.1 Hintergrund Ein Programm muß zur Ausführung in den Hauptspeicher gebracht werden und in die Prozeßstruktur eingefügt werden. Dabei ist es in
MehrTechnische Informatik 2 Speichersysteme, Teil 3
Technische Informatik 2 Speichersysteme, Teil 3 Prof. Dr. Miroslaw Malek Sommersemester 2004 www.informatik.hu-berlin.de/rok/ca Thema heute Virtueller Speicher (Fortsetzung) Translation Lookaside Buffer
MehrEin Computer zum Selbstbauen
www. MyCPU.eu Ein Computer zum Selbstbauen von Dennis Kuschel Gliederung: 1. Was ist die MyCPU und warum existiert sie? 2. Architektur der MyCPU 3. Befehlssatz 4. Emulator 5. Software 6. Nachbau Was ist
MehrRechnerstrukturen. 6. System. Systemebene. Rechnerstrukturen Wintersemester 2002/03. (c) Peter Sturm, Universität Trier 1. Prozessor.
Rechnerstrukturen 6. System Systemebene 1 (Monoprozessor) 2-n n (Multiprozessor) s L1- in der L2- ( oder Motherboard) ggf. L3- MMU Speicher Memory Controller (Refresh etc.) E/A-Geräte (c) Peter Sturm,
MehrBetriebssystembau (BSB)
Betriebssystembau (BSB) Einführung http://ess.cs.tu-.de/de/teaching/ws2013/bsb/ Olaf Spinczyk olaf.spinczyk@tu-.de http://ess.cs.tu-.de/~os AG Eingebettete System Informatik 12, TU Dortmund Überblick Organisatorisches
Mehrairbases.txt Airbase 99 Sys Ex Documentation 1. SysEx Protokolle Firmware Vers. 1.09 x=don't care 1.1. Bulk Dump Tx/Rx
Airbase 99 Sys Ex Documentation airbases.txt 1. SysEx Protokolle Firmware Vers. 1.09 x=don't care 1.1. Bulk Dump Tx/Rx ;Header: $f0 SysEx Command $31 JoMoX ID $7f Operation Code Bulkdump $56 AirBase99
MehrMikroprozessor bzw. CPU (Central Processing. - Steuerwerk (Control Unit) - Rechenwerk bzw. ALU (Arithmetic Logic Unit)
Der Demo-Computer besitzt einen 4Bit-Mikroprozessor. Er kann entsprechend Wörter mit einer Breite von 4 Bits in einem Schritt verarbeiten. Die einzelnen Schritte der Abarbeitung werden durch Lampen visualisiert.
MehrAtmel AVR für Dummies
Atmel AVR für Dummies fd0@koeln.ccc.de 29.12.2005 Übersicht 1 Hardware Kurzvorstellung Atmega8 Programmierkabel (Eigenbau vs. Kommerzlösung) Alternative: Bootloader (Programmieren via rs232) Software Speicher
MehrMikrocontroller effektiv in C programmieren - ein noch unbekanntes Land
Mikrocontroller effektiv in C programmieren- ein noch unbekanntes Land Mikrocontroller effektiv in C programmieren - ein noch unbekanntes Land HS Pforzheim Fakultät Technik Mikrocontroller-Labor Tiefenbronner
MehrDie Befehle mit dem Ziel IP sind nichts anderes als Sprungbefehle, sie sind unten noch mal aufgeführt.
Die Befehle des Modellrechners in übersichtlichen Tabellen: Alle Opcodes sind Hexadezimal angegeben (s.u.). 1.) Die Ladebefehle zwischen den einzelnen Registern. In der oberen Zeile steht jeweils die Quelle
MehrAVR-8-Bit-Mikrocontroller Bootloader
Physik-Seminar AVR-8-Bit-Mikrocontroller Bootloader Markus Schroeder, 203110686 Universität Koblenz-Landau schroeder@uni-koblenz.de Betreuer: Dr. Merten Joost c 2006 INHALTSVERZEICHNIS 2 Inhaltsverzeichnis
MehrUniversität Bielefeld Technische Fakultät AG Rechnernetze und verteilte Systeme. Vorlesung 4: Memory. Wintersemester 2001/2002. Peter B.
Universität Bielefeld Technische Fakultät AG Rechnernetze und verteilte Systeme Vorlesung 4: Memory Peter B. Ladkin Address Translation Die Adressen, die das CPU benutzt, sind nicht identisch mit den Adressen,
MehrI.1 Die Parrot Assemblersprache
I.1 Die Parrot Assemblersprache Die virtuelle CPU Parrot ermöglicht die Verarbeitung der Parrot Assemblersprache (PASM). Zum Einstieg soll ein erstes Beispiel die Ausführung einer PASM-Datei zeigen. Legen
Mehr68000 Assembler J. Teepe
68 Assembler J. Teepe 2 J. Teepe 68 Assembler Inhaltsverzeichnis I N H A L T S V E R Z E I C H N I S Kapitel Einführung... 7. Übersicht der Computersprachen... 7.. Maschinencode - Assembler... 8..2 Höhere
MehrProzessoren für mobile und. eingebettete Systeme I: Die ARM-Architektur. EMES: Eigenschaften mobiler und eingebetteter Systeme
EMES: Eigenschaften mobiler und eingebetteter Systeme Prozessoren für mobile und 00101111010010011101001010101 eingebettete Systeme I: Die ARM-Architektur Dipl. Inf. Jan Richling Wintersemester 2005/2006
Mehrx86 Open Source Virtualisierungstechniken Thomas Glanzmann <thomas@glanzmann.de>
x86 Open Source Virtualisierungstechniken März 2006 Zu meiner Person Informatik Student an der Universität Erlangen im 9. Semester 4 jährige Mitarbeit an dem Projekt FAUmachine der
MehrEinführung in die Systemprogrammierung 02
Einführung in die Systemprogrammierung 02 Prof. Dr. Christoph Reichenbach Fachbereich 12 / Institut für Informatik 4. Mai 2014 Eine Aufgabe aus der Praxis Gegeben ein bestimmtes Programm: Machen Sie dieses
Mehr7.0 PWM - Pulsbreitenmodulation
7.0 PWM - Pulsbreitenmodulation PWM ist eine Abkürzung für Pulse Width Modulation (Pulsbreitenmodulation). Zwei unabhängige PWM-Ausgänge erlauben die Erzeugung von Rechtecksignalen mit einstellbarer Frequenz
MehrMemory Management. Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at
Memory Management Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at 1 Speicherverwaltung Effektive Aufteilung und Verwaltung des Arbeitsspeichers für BS und Programme Anforderungen
MehrFehlerkorrektur Bild 3.190 Demoprozessor
7 Prozessor 3 0 Flags C V N Z A IP 0 SP AB 8 MS W/R DB 4 00h..6Fh Daten Speicher 70h..70h PA 71h..71h PB 72h..73h PC 74h..76h PD 80h..FFh Programm Speicher Fehlerkorrektur Bild 3.190 Demoprozessor Die
MehrÜbersicht. Virtueller Speicher CPU-Modi Virtuelle Maschinen. ISM SS 2015 - Teil 4/ProtectionI
Übersicht Virtueller Speicher CPU-Modi Virtuelle Maschinen 2 Behandelter Bereich: Virtualisierung Syscall-Schnittstelle Ports Server Apps Server Apps Betriebssystem Protokolle Betriebssystem Medien Hardware
MehrDie Daten (Befehle und numerische Daten) werden in Form von BIT-Folgen verarbeitet.
Übung Nr. 1b: MIKROPROZESSOR, Hewlett - Packard µ-lab en sind kleine Computer, die mit externen Geräten Daten austauschen können. Sie verfügen über Speicher, um Programme und Daten zu speichern und Eingangsund
Mehr5 Speicherverwaltung. bs-5.1 1
5 Speicherverwaltung bs-5.1 1 Pufferspeicher (cache) realer Speicher Primärspeicher/Arbeitsspeicher (memory) Sekundärspeicher/Hintergrundspeicher (backing store) (Tertiärspeicher/Archivspeicher) versus
MehrProgrammierung von ATMEL AVR Mikroprozessoren am Beispiel des ATtiny13. Teil IV: Programmieren an Beispielen
Programmierung von ATMEL AVR Mikroprozessoren am Beispiel des ATtiny13 Eine Einführung in Aufbau, Funktionsweise, Programmierung und Nutzen von Mikroprozessoren Teil IV: Programmieren an Beispielen Die
MehrCodesigned Virtual Machines
Codesigned Virtual Machines Seminar Virtualisierung Philipp Kirchhofer philipp.kirchhofer@student.kit.edu Institut für Technische Informatik Lehrstuhl für Rechnerarchitektur Universität Karlsruhe (TH)
MehrKapitel 04: Das erste Projekt Abschnitt 04: Überblick über das Programm
Kapitel 04: Das erste Projekt Abschnitt 04: Überblick über das Programm Beim Durchgehen des Programms will ich die verschiedenen Abschnitte zeigen, aus denen jedes ATmega-Assemblerprogramm besteht. Da
MehrElementare logische Operationen
RECHNERARCHITEKTUR 2 - ELEMENTARE LOGISCHE OPERATIONEN 1 Elementare logische Operationen Modifizieren, Testen,Vergleichen In diesem Abschnitt wollen wir zeigen, wie man mit den elementaren logischen Verknüpfungen
MehrGRAFIK 128x64 IN 2 GRÖSSEN MIT ST7565. preliminary
GRAFIK 128x64 IN 2 GRÖSSEN MIT ST7565 Stand 10.2.2009 Displayabmessungen -6X9: 56x43mm (Abbildung) -6X8: 34x25mm TECHNISCHE DATEN * INKL. KONTROLLER ST7565 * VDD = 2,7... 3,3V * LOW POWER, ALSO IDEAL FÜR
MehrGrundlagen der Adreßrechnung
REHNERARHITEKTUR 2 - GRUNDLAGEN DER ADREßREHNUNG 1 Grundlagen der Adreßrechnung Im folgenden wollen wir elementare Adressierungsweisen und Rechengänge betrachten, mit denen effektive Adressen berechnet
MehrPCI VME Interface SIS1100/SIS3100
PCI VME Interface SIS1100/SIS3100 Peter Wüstner Forschungszentrum Jülich, Zentrallobor für Elektronik (ZEL) Designprinzip der im ZEL entwickelten Datenaufnahmesysteme ist es, preiswerte PC Technik mit
MehrJava-Prozessoren. Die Java Virtual Machine spezifiziert... Java Instruktions-Satz. Datentypen. Operanden-Stack. Konstanten-Pool.
Die Java Virtual Machine spezifiziert... Java Instruktions-Satz Datentypen Operanden-Stack Konstanten-Pool Methoden-Area Heap für Laufzeit-Daten Class File Format 26 Die Java Virtual Machine Java Instruktions-Satz
MehrKapitel VI. Speicherverwaltung. Speicherverwaltung
Kapitel VI Speicherverwaltung 1 Speicherverwaltung Computer exekutiert Programme (mit Daten) im Hauptspeicher. Hauptspeicher: Großes Array von Wörtern (1 oder mehrere Bytes) Jedes Wort hat eine eigene
MehrBrückenkurs / Computer
Brückenkurs / Computer Sebastian Stabinger IIS 23 September 2013 Sebastian Stabinger (IIS) Brückenkurs / Computer 23 September 2013 1 / 20 Content 1 Allgemeines zum Studium 2 Was ist ein Computer? 3 Geschichte
MehrBetriebssysteme (BS) PC Bussysteme. Überblick. und deren Programmierung. PCI-basierte PC Systeme. alias Betriebssystembau (BSB)
Betriebssysteme (BS) alias Betriebssystembau (BSB) PC Bussysteme und deren Programmierung Überblick Rückblick Bussysteme im PC Bus aus Sicht des Betriebssystems Initialisierung, BIOS,... Erweiterungen
Mehr1.7 Assembler Programmierung
1.7 Assembler Programmierung Die nach außen sichtbare Programmierschnittstelle eines Prozessors ist der Befehlscode. Dies ist eine binäre Dateninformation, die vom Prozessor Byte für Byte abgearbeitet
MehrVirtueller Speicher. SS 2012 Grundlagen der Rechnerarchitektur Speicher 44
Virtueller Speicher SS 2012 Grundlagen der Rechnerarchitektur Speicher 44 Die Idee Virtuelle Adressen Prozess 1 Speicherblock 0 Speicherblock 1 Speicherblock 2 Speicherblock 3 Speicherblock 4 Speicherblock
Mehr6 3 1 7 5 9 2 4 8 Geben Sie dazu jedes Mal, wenn sie die Zeile 15 passieren, die aktuelle Feldbelegung an. Der Anfang wurde bereits gemacht.
Aufgabe 2: ALI von der Hochsprache zur Maschinenebene a) Schreiben Sie ein Pascal- sowie das zugehörige RePascal-PROGRAM Quadratsumme, welches nach Eingabe einer natürlichen Zahl n die Summe der ersten
MehrSuSE Linux für 64-Bit AMD64 und IPF. Andreas Jaeger, SuSE Linux AG <aj@suse.de>
SuSE Linux für 64-Bit und IPF Andreas Jaeger, SuSE Linux AG Linux und Inhalt Linux und Entwicklungsgeschichte Entwicklungsgeschichte Entwicklung / -Unterstützung -Erweiterungen Linux und Linux
MehrAutomatisierungstechnik AP1
Automatisierungstechnik AP1 Übersicht 1 Lernziele: Automatisierungstechnik AP1 Einführung in die Prozessorarchitektur und Maschinenprogrammierung Grundlagen des Aufbaus und der Wirkungsweise von Prozessoren
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
MehrMatthias Hanreich - TheGreyKnight
Matthias Hanreich - TheGreyKnight Grundlagen Code Injection Beispiel: Buffer Overflow Gegenmaßnahmen Code Injection Return Oriented Programming (ROP) Gegenmaßnahmen ROP Demonstration CVE-2012-4969 Hands
Mehr