Technische Informatik-I. Speicherorganisation und Adressierungsarten. Otto-von-Guericke-Universität Magdeburg

Größe: px
Ab Seite anzeigen:

Download "Technische Informatik-I. Speicherorganisation und Adressierungsarten. Otto-von-Guericke-Universität Magdeburg"

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

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:

Mehr

Technische Informatik 2 Adressierungsarten

Technische 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

Mehr

Instruktionssatz-Architektur

Instruktionssatz-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

Mehr

Technische Informatik 2 Maschinenprogrammierungskonzepte

Technische 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

Mehr

Technische Informatik 1

Technische 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

Mehr

Rechnerorganisation 2 TOY. Karl C. Posch. co1.ro_2003. Karl.Posch@iaik.tugraz.at 16.03.2011

Rechnerorganisation 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

Mehr

Grundlagen der Rechnerarchitektur

Grundlagen 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

Mehr

Name: ES2 Klausur Thema: ARM 25.6.07. Name: Punkte: Note:

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

Mehr

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

Mehr

Assembler-Programmierung

Assembler-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

Mehr

Informationssysteme Semesterwoche 3

Informationssysteme 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 /

Mehr

5.BMaschinensprache und Assembler

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

Mehr

B1 Stapelspeicher (stack)

B1 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

Mehr

HC680 PROGRAMMER'S REFERENCE MANUAL

HC680 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

Mehr

1 Einleitung zum RISC Prozessor

1 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

Mehr

Grundlagen der Rechnerarchitektur

Grundlagen 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

Mehr

Die Mikroprogrammebene eines Rechners

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

Mehr

Rechnerarchitektur und Betriebssysteme (CS201): AVR-CPU und -Assembler

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

Mehr

Teil 1: Prozessorstrukturen

Teil 1: Prozessorstrukturen Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium

Mehr

Grundlagen der Rechnerarchitektur. Einführung

Grundlagen 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

Mehr

Kap.2 Befehlsschnittstelle. Prozessoren, externe Sicht

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

Mehr

Mikroprozessor als universeller digitaler Baustein

Mikroprozessor 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

Mehr

TIn 1: Feedback Laboratories. Lecture 4 Data transfer. Question: What is the IP? Institut für Embedded Systems. Institut für Embedded Systems

TIn 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

Mehr

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

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

Mehr

4.2 Universalrechner: Schaltung unabhängig vom Problem 185

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

Mehr

L3. Datenmanipulation

L3. Datenmanipulation L Datenmanipulation Aufbau eines Computers Prozessor, Arbeitsspeicher und system Maschinensprachen und Maschinenbefehle Beispiel einer vereinfachten Maschinensprache Ausführung des Programms und Befehlszyklus

Mehr

Mikrocomputertechnik - Programmierung

Mikrocomputertechnik - 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

Mehr

x86 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 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

Mehr

12. Maschinennahes Programmieren

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

Mehr

Mikroprozessortechnik. 03. April 2012

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

Mehr

Aufbau und Funktionsweise eines Computers

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

Mehr

Computer-Architektur Ein Überblick

Computer-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

Mehr

Das Prinzip an einem alltäglichen Beispiel

Das 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

Mehr

Prozessor HC680 fiktiv

Prozessor 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

Mehr

Programmieren in C Teil 3: Mikrocontrollerprogrammierung

Programmieren 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

Mehr

Sicheres C Programmieren in Embedded Systemen ARM II (ARM7TMDI [1] ) Wintersemester 2010-2011

Sicheres 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

Mehr

Compiler und Codegenerierung. Hw-Sw-Co-Design

Compiler 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

Mehr

Befehlssatz AVR RISC Controller

Befehlssatz 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

Mehr

Technische 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 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

Mehr

Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny

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

Mehr

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

Mehr

Die Maschinenprogrammebene eines Rechners Jörg Roth 294

Die 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

Mehr

Betriebssysteme Kap B: Hardwaremechanismen

Betriebssysteme 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

Mehr

Betriebssysteme Teil 6: Hardware-Schicht II

Betriebssysteme 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]

Mehr

Enterprise Computing Einführung in das Betriebssystem z/os. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13

Enterprise 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

Mehr

Technische Informatik 1

Technische 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

Mehr

Der 80535-Übungsrechner

Der 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

Mehr

Stephan Brumme, SST, 2.FS, Matrikelnr. 70 25 44

Stephan 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,

Mehr

Praktikum Mikrocomputertechnik

Praktikum 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

Mehr

Klausur zur Mikroprozessortechnik

Klausur 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

Mehr

Zahlendarstellungen und Rechnerarithmetik*

Zahlendarstellungen 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

Mehr

Kap 4. 4 Die Mikroprogrammebene eines Rechners

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

Mehr

Implementierung: Direkt abgebildeter Cache

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

Mehr

Praktikum Compilerbau Sitzung 9 Java Bytecode

Praktikum 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

Mehr

Design 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 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

Mehr

0 C (Carry) Überlauf des 8ten Bits. 1 DC (Digit Carry) Überlauf des 4ten Bits. Mnemonic Parameter Beschreibung Status-Flags.

0 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

Mehr

Grundlagen der Informatik III

Grundlagen 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 /

Mehr

Steuerungen. 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) Steuerungen 4 Typen verbindungsprogrammierte Steuerung (VPS), speicherprogrammierte Steuerung (SPS), Mikrokontroller (MC) und Industrie-PCs (IPC) VPS - Funktion der Steuerung in der Schaltungstopologie

Mehr

Assembler-Programme. Systemprogrammierung (37-023) Elementare Komponenten eines Assembler-Programmes

Assembler-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/

Mehr

Kapitel 6 Speicherverwaltung Seite 1 zum Teil nach: Silberschatz&Galbin, Operating System Concepts, Addison-Wesley)

Kapitel 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

Mehr

Technische Informatik 2 Speichersysteme, Teil 3

Technische 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

Mehr

Ein Computer zum Selbstbauen

Ein 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

Mehr

Rechnerstrukturen. 6. System. Systemebene. Rechnerstrukturen Wintersemester 2002/03. (c) Peter Sturm, Universität Trier 1. Prozessor.

Rechnerstrukturen. 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,

Mehr

Betriebssystembau (BSB)

Betriebssystembau (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

Mehr

airbases.txt Airbase 99 Sys Ex Documentation 1. SysEx Protokolle Firmware Vers. 1.09 x=don't care 1.1. Bulk Dump Tx/Rx

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

Mehr

Mikroprozessor bzw. CPU (Central Processing. - Steuerwerk (Control Unit) - Rechenwerk bzw. ALU (Arithmetic Logic Unit)

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

Mehr

Atmel AVR für Dummies

Atmel 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

Mehr

Mikrocontroller 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 Mikrocontroller effektiv in C programmieren - ein noch unbekanntes Land HS Pforzheim Fakultät Technik Mikrocontroller-Labor Tiefenbronner

Mehr

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

Die 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

Mehr

AVR-8-Bit-Mikrocontroller Bootloader

AVR-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

Mehr

Universitä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. 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,

Mehr

I.1 Die Parrot Assemblersprache

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

Mehr

68000 Assembler J. Teepe

68000 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

Mehr

Prozessoren für mobile und. eingebettete Systeme I: Die ARM-Architektur. EMES: Eigenschaften mobiler und eingebetteter Systeme

Prozessoren 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

Mehr

x86 Open Source Virtualisierungstechniken Thomas Glanzmann <thomas@glanzmann.de>

x86 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

Mehr

Einführung in die Systemprogrammierung 02

Einfü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

Mehr

7.0 PWM - Pulsbreitenmodulation

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

Mehr

Memory 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 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

Mehr

Fehlerkorrektur Bild 3.190 Demoprozessor

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

Mehr

Die Daten (Befehle und numerische Daten) werden in Form von BIT-Folgen verarbeitet.

Die 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

Mehr

5 Speicherverwaltung. bs-5.1 1

5 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

Mehr

Programmierung von ATMEL AVR Mikroprozessoren am Beispiel des ATtiny13. Teil IV: Programmieren an Beispielen

Programmierung 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

Mehr

Codesigned Virtual Machines

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

Mehr

Kapitel 04: Das erste Projekt Abschnitt 04: Überblick über das Programm

Kapitel 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

Mehr

Elementare logische Operationen

Elementare 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

Mehr

GRAFIK 128x64 IN 2 GRÖSSEN MIT ST7565. preliminary

GRAFIK 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

Mehr

Grundlagen der Adreßrechnung

Grundlagen 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

Mehr

PCI VME Interface SIS1100/SIS3100

PCI 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

Mehr

Java-Prozessoren. Die Java Virtual Machine spezifiziert... Java Instruktions-Satz. Datentypen. Operanden-Stack. Konstanten-Pool.

Java-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

Mehr

Kapitel VI. Speicherverwaltung. Speicherverwaltung

Kapitel 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

Mehr

Brückenkurs / Computer

Brü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

Mehr

Betriebssysteme (BS) PC Bussysteme. Überblick. und deren Programmierung. PCI-basierte PC Systeme. alias Betriebssystembau (BSB)

Betriebssysteme (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

Mehr

1.7 Assembler Programmierung

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

Mehr

Virtueller Speicher. SS 2012 Grundlagen der Rechnerarchitektur Speicher 44

Virtueller 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

Mehr

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

6 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

Mehr

SuSE Linux für 64-Bit AMD64 und IPF. Andreas Jaeger, SuSE Linux AG <aj@suse.de>

SuSE 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

Mehr

Automatisierungstechnik AP1

Automatisierungstechnik AP1 Automatisierungstechnik AP1 Übersicht 1 Lernziele: Automatisierungstechnik AP1 Einführung in die Prozessorarchitektur und Maschinenprogrammierung Grundlagen des Aufbaus und der Wirkungsweise von Prozessoren

Mehr

Technische Informatik 2: Addressierung und Befehle

Technische 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

Mehr

Matthias Hanreich - TheGreyKnight

Matthias 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