Grundbegriffe der Informatik Tutorium 5

Ähnliche Dokumente
Grundbegriffe der Informatik

Grundbegriffe der Informatik Aufgabenblatt 5

MIMA Die Sicht von außen

Grundbegriffe der Informatik

Grundbegriffe der Informatik Tutorium 11

Probeklausur zur Vorlesung Grundbegriffe der Informatik

Grundbegriffe der Informatik Tutorium 12

Grundbegriffe der Informatik Tutorium 3

Grundbegriffe der Informatik Tutorium 14

Besprechung des 3. Übungsblattes MIMA-Interpreter MIMA-Aufgabe: Primzahltest Weitere MIMA-Aufgaben online

Grundbegriffe der Informatik Tutorium 11

Grundbegriffe der Informatik Tutorium 2

Probeklausur zur Vorlesung Grundbegrie der Informatik 22. Januar 2016

Grundbegriffe der Informatik Tutorium 8

Grundbegriffe der Informatik Tutorium 10

Grundbegriffe der Informatik Tutorium 2

Assembler Kontrollstrukturen

Arithmetik, Register und Speicherzugriff. Grundlagen der Rechnerarchitektur Assembler 9

RO-Tutorien 3 / 6 / 12

Grundbegriffe der Informatik Tutorium 7

H. Modellrechner. H.1. Einordnung

Rechnerstrukturen 1: Der Sehr Einfache Computer

1 Rechnerstrukturen 1: Der Sehr Einfache Computer

Grundbegriffe der Informatik Tutorium 3

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

Sprungbefehle und Kontroll-Strukturen

Lösungsvorschlag 9. Übung Technische Grundlagen der Informatik II Sommersemester 2009

Klausur Grundlagen der Informatik

Grundbegriffe der Informatik Tutorium 13

Rechnernetze und Organisation

Zusammenfassung der Assemblerbefehle des 8051

Vorlesung Programmieren

4 Assembler für die 8051-Controller-Familie

Modellierung und Programmierung 1

Rechnerarchitektur (RA)

Rechnerarchitektur (RA)

Zahlendarstellungen und Rechnerarithmetik*


Übungsblatt 7 Implementierung von Programmsteuerbefehlen in einer Befehlspipeline Abgabefrist: Mittwoch , 14:00 Uhr

Grundbegriffe der Informatik Tutorium 5

Von-Neumann-Architektur

2. Computer (Hardware) K. Bothe, Institut für Informatik, HU Berlin, GdP, WS 2015/16

Vorstellung (Wdh. für die Neuen )

Teil 2: Rechnerorganisation

Shangrila. One Instruction Set Computer

Die Arithmetisch-Logische Einheit ALU 74181

Grundbegriffe der Informatik Tutorium 13

"Organisation und Technologie von Rechensystemen 4"

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

Vorlesung Programmieren

Grundlagen der Rechnerarchitektur. Binäre Logik und Arithmetik

Einführung Programmierpraktikum C Michael Zwick

Tutorium Rechnerorganisation

Informatik Rechnerinterne Vorgänge: Programmstrukt. (Lsg.) Gierhardt

Assembler am Beispiel der MIPS Architektur

Daniel Betz Wintersemester 2011/12

Der Toy Rechner Ein einfacher Mikrorechner

Angewandte Mathematik und Programmierung

Darstellung von Instruktionen. Grundlagen der Rechnerarchitektur Assembler 21

Kompilieren Datentypen Operatoren. Überblick. 1 Kompilieren. 2 Datentypen. const static volatile. 3 Operatoren. Alexander Batoulis

Computersysteme. Serie 11

Übung Programmieren - Zahlendarstellung, SSH, SCP, Shellskripte -

Zusammenfassung: Grundlagen der Informatik Zahlensysteme, b-adische Darstellung, Umrechnung Beispiel: Umrechnung von ( ) 10 ins Dualsystem

Grundlagen der Informatik III Wintersemester 2010/ Vorlesung Dr.-Ing. Wolfgang Heenes

Lösung 5. Übungsblatt

Problem: Keine Integers in JavaCard. ToDo: Rechnen mit Bytes und Shorts

RISC-Prozessoren (1)

Inhalt. Zahlendarstellungen

4. Übung SPS-Programmierung

05. Assembler-Programmierung. Datenstrukturen des ATMega32. Literatur

Offenbar hängt das Ergebnis nur von der Summe der beiden Argumente ab...

Lehrveranstaltung: Digitale Systeme. KS-Praktikums-Vorbereitung Dipl.-Inf. Markus Appel , , ,

Grundbegriffe der Informatik

Selbststudium Informationssysteme - H1102 Christian Bontekoe & Felix Rohrer

Teil 2: Rechnerorganisation

Rechnerorganisation Tutorium Nr. 1

Teil 2: Rechnerorganisation

Use of the LPM (Load Program Memory)

Outline Schieberegister Multiplexer Zähler Addierer. Rechenschaltungen. Marc Reichenbach und Michael Schmidt

DuE-Tutorien 17 und 18

Die Mikroprogrammebene eines Rechners

Grundbegriffe der Informatik

12. Tutorium Digitaltechnik und Entwurfsverfahren

Klasse Label. class Label { Code code; List<Integer> fixuplist; // code positions to patch int adr; // address of label in code

Aufgabe 7.2: Mikroprogramm-Steuerwerk analysieren

Lösungsvorschlag zu 1. Übung

1. Inhaltsverzeichnis

18. Bitmanipulationen. Bitoperationen Bitmasken

Rechnerorganisation. (10,11) Informationskodierung (12,13,14) TECHNISCHE UNIVERSITÄT ILMENAU. IHS, H.- D. Wuttke `09

8. Intel IA-32 Prozessoren: Befehlsübersicht

1. Tutorium Digitaltechnik und Entwurfsverfahren

Rechnerorganisation. H.-D. Wuttke `

Kap 4. 4 Die Mikroprogrammebene eines Rechners

Assembler Integer-Arithmetik

Transkript:

Grundbegriffe der Informatik Tutorium 5 Tutorium Nr. 16 Philipp Oppermann 2. Dezember 2014 KARLSRUHER INSTITUT FÜR TECHNOLOGIE KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu

Gliederung 1 Überblick über die MIMA 2 MIMA Befehle 3 MIMA Phasen Philipp Oppermann GBI Tutorium Nr. 16 2. Dezember 2014 2/14

Überblick über die MIMA Philipp Oppermann GBI Tutorium Nr. 16 2. Dezember 2014 3/14

Speicherbefehle LDC const load constant Akku const LDV adr load value from address Akku M(adr) LDIV adr load value indirect from address Akku M(M(adr)) STV adr set value at address M(adr) Akku STIV adr set value indirect at address M(M(adr)) Akku Ein Pointer p ist ein Speicherwort, das die Adresse eines anderen Speicherworts enthält. p sei der dereferenzierte Pointer, also der Wert bei M(p). Schreibe ein MIMA-Programm, das ausschließlich die Adresse a von p verwendet, so dass: a) p 42 b) p p c) p p Philipp Oppermann GBI Tutorium Nr. 16 2. Dezember 2014 4/14

Lösung Ein Pointer p ist ein Speicherwort, das die Adresse eines anderen Speicherworts enthält. p sei der dereferenzierte Pointer, also der Wert bei M(p). Schreibe ein MIMA-Programm, das ausschließlich die Adresse a von p verwendet, so dass: a) p 42 b) p p c) p p a) LDC 42 STIV a b) LDIV a STV a c) LDV a STIV a Philipp Oppermann GBI Tutorium Nr. 16 2. Dezember 2014 5/14

einstellige Operationen NOT Invertierung Akku-Bits Akku ~Akku RAR rotate accumulator right Akku x 0 x 23 x 22 x 3 x 2 x 1 Es sei M(a) 0 eine gerade Zahl. Schreibe ein MIMA-Programm, das a) 42 invertiert b) die Zahl an der Adresse a halbiert Philipp Oppermann GBI Tutorium Nr. 16 2. Dezember 2014 6/14

Lösung Es sei M(a) 0 eine gerade Zahl. Schreibe ein MIMA-Programm, das a) 42 invertiert b) die Zahl an der Adresse a halbiert a) LDC 42 NOT b) LDV a RAR STV a Philipp Oppermann GBI Tutorium Nr. 16 2. Dezember 2014 7/14

Arithmetik Befehle ADD adr Addition Akku Akku + M(adr) AND adr bitweises UND Akku Akku & M(adr) OR adr bitweises ODER Akku Akku M(adr) XOR adr bitweises exklusives ODER Akku Akku ^M(adr) Schreibe ein MIMA-Programm, das die Zahl an Adresse a um 42 erhöht. Philipp Oppermann GBI Tutorium Nr. 16 2. Dezember 2014 8/14

Lösung Schreibe ein MIMA-Programm, das die Zahl an Adresse a um 42 erhöht. LDC 42 ADD a STV a Philipp Oppermann GBI Tutorium Nr. 16 2. Dezember 2014 9/14

Vergleichsoperationen EQL adr equal? Akku { 1 0 sonst falls Akku = M(adr) Wie sehen die Akku-Bits für Akku = 1 aus? 111 111 (Zweierkomplement) Philipp Oppermann GBI Tutorium Nr. 16 2. Dezember 2014 10/14

Sprünge JMP adr jump setze fort mit Befehl in adr JMN adr jump if negative setze fort mit Befehl in adr, falls Akku < 0 Wie kann man einfach überprüfen ob Akku negativ? höchstwertiges Bit ist 1 (da Zweierkomplement) Schreibe ein MIMA-Programm, das die Zahl an Adresse a auf 0 setzt, falls sie positiv ist, und auf 1, falls sie negativ ist. Philipp Oppermann GBI Tutorium Nr. 16 2. Dezember 2014 11/14

Lösung Schreibe ein MIMA-Programm, das die Zahl an Adresse a auf 0 setzt, falls sie positiv ist, und auf 1, falls sie negativ ist. LDV a JMN negative LDC 0 JMP end negative: LDC 0 NOT end: STV a Philipp Oppermann GBI Tutorium Nr. 16 2. Dezember 2014 12/14

sonstiges... Der Befehl HALT hält die MIMA an. Es werden keine weiteren Befehle mehr ausgeführt. In den Folien der Übung 5 gibt es Assembler Übersetzungen von if/else, while, do while und for. Philipp Oppermann GBI Tutorium Nr. 16 2. Dezember 2014 13/14

MIMA Phasen Holphase Decodierphase Ausführungsphase siehe Vorlesungsfolien Philipp Oppermann GBI Tutorium Nr. 16 2. Dezember 2014 14/14