3. Mikroarchitekturen
|
|
- Emil Geiger
- vor 5 Jahren
- Abrufe
Transkript
1 2 3. Mikroarchitekturen Peter Marwedel Informatik 2 TU Dortmund 23/5/2 Diese Folien enthalten Graphiken mit Nutzungseinschränkungen. Das Kopieren der Graphiken ist im Allgemeinen nicht erlaubt.
2 Gegenüberstellung der Definitionen Programmierschnittstelle Externe Rechnerarchitektur Architektur Rechnerarchitektur Interner Aufbau Interne Rechnerarchitektur Mikroarchitektur Rechnerorganisation Die externe Rechnerarchitektur definiert Programmier- oder Befehlssatzschnittstelle engl. instruction set architecture, (ISA) eine (reale) Rechenmaschine bzw. ein application program interface (API). Executables (Binärprogramme) Betriebssystem Befehlsschnittstelle (instruction set architecture) Mikroarchitektur Gatter 2,
3 Gegenstand des Kurses RA - Definitionen von Rechnerarchitektur - Def. (nach Stone): The study of computer architecture is the study of the organization and interconnection of components of computer systems. Computer architects construct computers from basic building blocks such as memories, arithmetic units and buses. From these building blocks the computer architect can construct anyone of a number of different types of computers, ranging from the smallest hand-held pocket calculator to the largest ultra-fast super computer. The functional behaviour of the components of one computer are similar to that of any other computer, whether it be ultra-small or ultra-fast. 2,
4 3. Notation: VHDL-Datentypen Vorteile einer Hardware-Beschreibungssprache (engl. hardware description language, HDL): präzise Spezifikation, Möglichkeit der Simulation, Kommunikation zwischen Entwicklern, automatisierte Erzeugung/ Überprüfung von Designs, Dokumentation des Arbeitsergebnisses, Beschleunigung des Entwurfsprozesses. Verbreitet: VHDL (VHSIC Hardware Description Language) VHSIC = very high speed integrated circuit. Unterscheidung zwischen Folgen von Bits und deren Interpretion als Wert in einem anderen Bereich. 2,
5 Datentypen integer und natural integer und dafür übliche arithmetische Operationen +, < usw. sind vordefiniert. Ableitung mittels subtype-definitionen: subtype natural is integer range to integer high; subtype positive is integer range to integer high; Abgeleitete Typen sind zuweisungskompatibel. Obere Grenzen des darstellbaren Bereichs sind implementationsabhängig. integer high = obere Grenze des darstellbaren Zahlenbereichs. 2,
6 Datentyp boolean boolean ist vordefiniert: type boolean is (False, True); boolean wird also durch Aufzählung der möglichen Werte definiert. 2,
7 Datentypen bit und bit_vector bit ist vordefiniert durch type bit is ('', ''); Literale des Typs bit werden durch einfache Anführungszeichen bezeichnet. bit_vector ist vordefiniert durch type bit_vector is array (natural range <>) of bit; <> = ausgelassener Index eines unconstrained array, (Indexgrenzen durch einen Teilbereich der natürlichen Zahlen später festzulegen). Beispiel: variable instruction : bit_vector (3 downto ); downto: absteigender Indexbereich. In dieser Vorlesung: untere Indexgrenze meist = 2,
8 Der Datentyp bit_vector (2) Literale in doppelten Anführungszeichen: "" Für bit und bit_vector sind die üblichen logischen Operationen (AND usw.) vordefiniert. a left ist der am weitesten links stehende Index eines Vektors. Weiterhin: Konkatenation: "" & "" & "" & 2,
9 3.2 Realisierung elementarer Datentypen 3.2. Operationen auf Bitvektoren Die meisten Befehlssätze unterstützen Bitvektor-Operationen auf begrenzter Länge (häufig: ein Wort) Schiebeoperationen Hier: shift right logical, shift left logical, shift right arithmetical, shift left arithmetical: srl(a) = & a (a left downto ) ) 2,
10 Schiebeoperationen sra(a) = a (a left) & a (a left downto ) ) sll(a) = a (a left- downto ) ) & sla(a) = a (a left)& a(a left-2 downto )& Erklärung von Schiebeoperationen um n Stellen durch n-maliges Schieben um Stelle. 2,
11 Realisierung der Operationen auf Bitvektoren: Schieben Realisierung mit barrel shiftern. Schaltskizze soll ähnlich wie das Schieben eines Fasses aussehen können (nie selbst gesehen) Elementarbausteine, z.b. 4 Ausgänge, Schieben: -3 Stellen: 2,
12 Realisierung der Operationen auf Bitvektoren: Schieben Elementarbaustein, 4 Ausgänge, Schieben: -3 Stellen: p. marwedel, 2,
13 Barrelshifter mit 6 Ausgängen p. marwedel, 2,
14 Barrelshifter mit 6 Ausgängen 2,
15 Barrelshifter für das Schieben um bis 5 Stellen: 2,
16 Barrelshifter für das Schieben um bis 5 Stellen: 2,
17 Weitere Information zu Barrel Shiftern Anwendung: u.a. Normalisierung von Gleitkommazahlen Simulation: webdemos/-gates/6-barrel/shifter8.jnlp 2,
18 3.2.2 Natürliche Zahlen Übliche Interpretation von Bitvektoren als natürliche Zahlen: nat(a) a' left a i i 2 i Beispiel: nat("") = 8. 2,
19 Addition Ergebnis: Summe natürlicher Zahlen, soweit dies bei fester Datenwortlänge möglich ist. Bezeichnungen: Argumente durch Bitvektoren a = ( a n-,..., a ) und b = ( b n-,..., b ) repräsentiert. Ergebnis durch f = ( f n-,..., f ) dargestellt i, i n : c i : Übertrag in die Stelle i hinein 2,
20 Subtraktion Für das Zweierkomplement gilt: -B= B+, also A-B = A+ B+ Die Subtraktion kann also einfach auf die Addition zurückgeführt werden. (siehe arithmetisch/logische Einheiten (ALUs)). 2,
21 Beispiel einer arithmetisch/logischen Einheit: 748 Steuersignale S3,S2,S,S und M. p. marwedel, 2,
22 Überläufe Wir möchten gerne wissen: wann ist () nat(a) + nat(b) 2 n? (2 n = erste nicht mehr durch f darstellbare Zahl) Aus () folgt: (2) n- i= n- a i *2 i + i= b i *2 i 2 n Ungleichung erfüllt, wenn bei der Addition ein Übertrag in die Stelle n hinein entsteht. Bei der Addition natürlicher Zahlen ist der Überlauf c f gleich dem Übertrag c n in die nächste Stelle. 2,
23 Überläufe Für c n gilt: cf + = c n = (a n- b n- ) ((a n- xor b n- )c n- ) (xor wegen des. Terms durch ersetzbar) = (a n- b n- ) ((a n- b n- ) c n- ) = (a n- b n- ) (a n- c n- ) (b n- c n- ) c n- meist nur intern verfügbar Ersatz durch verfügbaren Wert! 2,
24 Überläufe c n = (a n- b n- ) (a n- c n- ) (b n- c n- ) c n- c n b n- f n- b n- c n- c n- c n b n- a n- a n- a n- c n = (a n- b n- ) (a n- f n- ) (b n- f n- ) f n- extern bekannt: (z.b. Abfrage < für Zweierkomplementinterpretation). 2,
25 Subtraktion Differenz natürlicher Zahlen, soweit darstellbar. Überläufe: Der Überlauf cf_ ist gleich dem Borgebit c n in die erste nicht mehr darstellbare Stelle: c n f n- c n- b n- b n- c n- a n- a n- Gemäß linkem Teil: cf_ = (a n- b n- ) (a n- c n- ) (b n- c n- ) Statt internem c n- extern bekanntes f n- verwenden! Aus KV-Diagramm: cf_ = (a n- b n- ) (a n- f n- ) (b n- f n- ) 2,
26 Größenvergleich Der Größenvergleich basiert häufig auf den Inhalten der Condition-Code Register (flags) nach Ausführen einer Subtraktion. Dazu gehören typischerweise: carryflag c n (=cf_ nach einer Subtraktion) zeroflag zf : zf ='' i [..n-]: f i ='' signflag sf : sf ='' f n- ='' 2,
27 Berechnung der Relationen anhand der flag-register Berechnung der Vergleichsergebnisse bei Interpretation als natürliche Zahlen nach einer Subtraktion aus zf und cf_ = c n : a<b (a-b)< a b ((a-b)<) cf_ = '' cf_ = '' a>b ((a- b) ) (a-b) (cf_ = '') (zf = '') a b (a>b) (cf_ = '') (zf = '') Typische Anwendung bei x86- & ARM-Architektur; nicht so bei der MIPS- Architektur. ARM instruction set tests [ARM] Unsigned higher or same Unsigned lower Unsigned Higher Unsigned Lower or Same Not Equal C set C clear C set and Z clear C clear or Z set Z clear ARM (+652): C='' unter der Borge -Bedingung. Gegenüber Mehrzahl der Maschinen invertiert. 2,
28 Multiplikation Siehe Rechnerstrukturen, Wallace-Tree-Multiplizierer 2,
29 Zusammenfassung Realisierung elementarer (Maschinen-) Datentypen Operationen auf Bitvektoren Barrel shifter Natürliche Zahlen Konvertierung Bitvektor natürliche Zahl Basisbausteine: ALUs Erkennung von Überläufen Parallele Multiplikation Ganze Zahlen Konvertierung Bitvektor ganze Zahl Erkennung von Überläufen Booth-Multiplikation 2,
Rechnerarchitektur (RA)
12 Rechnerarchitektur (RA) Sommersemester 2015 Foliensatz 8: Mikroarchitekturen Datentypen Michael Engel Informatik 12 michael.engel@tu-.. http://ls12-www.cs.tu-.de/daes/ Tel.: 0231 755 6121 2014/04/30
MehrMikroarchitekturen. Peter Marwedel Informatik 12 TU Dortmund 2013/07/16. technische universität dortmund. fakultät für informatik informatik 12
12 Mikroarchitekturen Peter Marwedel Informatik 12 TU Dortmund 2013/07/16 Diese Folien enthalten Graphiken mit Nutzungseinschränkungen. Das Kopieren der Graphiken ist im Allgemeinen nicht erlaubt. Gegenüberstellung
MehrInhaltsverzeichnis Einleitung 6. Gegenstand der Vorlesung Der Von-Neumann-Rechner
Skript zur Vorlesung Rechnerarchitektur' P. Marwedel Informatik 2 Universität Dortmund 3. September 2 Dieser Begleittext ist nur zur Benutzung durch die Teilnehmer der Vorlesung gedacht. Es wird keinerlei
MehrInformatik I: Einführung in die Programmierung 3. Werte, Typen, Variablen und Ausdrücke
Informatik I: Einführung in die Programmierung 3. Werte,, n und Albert-Ludwigs-Universität Freiburg Peter Thiemann 30. Oktober 2018 1 30. Oktober 2018 P. Thiemann Info I 3 / 39 Bits Der Computer repräsentiert
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
MehrPraktikum ASP Blatt 2 1. LEHRSTUHL FÜR RECHNERARCHITEKTUR UND PARALLELE SYSTEME Aspekte der systemnahen Programmierung bei der Spieleentwicklung
Praktikum ASP Blatt 2 1 LEHRSTUHL FÜR RECHNERARCHITEKTUR UND PARALLELE SYSTEME Aspekte der systemnahen Programmierung bei der Spieleentwicklung Arbeitsblatt 2 29.10.2018-04.11.2018 T1 Grundlagen der AArch64-Architektur
MehrAngewandte Mathematik und Programmierung
Angewandte Mathematik und Programmierung Einführung in das Konzept der objektorientierten Anwendungen zu mathematischen Rechnens WS 2013/14 Operatoren Operatoren führen Aktionen mit Operanden aus. Der
MehrIntroduction to Python. Introduction. First Steps in Python. pseudo random numbers. May 2016
to to May 2016 to What is Programming? All computers are stupid. All computers are deterministic. You have to tell the computer what to do. You can tell the computer in any (programming) language) you
MehrDarstellung von negativen binären Zahlen
Darstellung von negativen binären Zahlen Beobachtung für eine beliebige Binärzahl B, z.b. B=110010: B + NOT(B) ---------------------------------------------- = B + NOT(B) 1 + (Carry) ----------------------------------------------
MehrKurs Rechnerarchitektur (RA) im SS 2014. Informatik 12 Informatik 12. Tel.: 0231 755 6111 Tel.: 0231 755 6112 Sprechstunde: Mo, 13-14. Willkommen!
12 Kurs Rechnerarchitektur (RA) im SS 2014 Peter Marwedel Michael Engel Informatik 12 Informatik 12 peter.marwedel@tu-.. michael.engel@tu-.. Tel.: 0231 755 6111 Tel.: 0231 755 6112 Sprechstunde: Mo, 13-14
MehrModul IP7: Rechnerstrukturen
64-040 Rechnerstrukturen 64-040 Modul IP7: Rechnerstrukturen http://tams.informatik.uni-hamburg.de/ lectures/2012ws/vorlesung/rs Kapitel 14 Andreas Mäder Fakultät für Mathematik, Informatik und Naturwissenschaften
MehrKap.2 Befehlsschnittstelle. Prozessoren, externe Sicht
Kap.2 Befehlsschnittstelle Prozessoren, externe Sicht RA Überblick Einleitung Befehlsschnittstelle Mikroarchitektur Speicherarchitektur Ein-/Ausgabe Multiprozessorsysteme,... CS - RA - SS01 Kap. 2.1 2.1/2
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
MehrUnterprogramme. Komplexes Verhalten kann modular mit Hilfe von Unterprogrammen beschrieben werden Es gibt zwei Arten von Unterprogrammen:
Unterprogramme Dr. Wolfgang Günther Unterprogramme 2 Unterprogramme Komplexes Verhalten kann modular mit Hilfe von Unterprogrammen beschrieben werden Es gibt zwei Arten von Unterprogrammen: Prozeduren
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
MehrIntroduction to Python. Introduction. First Steps in Python. pseudo random numbers. May 2018
to to May 2018 to What is Programming? All computers are stupid. All computers are deterministic. You have to tell the computer what to do. You can tell the computer in any (programming) language) you
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
MehrRechnergrundlagen SS Vorlesung
Rechnergrundlagen SS 2007 8. Vorlesung Inhalt Gleitkomma-Darstellung Normalisierte Darstellung Denormalisierte Darstellung Rechnerarchitekturen Von Neumann-Architektur Harvard-Architektur Rechenwerk (ALU)
MehrGanze Zahlen. Die Typen int, unsigned int; Auswertung arithmetischer Ausdrücke, arithmetische Operatoren
Ganze Zahlen Die Typen int, unsigned int; Auswertung arithmetischer Ausdrücke, arithmetische Operatoren Celsius to Fahrenheit // Program: fahrenheit.cpp // Convert temperatures from Celsius to Fahrenheit.
MehrVHDL - Objekte und Typen
VHDL - Objekte und Typen Dr.-Ing. Matthias Sand Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2007/2008 VHDL - Objekte und Typen 1/23 2007-08-24 Inhalt
MehrLogik für Informatiker Logic for computer scientists
Logik für Informatiker Logic for computer scientists Till Mossakowski WiSe 2007/08 2 Rooms Monday 13:00-15:00 GW2 B1410 Thursday 13:00-15:00 GW2 B1410 Exercises (bring your Laptops with you!) either Monday
MehrÜbung 3: VHDL Darstellungen (Blockdiagramme)
Übung 3: VHDL Darstellungen (Blockdiagramme) Aufgabe 1 Multiplexer in VHDL. (a) Analysieren Sie den VHDL Code und zeichnen Sie den entsprechenden Schaltplan (mit Multiplexer). (b) Beschreiben Sie zwei
MehrInformatik I Übung, Woche 41
Giuseppe Accaputo 8. Oktober, 2015 Plan für heute 1. Fragen & Nachbesprechung Übung 3 2. Zusammenfassung der bisherigen Vorlesungsslides 3. Tipps zur Übung 4 Informatik 1 (D-BAUG) Giuseppe Accaputo 2 Nachbesprechung
MehrParitäts-Bit- Generator
Projektseminar: Hardware-Beschreibung mit VHDL Seite: 4 2 Aufgaben 2.1 Aufgabe Parity-Generator 2.1.1 Aufgabenstellung Beschreiben sie eine Hardware, welche ein Paritäts-Bit an eine 31-stellige Bitfolge
MehrDatentypen in C. Informatik Universität Hamburg Proseminar: C-Grundlagen und Konzepte Jan Branitzki
Datentypen in C Informatik Universität Hamburg Proseminar: C-Grundlagen und Konzepte Jan Branitzki 31.05.13 Inhalt 1. Der Aufzählungstyp enum 2. Bit Shifting/Bitweise Operatoren a. Beispiel: Int b. Nutzen
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
Mehrb i Ergänzung zu Vollkonjunktionen (ohne Indizierung i = 0... n-1): q = a b a b q = a b q = a b a b a b
Ansatz: Die Realisierung von arithmetischen Operationen mit Logikgattern führt zu ähnlichen Verarbeitungsstrukturen für arithmetische und logische Befehle Parallele Zahlwort/oder Logikverarbeitung ist
MehrInformatik I Übung, Woche 41
Giuseppe Accaputo 9. Oktober, 2014 Plan für heute 1. Fragen & Nachbesprechung Übung 3 2. Zusammenfassung der bisherigen Vorlesungsslides 3. Tipps zur Übung 4 Informatik 1 (D-BAUG) Giuseppe Accaputo 2 Nachbesprechung
MehrN Bit binäre Zahlen (signed)
N Bit binäre Zahlen (signed) n Bit Darstellung ist ein Fenster auf die ersten n Stellen der Binär Zahl 0000000000000000000000000000000000000000000000000110 = 6 1111111111111111111111111111111111111111111111111101
MehrRechnernetze und Organisation
Arithmetic Logic Unit ALU Professor Dr. Johannes Horst Wolkerstorfer Cerjak, 9.2.25 RNO VO4_alu Übersicht Motivation ALU Addition Subtraktion De Morgan Shift Multiplikation Gleitkommazahlen Professor Dr.
MehrFPGA Systementwurf. Rosbeh Etemadi. Paderborn University. 29. Mai 2007
Paderborn Center for Parallel l Computing Paderborn University 29. Mai 2007 Übersicht 1. FPGAs 2. Entwicklungssprache VHDL 3. Matlab/Simulink 4. Entwicklungssprache Handel-C 5. Fazit Übersicht FPGAs 1.
MehrDas Verfahren in Hardware
Das Verfahren in Hardware Links Shift 8 Bit Multiplikand Demonstration mit 1001 * 0110 = 110110 2.Links Shift 8 Bit ALU Rechts Shift 4 Bit Multiplikator 3.Rechts Shift 8 Bit Produkt 1. Produkt = Produkt
MehrRechnerstrukturen, Teil 1
Rechnerstrukturen, Teil 1 Vorlesung 4 SWS WS 18/19 Prof. Dr. Jian- Jia Chen Fakultät für Informatik Technische Universität Dortmund jian- jia.chen@cs.uni-.de http://ls12- www.cs.tu-.de Übersicht 1. Organisatorisches
MehrAbschnitt 2: Daten und Algorithmen
Abschnitt 2: Daten und Algorithmen 2. Daten und Algorithmen 2.1 Zeichenreihen 2.2 Datendarstellung durch Zeichenreihen 2.3 Syntaxdefinitionen 2.4 Algorithmen 2 Daten und Algorithmen Einf. Progr. (WS 08/09)
Mehr5 VHDL Einführung (I)
5 VHDL Einführung (I) VHDL = Very High Speed Integrated Hardware Description Language Dient der Beschreibung von Hardware bei: Dokumentation Simulation Synthese Hardwarebeschreibungssprachen (HDLs) sind
MehrKapitel 4. Programmierkurs. Datentypen. Arten von Datentypen. Wiederholung Kapitel 4. Birgit Engels, Anna Schulze WS 07/08
Kapitel 4 Programmierkurs Birgit Engels, Anna Schulze Wiederholung Kapitel 4 ZAIK Universität zu Köln WS 07/08 1 / 23 2 Datentypen Arten von Datentypen Bei der Deklaration einer Variablen(=Behälter für
Mehr1 Bedingte Anweisungen. 2 Vergleiche und logische Operatoren. 3 Fallunterscheidungen. 4 Zeichen und Zeichenketten. 5 Schleifen.
Themen der Übung Kontrollstrukturen, Pseudocode und Modulo-Rechnung CoMa-Übung III TU Berlin 9.10.01 1 Bedingte Anweisungen Vergleiche und logische Operatoren 3 Fallunterscheidungen 4 Zeichen und Zeichenketten
MehrArray-Zuweisungen. Array-Zuweisungen können über die Position, den Namen oder gemischt erfolgen.
Array-Zuweisungen Array-Zuweisungen können über die Position, den Namen oder gemischt erfolgen. Ausschnitte (slices) werden über die Indizes gebildet. Mehrdimensionale Arrays Mehrdimensionale Arrays werden
MehrMultiplikation. Grundlagen der Rechnerarchitektur Logik und Arithmetik 79
Multiplikation Grundlagen der Rechnerarchitektur Logik und Arithmetik 79 Multiplikation nach der Schulmethode Gegeben seien die Binärzahlen A und B. Was ist a * b? Beispiel: Multiplikand A: 1 1 0 1 0 Multiplikator
MehrVHDL Objekte und Typen
VHDL Objekte und Typen Dr.-Ing. Matthias Sand Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2009/2010 VHDL Objekte und Typen 1/27 2009-07-31 Inhalt
MehrType Declaration. type identifier is type_definition ; Beispiele: Dr. Wolfgang Günther Datentypen 2
Datentypen Dr. Wolfgang Günther Datentypen 2 Type Declaration type identifier is type_definition ; Beispiele: type apples is range 0 to 100; type vec is std_logic_vector (17 downto 3); Dr. Wolfgang Günther
MehrAlgebraische Spezifikation von Software und Hardware II
Algebraische Spezifikation von Software und Hardware II Markus Roggenbach Mai 2008 3. Signaturen 3. Signaturen 2 Grundlegende Frage Wie lassen sich Interfaces beschreiben? Signaturen = Sammlung aller bekannten
MehrSpeichern von Zuständen
Speichern von Zuständen Erweiterung eines R S Latch zu einem D Latch (D=Data, C=Clock) R S altes Q neues Q 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 0 R S C D altes Q neues Q 0 0 0 0 0 1 0 1 0 0 1
Mehr6.4. ALU. Wir schauen uns exemplarisch die 4-Bit-ALU SN74181 an. SN74181, Schaltung
6.4. ALU Ein Rechner vom von-neumann-typ (s. u. und LV Rechnerorganisation im 2. Semester)) "tut" zu einem Zeitpunkt nur "genau ein Was". Diese Eigenschaft legt nahe, eine Funktionseinheit zu entwickeln,
Mehrzu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme
Bisher Datentypen: einfach Zahlen, Wahrheitswerte, Zeichenketten zusammengesetzt Arrays (Felder) zur Verwaltung mehrerer zusammengehörender Daten desselben Datentypes eindimensional, mehrdimensional, Array-Grenzen
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
MehrTechnische Grundlagen der Informatik 2 SS Einleitung. R. Hoffmann FG Rechnerarchitektur Technische Universität Darmstadt E-1
E-1 Technische Grundlagen der Informatik 2 SS 2009 Einleitung R. Hoffmann FG Rechnerarchitektur Technische Universität Darmstadt Lernziel E-2 Verstehen lernen, wie ein Rechner auf der Mikroarchitektur-Ebene
MehrGrundlagen der Technischen Informatik. 13. Übung
Grundlagen der Technischen Informatik 13. Übung Christian Knell Keine Garantie für Korrekt-/Vollständigkeit 13. Übungsblatt Themen Aufgabe 1: Aufgabe 2: Aufgabe 3: Aufgabe 4: Arithmetik VHDL - Funktionen
MehrAufgabe 1. Aufgabe 2. Abbildung 1: Schaltung für die Multiplikation mit 4
Aufgabe 1 Eine Zahl a ist mit 8 Bits vorzeichenlos (8 bit unsigned) dargestellt. Die Zahl y soll die Zahl a multipliziert mit 4 sein (y = a 4 D ). a) Wie viele Bits benötigen Sie für die Darstellung von
Mehr3/4/2009. Schalter: Ein vs. Aus Lochkarten: Loch vs. Kein Loch Boolean/Wahrheitswerte: true vs. false
Ablauf Informatik I (D-MAVT) Übungsstunde 2, 4.3.2009 simonmayer@student.ethz.ch ETH Zürich Besprechung/Vertiefung der Vorlesung [26.2.2009] Vorbesprechung Übung 2 Variablen + Scopes Zahlensysteme Bits&Bytes
MehrProgrammieren 1 C Überblick
Programmieren C Überblick. Einleitung 2. Graphische Darstellung von Algorithmen 3. Syntax und Semantik 4. Einstieg in C: Einfache Sprachkonstrukte und allgemeiner Programmaufbau 5. Skalare Standarddatentypen
MehrResidue Number System und Modulararithmetik
Residue Number System und Modulararithmetik Patrick Russell Dresden, 18. Juni 2015 Zahlendarstellung RNS Systeme Anwendungsbeispiele Literatur TU Dresden, 18.06.15 Folie 2 von 30 01 Zahlendarstellung Darstellung
MehrLehrveranstaltung: Praktikum: Rechnerorganisation Thomas Aichholzer
1.1 Geben Sie die Hexadezimal- und Binärform der folgenden Dezimal Zahlen an. Benützen Sie dazu die Zweierkomplementdarstellung in 16-Bit. a) 1 b) 125 c) 31456 ad a) Dezimalschreibweise Binärdarstellung
MehrRückblick. Zahlendarstellung zu einer beliebigen Basis b. Umwandlung zwischen Zahlendarstellung (214) 5 = (278) 10 =(?) 8
Rückblick Zahlendarstellung zu einer beliebigen Basis b (214) 5 = Umwandlung zwischen Zahlendarstellung (278) 10 =(?) 8 25 Rückblick Schnellere Umwandlung zwischen Binärdarstellung und Hexadezimaldarstellung
MehrArithmetik, Register und Speicherzugriff. Grundlagen der Rechnerarchitektur Assembler 9
Arithmetik, Register und Speicherzugriff Grundlagen der Rechnerarchitektur Assembler 9 Arithmetik und Zuweisungen Einfache Arithmetik mit Zuweisung C Programm: a = b + c; d = a e; MIPS Instruktionen: Komplexere
Mehr4. Zahlendarstellungen
121 4. Zahlendarstellungen Wertebereich der Typen int, float und double Gemischte Ausdrücke und Konversionen; Löcher im Wertebereich; Fliesskommazahlensysteme; IEEE Standard; Grenzen der Fliesskommaarithmetik;
MehrEinführung in die technische Informatik
Einführung in die technische Informatik Christopher Kruegel chris@auto.tuwien.ac.at http://www.auto.tuwien.ac.at/~chris VHDL VHDL Akronym für Very High-Speed Integrated Circuit Hardware Description Language
MehrMartin Unold INFORMATIK. Geoinformatik und Vermessung
Wiederholung So sieht ein leeres Java-Programm aus public class Programmname { public static void main (String[] args) { // Hier stehen die Anweisungen } } Beispiele für Anweisungen Wiederholung Ausgabe
MehrGleitkommaarithmetik. Erhöhen der Genauigkeit. Grundlagen der Rechnerarchitektur Logik und Arithmetik 124
Gleitkommaarithmetik Erhöhen der Genauigkeit Grundlagen der Rechnerarchitektur Logik und Arithmetik 124 Guard Bit, Round Bit und Sticky Bit Bei der Darstellung der Addition und Multiplikation haben wir
MehrVerilog Hardware Description Language (HDL)
Elektrotechnik Intelligent Systems Design Verilog Hardware Description Language (HDL) Einführung Prof. Dr.-Ing. Michael Karagounis Sommersemester 2016 HDL Konzept Was ist eine Hardwarebeschreibungssprache?
MehrGrundlagen der Rechnerarchitektur
Grundlagen der Rechnerarchitektur [CS3100.010] Wintersemester 2014/15 Heiko Falk Institut für Eingebettete Systeme/Echtzeitsysteme Ingenieurwissenschaften und Informatik Universität Ulm Kapitel 5 Rechnerarithmetik
MehrInformatik I (D-ITET)
Informatik I (D-ITET) Übungsstunde 2, 5.10.2009 ETH Zürich? Übungsgruppenwechsel? Abgabe der Übungen... Bis Mo, 24:00 Theorie: Programme: per mail oder auf Papier.cpp Datei per mail Bin euch noch Demos
MehrVariablen. CoMa-Übung VIII TU Berlin. CoMa-Übung VIII (TU Berlin) Variablen / 15
Variablen CoMa-Übung VIII TU Berlin 4.12.2013 CoMa-Übung VIII (TU Berlin) Variablen 4.12.2013 1 / 15 Themen der Übung 1 Typanpassungen 2 Operatoren 3 Variablen-Gültigkeit CoMa-Übung VIII (TU Berlin) Variablen
MehrEntwurf und Simulation einfacher Logikelemente
Entwurf und Simulation einfacher Logikelemente Philipp Fischer 10. Dezember 2002 1 Inhaltsverzeichnis I Theoretische Grundlagen 3 Einleitung 3 Entwurf einer Schaltung 3 Entitys und Architectures.........................
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.
MehrINGENIEURWISSENSCHAFTEN
Switchable Array Antennas for 24 GHz Radar Applications Master Thesis By Bo Zhou 04.09.2012 1 Outline Basic Theory and Concepts Phased Array Antennas Switching Concept Network Distribution and Components
MehrMikroprozessor (CPU)
Mikroprozessor (CPU) Der Mikroprozessor (µp) ist heutzutage das Herzstück eines jeden modernen Gerätes. Er wird in Handys, Taschenrechnern, HiFi-Geräten und in Computern, für die er eigentlich erfunden
Mehr3. Operatoren und Ausdrücke
3. Operatoren und Ausdrücke Ausdruck (expression) Verarbeitungsvorschrift zur Ermittlung eines Wertes besteht aus Operanden und Operatoren wichtigste Ausdrücke: arithmetische und logische (boole'sche)
MehrRechnerstrukturen, Teil 1. Vorlesung 4 SWS WS 14/15
Rechnerstrukturen, Teil 1 Vorlesung 4 SWS WS 14/15 Prof. Dr Jian-Jia Chen Dr. Lars Hildebrand Fakultät für Informatik Technische Universität Dortmund lars.hildebrand@tu-.de http://ls1-www.cs.tu-.de Übersicht
MehrKurs Rechnerarchitektur (RA) im SS 2012
12 Kurs Rechnerarchitektur (RA) im SS 2012 Peter Marwedel Informatik 12 peter.marwedel@tu.. Tel.: 0231 755 6111 Sprechstunde: Mo, 13-14 Gernot Fink Informatik 12 gernot.fink@tu.. Tel.: 0231 755 6151 Sprechstunde:
MehrPIC16 Programmierung in HITECH-C
PIC16 Programmierung in HITECH-C Operatoren: Arithmetische Operatoren - binäre Operatoren + Addition - Subtraktion * Multiplikation / Division % Modulo + - * / sind auf ganzzahlige und reelle Operanden
Mehr2 Initialisierung clk_mkand= clk_produkt= multiplexer= init/>>1= 6 Schieben clk_mkand= clk_produkt= multiplexer= init/>>1=
Arithmetische Schaltungen c) Vervollständigen Sie nachfolgend abgebildeten Zustands-Automaten so, dass er den Multiplizierer wie gewünscht steuert. Nehmen Sie an, dass Sie zur Detektion des Schleifen-Abbruchs
MehrBit Operationen. InE1 M. Thaler, Office TG ZHAW, M. Thaler, K. Rege, G. Burkert
Bit Operationen InE M. Thaler, tham@zhaw.ch Office TG28 http://www.zhaw.ch/~tham November 8 Um was geht es? Microcontroller z.b. Ansteuerung/Konfiguartion von I/O Registern oft notwendig: einzelne Bits
Mehrfloat: Fließkommazahl nach IEEE 754 Standard mit 32 bit
Primitive Datentypen Fließkommazahlen float: Fließkommazahl nach IEEE 754 Standard mit 32 bit Vorzeichen Exponent 8 bit Mantisse 23 bit double: Fließkommazahl nach IEEE 754 Standard mit 64 bit Vorzeichen
MehrProgrammieren I. Kapitel 5. Kontrollfluss
Programmieren I Kapitel 5. Kontrollfluss Kapitel 5: Kontrollfluss Ziel: Komplexere Berechnungen im Methodenrumpf Ausdrücke und Anweisungen Fallunterscheidungen (if, switch) Wiederholte Ausführung (for,
MehrInhaltsangabe 3.1 Zahlensysteme und Darstellung natürlicher Zahlen Darstellung ganzer Zahlen
3 Zahlendarstellung - Zahlensysteme - b-adische Darstellung natürlicher Zahlen - Komplementbildung - Darstellung ganzer und reeller Zahlen Inhaltsangabe 3.1 Zahlensysteme und Darstellung natürlicher Zahlen......
MehrC-Programmierung: Ausdrücke und Operatoren#Division.2F
C-Programmierung: Ausdrücke und Operatoren#Division.2F http://de.wikibooks.org/wiki/c-programmierung:_ausdrücke_und_operatoren#division_.2f This Book Is Generated By Wb2PDF using RenderX XEP, XML to PDF
MehrDarstellung ganzer Zahlen als Bitvektoren
Darstellung ganzer Zahlen als Bitvektoren Jan Peleska Jan Bredereke Universität Bremen, Fachbereich Informatik Vers. 1.2 1 Darstellung natürlicher Zahlen z N 0 und Addition 1.1 Dualzahlen dargestellt durch
MehrVorkurs Informatik WiSe 17/18
Java Ausdrücke und Variablen Dr. Werner Struckmann / Stephan Mielke, Nicole Naczk, 05.10.2017 Technische Universität Braunschweig, IPS Überblick Ausdrücke, Datentypen und Variablen Kontrollstrukturen 05.10.2017
MehrMultiplikation. Grundlagen der Rechnerarchitektur Logik und Arithmetik 79
Multiplikation Grundlagen der Rechnerarchitektur Logik und Arithmetik 79 Multiplikation nach der Schulmethode Gegeben seien die Binärzahlen A und B. Was ist a * b? Beispiel: Multiplikand A: 1 1 0 1 0 Multiplikator
Mehrzu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme
Bisher Datentypen: einfach Zahlen, Wahrheitswerte, Zeichenketten zusammengesetzt Arrays (Felder) zur Verwaltung mehrerer zusammengehörender Daten desselben Datentypes eindimensional, mehrdimensional, Array-Grenzen
MehrPraxis der Programmierung
Arrays, Pointerarithmetik, Konstanten, Makros Institut für Informatik und Computational Science Henning Bordihn Einige Folien gehen auf A. Terzibaschian zurück. 1 Arrays (Felder/Vektoren) 2 Arrays: Motivation
Mehr3. Operatoren und Ausdrücke
3. Operatoren und Ausdrücke Ausdruck (expression) Verarbeitungsvorschrift zur Ermittlung eines Wertes besteht aus Operanden und Operatoren wichtigste Ausdrücke: arithmetische und logische (boole'sche)
MehrComputergestützter IC- Entwurf
FHTW Berlin Fachbereich 1 Technische Informatik, D5TI Computergestützter IC- Entwurf Simulation eines Lauflichts Übungs- Beleg Abgabetermin: 07.02.2003, 366437 1 Inhaltsverzeichnis 1 Einleitung... 3 2
MehrMartin Stiller, Fakultät Informatik, Institut für Technische Informatik. LLVA: Eine virtuelle Befehlssatzarchitektur
Martin Stiller, Fakultät Informatik, Institut für Technische Informatik LLVA: Eine virtuelle Befehlssatzarchitektur Hauptseminar Technische Informatik, 02.05.2012 Gliederung 1 Virtual Instruction Set Computers
MehrCarry Lookahead Adder
Carry Lookahead Adder Mittels der Generate und Propagate Ausdrücke lässt ich dann für jede Stelle i der Carry (Übertrag) für die Stelle i+1 definieren: Für einen 4 Stelligen Addierer ergibt sich damit:
Mehr3.8 Sequentieller Multiplizierer 159
.8 Sequentieller Multiplizierer 59 Nachfolgende Abbildung zeigt den (unvollständigen) Aufbau einer Schaltung zur Implementierung des gezeigten Multiplikationsverfahrens. b) Vervollständigen Sie die Schaltung
MehrN Bit Darstellung von Gleitkommazahlen
N Bit Darstellung von Gleitkommazahlen Normalisierte, wissenschaftliche Darstellung zur Basis 2. Beispiel: Allgemein: Sign and Magnitude Darstellung für beispielsweise 32 Bits: (s=0 für + und s=1 für )
MehrPraktikum Systementwurf mit VHDL HDL Design Lab
Praktikum Systementwurf mit VHDL HDL Design Lab Inhalt Kryptographie - Aufgaben VHDL - Konzepte Beispiel: 16 bit XOR Kryptographie - Aufgaben Geheimhaltung Integrität Authentifizierung Verbindlichkeit
MehrRechnerstrukturen. 7. Assembler. Inhalt. Vorlesung Rechnerstrukturen. Assemblerprogrammierung SML-CPU. SML-Assembler. Binden
Rechnerstrukturen 7. Assembler Assemblerprogrammierung SML-CPU Inhalt SML-Assembler Adressierungsarten Instruktionssatz Assembler-Direktiven Binden 7.2 1 Maschinensprache Instruktion = Bitkombination Für
MehrFAKULTÄT FÜR INFORMATIK
FAKULTÄT FÜR INFORMATIK TECHNISCHE UNIVERSITÄT MÜNCHEN Lehrstuhl für Rechnertechnik und Rechnerorganisation Prof. Dr. Arndt Bode Einführung in die Rechnerarchitektur Wintersemester 2016/2017 Einführung
Mehr6. Zahlendarstellungen und Rechnerarithmetik
6. Zahlendarstellungen und Rechnerarithmetik... x n y n x n-1 y n-1 x 1 y 1 x 0 y 0 CO Σ Σ... Σ Σ CI z n z n-1 z 1 z 0 Negative Zahlen, Zweierkomplement Rationale Zahlen, Gleitkommazahlen Halbaddierer,
Mehr2. Ganze Zahlen int unsigned int
99 2. Ganze Zahlen Auswertung arithmetischer Ausdrücke, Assoziativität und Präzedenz, arithmetische Operatoren, Wertebereich der Typen int, unsigned int Celsius to Fahrenheit // Program: fahrenheit.cpp
MehrHello World! Eine Einführung in das Programmieren Variablen
Hello World! Eine Einführung in das Programmieren Variablen Görschwin Fey Institute of Embedded Systems Hamburg University of Technology Slide 2 Wie werden Daten in Programmen gespeichert und manipuliert?
MehrAssembler am Beispiel der MIPS Architektur
Assembler am Beispiel der MIPS Architektur Frühere Einsatzgebiete MIPS Silicon Graphics Unix Workstations (z. B. SGI Indigo2) Silicon Graphics Unix Server (z. B. SGI Origin2000) DEC Workstations (z.b.
Mehr