Besprechung des 4. Übungsblattes Was ist MIPS? SPIM-Simulator MIPS-Befehlsformate MIPS-Befehle Assemblerdirektiven Syscalls in MIPS
|
|
- Willi Grosse
- vor 7 Jahren
- Abrufe
Transkript
1 Organisatorisches Es gibt kein Übungsblatt zur heutigen Abgabe, da sich durch ausfallende Vorlesungstermine entsprechende Verschiebungen ergeben haben Das jetzige Übungsblatt ist abzugeben bis zum nächsten Freitag
2 Themen heute Besprechung des 4. Übungsblattes Was ist MIPS? SPIM-Simulator MIPS-Befehlsformate MIPS-Befehle Assemblerdirektiven Syscalls in MIPS
3 Besprechung des 4. Übungsblattes Aufgabe 1.2 (Sortier-Aufgabe) Die Wahl des Algorithmus war freigestellt, intuitiv hat aber jeder einen der einfachen Algorithmen Bubble- oder Maxsort (= Insertionsort) implementiert Wichtig war: Größe des Arrays ist nicht fest (nicht unbedingt 40 Elemente), denn 0x40 enthält nicht den letzten Wert, sondern die Adresse (Index) von diesem Indirekter Speicherzugriff erforderlich, hierzu bieten sich die vorher entwickelten Befehle LDIV und STIV an Vorgegebene Adressbereiche für Variablen und Startadresse für Code beachten
4 Was ist MIPS? MIPS := Microprocessor Without Interlocked Pipeline Stages Was bedeutet das? Entwickelt ab 1981 in Stanford RISC-Architektur (was heißt das?)
5 SPIM-Simulator SPIM ist ein Simulator für die MIPS-Architektur, der eine virtuelle MIPS-CPU emuliert Verfügbar für Linux, Windows und Mac (Pakete für die üblichen Linuxdistributionen existieren) Offizielle Homepage: Homepage und zusätzliches Material ist auch auf der RO/TI-Seite verlinkt
6 SPIM-Simulator (2) SPIM enthält einen Assemblierer, akzeptiert also Assemblercode (als Textdatei), dem man bei SPIM üblicherweise die Dateiendung.s gibt Dieser Assemblierer nimmt Rücksicht auf die Eigenheiten der Architektur: Wegen IPS können wir die Pipeline nicht anhalten, daher wird bei Lade- und Sprungbefehlen eine Neuanordnung der Befehle vorgenommen ( branch delay slot hinter Sprungbefehlen, der auch bei erfolgtem Sprung ausgeführt wird) Der Assemblierer stellt Pseudobefehle zur Verfügung, die von ihm ähnlich wie Makros auf einen oder mehrere reale Maschinenbefehle umgesetzt werden Immediate-Befehle haben nur ein 16 Bit-Immediate-Argument; bei größeren Werten generiert der Assemblierer automatisch Code, um den Wert zu erzeugen
7 MIPS-Befehlsformat Jeder MIPS-Befehl hat die feste Länge von vier Bytes und beginnt mit einem 6 Bit Opcode Die restlichen 26 Bit hängen vom Befehlstyp ab: R-Typ (Register): 3x 5 Bit Register-Nummer, 5 Bit Shift Amount -Feld (Wozu da?) und 6 Bit Funktion-Feld (Wozu da?) I-Typ (Immediate): 2x 5 Bit Register-Nummer, 16 Bit Immediate-Wert (Wozu da?) J-Typ (Jump): 26 Bit für das Sprungziel
8 MIPS-Befehle Im folgenden wollen wir die wichtigsten MIPS- Befehle nochmal ansprechen, die Liste ist allerdings bei weitem nicht abschließend Es ist nicht nötig, alle Befehle auswendig zu kennen oder zu lernen Die englische Wikipedia enthält eine gute Übersicht über alle MIPS-Befehle
9 MIPS-Befehle (2) Arithmetische Befehle: add $c, $b, $a / addu $c, $b, $a Addition ($c := $b + $a), in Vorzeichen-Version (add) Ausnahme (Trap) beim Überlauf addi $b, $a, imm / addiu $b, $a, imm Addition mit Konstante ($b := $a + imm), in Vorzeichen- Version (addi) Ausnahme beim Überlauf Was ergibt sich für den Spezialfall imm = 0? Subtraktion analog, aber natürlich ohne Immediate- Befehle (hierzu kann man ja addi(u) verwenden)
10 MIPS-Befehle (3) Arithmetische Befehle (Fortsetzung): div $b, $a / divu $b, $a Division und Modulo-Berechnung in einem Es wird $b / $a in $LO und $b % $a in $HI gespeichert Für die Multiplikation existieren Befehle sowohl analog zur Addition als auch zur Division slt $c, $b, $a / slti $c, $a, imm Vergleich $b < $a bzw. $a < imm, Ergebnis nach $c Die gängigen log. Operationen und Shift existieren auch, bedürfen aber keiner weiteren Erläuterung
11 MIPS-Befehle (4) Datentransfer-Befehle: lb $b, C($a) / lh $b, C($a) / lw $b, C($a) Läd ein Byte, Halbwort oder Wort von der Speicheradresse C + $a (das bedeutet C($a) ) in das Register $b und ggf. folgende Register sb $b, C($a) / sh $b, C($a) / sw $b, C($a) Speichert ein Byte, Halbwort oder Wort vom Register $b und ggf. folgende Register auf die Speicheradresse C + $a mfhi $a / mflo $a Holt den Wert aus dem $HI- oder $LO-Register nach $a li imm (Pseudobefehl) Läd imm (bis zu 32 Bit!) nach $1 (warum Pseudobefehl?)
12 MIPS-Befehle (5) Programmfluss-Befehle: j C / jr $a Unbedingter Sprung zu C bzw. zur Adresse im Register $a beq $b, $a, C / bne $b, $a, C Branch (not) equal, testet $b == $a, bzw. $b!= $a jal C Unterprogrammaufruf, vermerkt Rücksprungadresse in $31 bgt, blt, bge, ble, bgtu, bgtz: syscall Pseudobefehle für bedingten Sprung, die intern beq/bne verwenden Führt Systemaufruf durch, Systemaufruf-Nummer muss in $v0 stehen
13 Assemblerdirektiven Eine Assemblerdirektive wird vom Assemblierer nicht in Befehle (Opcodes) umgesetzt, sondern sie dient zur Steuerung der Assemblierers Die wichtigsten:.data /.text (Optional: Angabe von Startadresse möglich) Platziert die folgenden Befehle im Daten- oder Textsegment (was steht in welchem der beiden Segmente?).ascii string /.asciiz string Erzeugt String an Position (Buchstaben-Array), auf Wunsch zeroterminated.byte [a] [, b] [ ] /.half /.word /.float /.double Speichert die entsprechenden Werte an Speicherzellen im angegeben Typ (was bedeuten die fünf Typen?)
14 Assemblerdirektiven (2) Die wichtigsten (Fortsetzung):.space [num] Allokiert [num] Bytes Platz im Datensegment.globl [name] Macht das Symbol mit dem Namen global, es kann also von anderen Dateien referenziert werden.align [wert] Richtet das nächste Datum an einem Vielfachen von 2 wert aus Weitere finden sich auf der Vorlesung und z.b. in der SPIM Quick Reference (SPIM Homepage)
15 Syscalls in MIPS Mit den Syscalls (Systemaufrufen) kann das Programm vorgegebene vom Betriebssystem (bzw. Simulator) angebotene Funktionen nutzen Der Systemaufruf wird über den Befehl syscall ausgelöst, nachdem wir die Nummer der auszuführenden Routine in das Register $v0 geschrieben haben Je nach Syscall werden Parameter in bestimmten Registern erwartet und Rückgabewerte nach der Ausführung in bestimmten Registern zurückgeliefert
16 Syscalls in MIPS (2) Es existieren die folgenden Syscalls unter SPIM: print_int (1), print_float (2), print_double (3), print_string (4): Gibt Gleitkommazahlen in $f12, Int-Wert in $a0 oder Zero-Terminated- String beginnend ab der Adresse in $a0 aus read_int (5), read_float (6), read_double (7): Liest Zahlenwert nach $v0 (int) bzw. $f0 (float/double) read_string (8): sbrk (9): exit (10): Liest String nach Puffer ab $a0, max. Länge $a1 Speicheranforderung über $a0 Bytes, Startadresse des allokierten Speicherblocks wird in $v0 zurückgegeben Beendet die Ausführung
17 Wir sind fertig! Nächstes Mal: MIPS-Aufgaben Quelle:
RO-Tutorien 15 und 16
Tutorien zur Vorlesung Rechnerorganisation Tutorienwoche 5 am 25.05.2011 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft
MehrHeute nur MIPS-Praxis (4 Aufgaben)
Themen heute Heute nur MIPS-Praxis (4 Aufgaben) Hinweis: Diese Aufgaben findet ihr auf den Übungsblättern zu den Tutorien (bei Aufgabe 4 wurde eine Teilaufgabe und im Tutorium #6 bereits geklärte Wissensfragen
MehrTutorium Rechnerorganisation
Woche 6 Tutorien 3 und 4 zur Vorlesung Rechnerorganisation 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu
Mehr28. März Name:. Vorname. Matr.-Nr:. Studiengang
Klausur 28. März 2011 Name:. Vorname Matr.-Nr:. Studiengang Hinweise: Bitte füllen Sie vor dem Bearbeiten der Aufgaben das Deckblatt sorgfältig aus. Zur Klausur zugelassen sind ausschließlich Schreibutensilien,
Mehr21. Februar Name:. Vorname. Matr.-Nr:. Studiengang
Klausur 21. Februar 2011 Name:. Vorname Matr.-Nr:. Studiengang Hinweise: Bitte füllen Sie vor dem Bearbeiten der Aufgaben das Deckblatt sorgfältig aus. Zur Klausur zugelassen sind ausschließlich Schreibutensilien,
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
MehrTECHNISCHE HOCHSCHULE NÜRNBERG GEORG SIMON OHM. Die MARS Umgebung
Die MARS Umgebung MARS ist ein Simulationswerkzeug für MIPS Prozessoren Es enthält einen Assembler und eine Laufzeitumgebung Da das Wirtsystem (z.b. Windows) auf einem anderen Prozessor basiert, werden
MehrKlausur Mikroprozessortechnik 29. März 2010
Klausur Mikroprozessortechnik 29. März 2010 Name:... Vorname:... Matr.-Nr:... Studiengang:... Hinweise: Bitte füllen Sie vor dem Bearbeiten der Aufgaben das Deckblatt sorgfältig aus. Zur Klausur zugelassen
MehrProgrammiersprachen Einführung in C
Programmiersprachen Einführung in C Teil 1: Von der Maschinensprache zu C Prof. Dr. Maschinensprache: MIPS R2000 Was bewirkt folgendes Programm: 00100111101111011111111111100000 10101111101111110000000000010100
Mehr######################### Zeichenkette auswerten ###################################
Informatik 3 Übung 06 Georg Kuschk 6.3) MIPS #Aufgabe 6.3) #Georg Kuschk #ACHTUNG : Da laut Forum davon ausgegangen werden soll, dass der Eingabewert, # falls er denn kleiner gleich 10 Stellen besitzt,
MehrLösungsvorschlag zur 3. Übung
Prof Frederik Armknecht Sascha Müller Daniel Mäurer Grundlagen der Informatik Wintersemester 09/10 1 Präsenzübungen 11 Schnelltest Lösungsvorschlag zur Übung a) Welche der folgenden Aussagen entsprechen
MehrZusammenfassung: Grundlagen der Informatik Zahlensysteme, b-adische Darstellung, Umrechnung Beispiel: Umrechnung von ( ) 10 ins Dualsystem
Zusammenfassung: Grundlagen der Informatik - Seite von 6 Zusammenfassung: Grundlagen der Informatik Zahlensysteme, b-adische Darstellung, Umrechnung Beispiel: Umrechnung von (69.59375) 0 ins Dualsystem
MehrVorlesung Rechnerarchitektur
Vorlesung Rechnerarchitektur Sommersemester 2017 Carsten Hahn 8. Juni 2017 Agenda Grundlagen: Wiederholung Kontroll-Strukturen Stack-Speicher Unterprogramme I Unterprogramme II Call-by-Value (CBV) vs.
MehrTechnische Informatik 1 Übung 2 Assembler (Computerübung) Matthias Meyer
Technische Informatik 1 Übung 2 Assembler (Computerübung) Matthias Meyer Ziele der Übung Aufgabe 1 Ein lauffähiges Assembler-Programm Umgang mit dem Debugger Aufgabe 2 (Zusatzaufgabe) Lesen und Analysieren
MehrWeitere Arithmetik. Grundlagen der Rechnerarchitektur Assembler 33
Weitere Arithmetik Grundlagen der Rechnerarchitektur Assembler 33 Die speziellen Register lo und hi Erinnerung: ganzzahliges Produkt von zwei n Bit Zahlen benötigt bis zu 2n Bits Eine MIPS Instruktion
MehrGrundlagen zur Assemblerprogrammierung unter SPIM im Sommersemester Lorenz Schauer Mobile & Verteilte Systeme
Grundlagen zur Assemblerprogrammierung unter SPIM im Sommersemester 2016 Lorenz Schauer Mobile & Verteilte Systeme 12. Juli 2016 Agenda heute Grundlagen: Unterprogramme I Call-by-Value (CBV) vs. Call-by-Reference
MehrÜbungsblatt 10 (Block C 2) (16 Punkte)
georg.von-der-brueggen [ ] tu-dortmund.de ulrich.gabor [ ] tu-dortmund.de pascal.libuschewski [ ] tu-dortmund.de Übung zur Vorlesung Rechnerstrukturen Wintersemester 2016 Übungsblatt 10 (Block C 2) (16
MehrMIPS-Programmierung in der WebSPIM-Umgebung (0.3)
MIPS-Programmierung in der WebSPIM-Umgebung (0.3) C. Reichenbach, mailto:reichenbach@cs.uni-frankfurt.de 12. Mai 2013 1 Einführung WebSPIM ist ein Web-basierter MIPS32-Simulator, dessen MIPS-Funktionalität
MehrLösungsvorschlag 10. Übung Technische Grundlagen der Informatik II Sommersemester 2009
Fachgebiet Rechnerarchitektur Fachbereich Informatik Lösungsvorschlag. Übung Technische Grundlagen der Informatik II Sommersemester 29 Aufgabe.: MIPS-Kontrollsignale Für die 5 Befehlstypen a) R-Format
MehrTechnische Informatik I - HS 18
Institut für Technische Informatik und Kommunikationsnetze Prof. L. Thiele Technische Informatik I - HS 18 Musterlösung zu Übung 3 Datum : 25.-26. Oktober 2018 Aufgabe 1: Wurzelverfahren nach Heron Das
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
MehrBeispiel: A[300] = h + A[300]
Beispiel: A[300] = h + A[300] $t1 sei Basisadresse von A und h in $s2 gespeichert. Assembler Code? Maschinen Code (der Einfachheit halber mit Dezimalzahlen)? op rs rt rd adr/shamt funct Instruktion Format
MehrÜbungsblatt 10 (Block C 2) (16 Punkte)
georg.von-der-brueggen [ ] tu-dortmund.de ulrich.gabor [ ] tu-dortmund.de marco.duerr [ ] tu-dortmund.de Übung zur Vorlesung Rechnerstrukturen Wintersemester 2018 Übungsblatt 10 (Block C 2) (16 Punkte)
MehrNotwendigkeit für andere Instruktionsformate
Notwendigkeit für andere Instruktionsformate add $t0, $s1, $s2 op rs rt rd shamt funct 6 Bit 5 Bit 5 Bit 5 Bit 5 Bit 6 Bit R Typ? lw $t0, 32($s3) I Typ Opcode 6 Bit Source 5 Bit Dest 5 Bit Konstante 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.
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
MehrDarstellung von Instruktionen. Grundlagen der Rechnerarchitektur Assembler 21
Darstellung von Instruktionen Grundlagen der Rechnerarchitektur Assembler 21 Übersetzung aus Assembler in Maschinensprache Assembler Instruktion add $t0, $s1, $s2 0 17 18 8 0 32 6 Bit Opcode Maschinen
MehrKap.2 Befehlsschnittstelle. Prozessoren, externe Sicht
Kap.2 Befehlsschnittstelle Prozessoren, externe Sicht 2 Befehlsschnittstelle 2.1 elementare Datentypen, Operationen 2.2 logische Speicherorganisation 2.3 Maschinenbefehlssatz 2.4 Klassifikation von Befehlssätzen
Mehr24. Februar Name:. Vorname. Matr.-Nr:. Studiengang
Klausur 24. Februar 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
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.
MehrKlausur zur Vorlesung Rechnerarchitektur
Platznummer hier eintragen! LUDWIG-MAXIMILIANS-UNIVERSITÄT MÜNCHEN INSTITUT FÜR INFORMATIK LEHRSTUHL FÜR MOBILE UND VERTEILTE SYSTEME PROF. DR. CLAUDIA LINNHOFF-POPIEN Sommersemester 2011 Klausur 26.07.2011
MehrGrundlagen der Rechnerarchitektur. MIPS Assembler
Grundlagen der Rechnerarchitektur MIPS Assembler Übersicht Arithmetik, Register und Speicherzugriff Darstellung von Instruktionen Logische Operationen Weitere Arithmetik Branches und Jumps Prozeduren 32
Mehr32 Bit Konstanten und Adressierung. Grundlagen der Rechnerarchitektur Assembler 78
32 Bit Konstanten und Adressierung Grundlagen der Rechnerarchitektur Assembler 78 Immediate kann nur 16 Bit lang sein Erinnerung: Laden einer Konstante in ein Register addi $t0, $zero, 200 Als Maschinen
MehrAssembler Programmierung Motivation. Informatik II SS 2004 Teil 4: Assembler Programmierung. Assembler vs. Maschinensprache
Assembler Programmierung Motivation Informatik II SS 2004 Teil 4: Assembler Programmierung Was ist ein Programm? Eine Reihe von Befehlen, die der Ausführung einer Aufgabe dient Dazu wird das Programm sequentiell
MehrKap 5. 5 Die Maschinenprogrammebene eines Rechners. int a=1, b=2; a = a+2*b; Höhere Programmiersprache. Assembler und Maschinenprogramm
5 Die Maschinenprogrammebene eines Rechners Höhere Programmiersprache Assembler und Maschinenprogramm Register und Mikroprogramm int a=1, b=2; a = a+2*b; lw $t0, a lw $t1, b add $t0, $t0, $t1 add $t0,
MehrLösungsvorschlag 9. Übung Technische Grundlagen der Informatik II Sommersemester 2009
Fachgebiet Rechnerarchitektur Fachbereich Informatik Lösungsvorschlag 9. Übung Technische Grundlagen der Informatik II Sommersemester 2009 Aufgabe 9.1: Dinatos-Algorithmus-Analyse Die folgenden Verilog-Zeilen
MehrInformatik II SS Assembler Programmierung Motivation. Assembler vs. Maschinensprache. Assembler Allgemein Befehle (Maschinensprache)
Assembler Programmierung Motivation Informatik II SS 2006 Kapitel 4: Assembler Programmierung Dr. Michael Ebner Dr. René Soltwisch Lehrstuhl für Telematik Institut für Informatik Was ist ein Programm?
MehrInformatik II SS 2004 Teil 4-1: Assembler Programmierung
Assembler Programmierung Motivation Informatik II SS 2004 Teil 4-1: Assembler Programmierung Prof. Dr. Dieter Hogrefe Dipl.-Inform. Michael Ebner Lehrstuhl für Telematik Institut für Informatik Was ist
MehrTechnische Informatik II Rechnerarchitektur
Technische Informatik II Rechnerarchitektur MMIX-Crashkurs Matthias Dräger, Markus Rudolph E-Mail: mdraeger@mi.fu-berlin.de rudolph@mi.fu-berlin.de www: tinyurl.com/mmix2010 www.matthias-draeger.info/lehre/sose2010ti2/mmix.php
MehrRechnerarchitektur. Marián Vajteršic und Helmut A. Mayer
Rechnerarchitektur Marián Vajteršic und Helmut A. Mayer Fachbereich Computerwissenschaften Universität Salzburg marian@cosy.sbg.ac.at und helmut@cosy.sbg.ac.at Tel.: 8044-6344 und 8044-6315 3. Mai 2017
MehrTechnische Informatik 1 - HS 2017
Institut für Technische Informatik und Kommunikationsnetze Prof. L. Thiele Technische Informatik 1 - HS 2017 Lösungsvorschläge für Übung 2 Datum: 12. 13. 10. 2017 1 Aufgaben Diese Übung soll Ihnen einen
MehrLösungsvorschlag zur 2. Übung
Prof. Frederik Armknecht Sascha Müller Daniel Mäurer Grundlagen der Informatik 3 Wintersemester 09/10 Lösungsvorschlag zur 2. Übung 1 Präsenzübungen 1.1 Schnelltest a) Der Instruktionssatz in der Assembler-Programmierung
MehrBesprechung des 5. Übungsblattes Parallelität innerhalb der CPU Pipelining
Themen heute Besprechung des 5. Übungsblattes Parallelität innerhalb der CPU Pipelining Organisatorisches Wie schon in den vorhergehenden Tutorien erwähnt, ist Mehrfachabgabe, außer bei Programmieraufgaben,
Mehr1. Teilklausur zur Vorlesung Grundlagen der Rechnerarchitektur
Universität Koblenz-Landau Montag, 6. Mai 2. Teilklausur zur Vorlesung Grundlagen der Rechnerarchitektur Sommersemester 2 Prof. Dr. Ch. Steigner Name Vorname Mat.-Nr. Studiengang Musterlösung Punkte :
MehrEinführung in die Systemprogrammierung
Einführung in die Systemprogrammierung Prof. Dr. Christoph Reichenbach Fachbereich 12 / Institut für Informatik 9. Juli 2015 Der MIPS-Prozessor MIPS R2000, von iamretro.gr Kurze Geschichte der MIPS-Architektur
MehrEinführung in die Systemprogrammierung 01
Einführung in die Systemprogrammierung 01 Prof. Dr. Christoph Reichenbach Fachbereich 12 / Institut für Informatik 24. April 2013 Administrativa Ab nächster Woche bitte Laptops in Übungen mitbringen OLAT-Paßwort
MehrEinführung in die Systemprogrammierung
Einführung in die Systemprogrammierung Der Binder Prof. Dr. Christoph Reichenbach Fachbereich 12 / Institut für Informatik 28. Mai 2015 Herausforderungen durch große Programme Große Programme: die meisten
MehrRO-Tutorien 15 und 16
Tutorien zur Vorlesung Rechnerorganisation Tutorienwoche 2 am 04.05.2011 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft
MehrTechnische Informatik I - HS 18
Institut für Technische Informatik und Kommunikationsnetze Prof. L. Thiele Technische Informatik I - HS 18 Übung 7 Datum : 22.-23. November 2018 Pipelining Aufgabe 1: Taktrate / Latenz In dieser Aufgabe
MehrUnterstützung von Jump Tables
Unterstützung von Jump Tables Assembler Code: Label_ 1: Label_2: Label_n: Maschinen Code: 0x05342120: 1011010110 0x05443004: 0001011101 0x06756900: 0000111000 Jump Table Nr Label Adresse 0 Label_1 0x05342120
MehrTechnische Informatik 1 Übung 6 Pipelining (Rechenübung) Andreas Tretter 24./25. November 2016
Technische Informatik 1 Übung 6 Pipelining (Rechenübung) Andreas Tretter 24./25. November 2016 Aufgabe 1: Taktrate / Latenz TI1 - Übung 6: Pipelining Einzeltakt-Architektur TI1 - Übung 6: Pipelining Pipelining-Architektur
MehrRO-Tutorien 3 / 6 / 12
RO-Tutorien 3 / 6 / 12 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery WOCHE 2 AM 06./07.05.2013 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft
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
MehrARM-Cortex-M4 / Thumb-2-Befehlssatz Adressierungsarten und arithmetische Operationen
ARM-Cortex-M4 / Thumb-2-Befehlssatz Adressierungsarten und arithmetische Operationen Aufgabenstellung: - das beigefügte Assembler-Programm schrittweise ausführen - sich mit der Handhabung der Entwicklungswerkzeuge
MehrTutorium Rechnerorganisation
Woche 13 Tutorien 3 und 4 zur Vorlesung Rechnerorganisation 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu
MehrGrundlagen zur Assemblerprogrammierung unter SPIM im Sommersemester Lorenz Schauer Mobile & Verteilte Systeme
Grundlagen zur Assemblerprogrammierung unter SPIM im Sommersemester 2016 Lorenz Schauer Mobile & Verteilte Systeme 05. Juli 2016 Agenda Theoretische Grundlagen Motivation Register Aufbau eines Programms
MehrRO-Tutorien 15 und 16
Tutorien zur Vorlesung Rechnerorganisation Tutorienwoche 11 am 06.07.2011 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft
MehrRechnerstrukturen, Teil 2
12 Rechnerstrukturen, Teil 2 2014/06/04 Kontext Die Wissenschaft Informatik befasst sich mit der Darstellung, Speicherung, Übertragung und Verarbeitung von Information [Gesellschaft für Informatik] hier
MehrRO-Tutorien 17 und 18
RO-Tutorien 17 und 18 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery TUTORIENWOCHE 2 AM 10.05.2012 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der
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......
MehrTechnische Informatik 1 Übung 7 Pipelining (Rechenübung) Balz Maag 22./23. November 2018
Technische Informatik 1 Übung 7 Pipelining (Rechenübung) Balz Maag 22./23. November 2018 Aufgabe 1: Taktrate / Latenz Einzeltakt-Architektur Pipelining-Architektur Pipelining-Architektur 15 15 120 ps 15
MehrBeim Programmieren mit MMIX habt ihr vielleicht schon öfter eine der folgenden Fehlermeldungen von MMIXAL bekommen:
1 ADRESSIERUNG IN MMIX Beim Programmieren mit MMIX habt ihr vielleicht schon öfter eine der folgenden Fehlermeldungen von MMIXAL bekommen: no base address is close enough to the address A! relative address
MehrEinführung in die Programmierung WS 2009/10. Übungsblatt 5: Typen, Variablen und einfache Methoden in Java
Ludwig-Maximilians-Universität München München, 20.11.2009 Institut für Informatik Prof. Dr. Christian Böhm Annahita Oswald, Bianca Wackersreuther Einführung in die Programmierung WS 2009/10 Übungsblatt
MehrOrganisatorisches. Folien (u.a.) gibt's auf der Lva-Homepage zum Download
Organisatorisches Folien (u.a.) gibt's auf der Lva-Homepage zum Download Diesen Mi erstes Tutorium (15-17) Ab nächster Woche montags 10-12 (jeweils im Computerraum) 17.10.2017 IT I - VO 3 1 Organisatorisches
MehrOffenbar hängt das Ergebnis nur von der Summe der beiden Argumente ab...
0 1 2 0 2 1 1 2 0 2 1 0 Offenbar hängt das Ergebnis nur von der Summe der beiden Argumente ab... 0 1 2 0 1 2 1 1 3 2 2 3 212 Um solche Tabellen leicht implementieren zu können, stellt Java das switch-statement
MehrSynchronisation. Grundlagen der Rechnerarchitektur Assembler 91
Synchronisation Grundlagen der Rechnerarchitektur Assembler 91 Data Race Prozessor 1: berechne x = x + 2 lw $t0, 0($s0) # lade x nach $t0 addi $t0, $t0, 2 # $t0 = $t0 + 2 sw $t0, 0($s0) # speichere $t0
MehrSteuerwerk einer CPU. Einführung in die Technische Informatik Falko Dressler, Stefan Podlipnig Universität Innsbruck
Steuerwerk einer CPU Einführung in die Technische Informatik Falko Dressler, Stefan Podlipnig Universität Innsbruck Übersicht Implementierung des Datenpfads Direkte Implementierung Mikroprogrammierung
Mehr5.GTypische Anwendungsfälle
Die Maschinenprogrammebene eines Rechners Jörg Roth 337 5.GTypische Anwendungsfälle Wir betrachten im Folgenden typische Fälle aus dem Bereich imperativer Programmiersprachen und beschreiben, wie diese
MehrTechnische Informatik - Eine Einführung
Martin-Luther-Universität Halle-Wittenberg Fachbereich Mathematik und Informatik Lehrstuhl für Technische Informatik Prof. P. Molitor Technische Informatik - Eine Einführung Rechnerarchitektur Aufgabe
MehrCompiler für f r Eingebettete Systeme (CfES)
Compiler für f r Eingebettete Systeme (CfES) Sommersemester 2009 Dr. Heiko Falk Technische Universität Dortmund Lehrstuhl Informatik 12 Entwurfsautomatisierung für Eingebettete Systeme Kapitel 9 Ausblick
MehrMusterlösung zur Klausur
Koblenz am 25. Februar 25 Uhr c.t., Hörsaal MD 28 Studiengang Informatik/Computervisualistik Musterlösung zur Klausur TECHNISCHE INFORMATIK B Prof. Dr. Ch. Steigner Name: Vorname: Matrikel-Nr.: Vergessen
MehrTechnische Informatik 1 - HS 2017
Institut für Technische Informatik und Kommunikationsnetze Prof. L. Thiele Technische Informatik 1 - HS 2017 Übung 8 Datum: 30. 11. 1. 12. 2017 In dieser Übung soll mit Hilfe des Simulators WinMIPS64 die
MehrTechnische Informatik I Übung 3: Assembler
Technische Informatik I Übung 3: Assembler Roman Trüb Computer Engineering Group, ETH Zürich 1 Lernziele Übung 3 Aufgabe 1 Aufbau und Aufruf von Funktionen in Assembler Assembler Codeanalyse Aufgabe 2
MehrDuE-Tutorien 4 und 6. Tutorien zur Vorlesung Digitaltechnik und Entwurfsverfahren Christian A. Mandery. WOCHE 14 AM
DuE-Tutorien 4 und 6 Tutorien zur Vorlesung Digitaltechnik und Entwurfsverfahren Christian A. Mandery WOCHE 14 AM 05.02.2013 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum
MehrInformatik Vorkurs - Vorlesung 2
Informatik Vorkurs - Vorlesung 2 Variablen, Arrays, Zahlensysteme Torben Achilles, 9. Oktober 2018 Inhalt Variablen & Datentypen Arrays Zahlensysteme 9. Oktober 2018 Torben Achilles Informatik Vorkurs
MehrU23 - Shellcode. Twix Chaos Computer Club Cologne. Motivation Einstieg Der erste Shellcode Nullbytes, NOP Slides
Twix e.v. http://koeln.ccc.de 2016-11-28 Überblick 1 Motivation Was ist Shellcode? Beispiel 2 Einstieg Erzeugen, Testen von Shellcode 3 Der erste Shellcode Strings in Shellcode 4 Nullbytes, NOP Slides
MehrRechnerarchitektur (RA)
2 Rechnerarchitektur (RA) Sommersemester 27 Pipelines Jian-Jia Chen Informatik 2 http://ls2-www.cs.tu.de/daes/ 27/5/3 Diese Folien enthalten Graphiken mit Nutzungseinschränkungen. Das Kopieren der Graphiken
MehrRechnerarchitektur (RA)
2 Rechnerarchitektur (RA) Sommersemester 26 Pipelines Jian-Jia Chen Informatik 2 http://ls2-www.cs.tu.de/daes/ 26/5/25 Diese Folien enthalten Graphiken mit Nutzungseinschränkungen. Das Kopieren der Graphiken
MehrTutorium Rechnerorganisation
Woche 8 Tutorien 3 und 4 zur Vorlesung Rechnerorganisation 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu
MehrSkript zur Vorlesung Rechnerstrukturen, Teil 2 WS 2006/2007
Skript zur Vorlesung Rechnerstrukturen, Teil 2 WS 26/27 P. Marwedel, Informatik 2 Universität Dortmund 3. September 26 Teile des Skripts sind urheberrechtlich geschützt. Eine Verbreitung über den Kreis
MehrSkript zur Vorlesung Rechnerstrukturen, Teil 2 WS 2013/2014
Skript zur Vorlesung Rechnerstrukturen, Teil 2 WS 23/24 P. Marwedel, Informatik 2 Technische Universität Dortmund 8. September 23 Teile des Skripts sind urheberrechtlich geschützt. Eine Verbreitung über
MehrVorstellung (Wdh. für die Neuen )
Vorstellung (Wdh. für die Neuen ) Mein Name: Christian Mandery Studiengang: Diplom-Informatik im 4. Semester (ich höre also im Moment selbst noch Technische Informatik 2) E-Mail (bei Fragen und zum Senden
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
MehrSysteme I: Betriebssysteme Kapitel 8 Speicherverwaltung
Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung Version 21.12.2016 1 Inhalt Vorlesung Aufbau einfacher Rechner Überblick: Aufgabe, Historische Entwicklung, unterschiedliche Arten von Betriebssystemen
MehrData Hazards. Grundlagen der Rechnerarchitektur Prozessor 74
Data Hazards Grundlagen der Rechnerarchitektur Prozessor 74 Motivation Ist die Pipelined Ausführung immer ohne Probleme möglich? Beispiel: sub $2, $1, $3 and $12, $2, $5 or $13, $6, $2 add $14, $2, $2
MehrTechnische Informatik II Rechnerarchitektur
Technische Informatik II Rechnerarchitektur 3.Unterprogramme in MMIX Matthias Dräger E-Mail: www: mdraeger@mi.fu-berlin.de www.matthias-draeger.info/lehre/sose2010ti2/ tinyurl.com/sose2010ti2 Zuletzt bearbeitet:
Mehr13.2 Übergang zur realen Maschine
13.2 Übergang zur realen Maschine Bernd Becker Technische Informatik II Unterschiede zwischen abstrakter und realer Maschine 1. Bei realer Maschine nur ein Speicher M für Daten und Befehle. M ist endlich.
MehrSelbststudium Informationssysteme - H1102 Christian Bontekoe & Felix Rohrer
Übung RA, Kapitel 1.5 1. Beantworten Sie bitte folgende Repetitionsfragen 1. Beschreiben Sie in eigenen Worten und mit einer Skizze die Schichtung einer Multilevel Maschine. Folie 5, rechte Seite 2. Welche
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
MehrOrganisatorisches. Folien (u.a.) auf der Lva-Homepage Skriptum über MU Online
Organisatorisches Folien (u.a.) auf der Lva-Homepage Skriptum über MU Online Nächste Woche VO und UE am Dienstag, den 30.10.! UE im CR IL/IT Wissensüberprüfung am Zettel 25.10.2018 IT I - VO 3 1 Organisatorisches
MehrUniversität Koblenz-Landau. Montag, 20. Juni Teilklausur zur Vorlesung Grundlagen der Rechnerarchitektur. Sommersemester 2011
Universität Koblenz-Landau Montag, 20. Juni 2011 2. Teilklausur zur Vorlesung Grundlagen der Rechnerarchitektur Sommersemester 2011 Prof. Dr. Ch. Steigner Name Vorname Mat.-Nr. Studiengang Musterlösung
MehrPraktische Informatik 1
Praktische Informatik 1 Imperative Programmierung und Objektorientierung Karsten Hölscher und Jan Peleska Wintersemester 2011/2012 Session 2 Programmierung Begriffe C/C++ Compiler: übersetzt Quellcode
MehrÜbungen zu Grundlagen der Rechnerarchitektur und -organisation: Bonusaufgaben Übung 8 und Präsenzaufgaben Übung 9
Übungen zu Grundlagen der Rechnerarchitektur und -organisation: Bonusaufgaben Übung 8 und Präsenzaufgaben Übung 9 Dominik Schoenwetter Erlangen, 30. Juni 2014 Lehrstuhl für Informatik 3 (Rechnerarchitektur)
MehrVorkurs Informatik WiSe 16/17
Java Ausdrücke und Variablen Dr. Werner Struckmann / Stephan Mielke, Jakob Garbe, 05.10.2016 Technische Universität Braunschweig, IPS Überblick Ausdrücke, Datentypen und Variablen Kontrollstrukturen 05.10.2016
MehrGrundlagen der Informationsverarbeitung:
Grundlagen der Informationsverarbeitung: Befehlssatz und Assembler-Sprache Prof. Dr.-Ing. habil. Ulrike Lucke Durchgeführt von Prof. Dr. rer. nat. habil. Mario Schölzel Maximaler Raum für Titelbild (wenn
MehrGrundlagen der Betriebssysteme
Grundlagen der Betriebssysteme [CS2100] Sommersemester 2014 Heiko Falk Institut für Eingebettete Systeme/Echtzeitsysteme Ingenieurwissenschaften und Informatik Universität Ulm Kapitel 7 Einführung in MIPS-Assembler
Mehr