MGI Exkurs: Rechnen. Prof. Dr. Wolfram Conen Version 1.0a2. Prof. Dr. W. Conen, FH Gelsenkirchen, Version 1.0a2 1

Größe: px
Ab Seite anzeigen:

Download "MGI Exkurs: Rechnen. Prof. Dr. Wolfram Conen Version 1.0a2. Prof. Dr. W. Conen, FH Gelsenkirchen, Version 1.0a2 1"

Transkript

1 MGI Exkurs: Rechnen Prof. Dr. Wolfram Conen Version 1.0a2 Version 1.0a2 1

2 Schauen Sie sich um Computer und Netzwerke sind überall! Sie ermöglichen ein feingesponnenes Geflecht komplexer menschlicher Aktivitäten: Erziehung, Geschäftsleben, Unterhaltung, Forschung, Produktion, Gesundheitsmanagement, menschliche Kommunikation, selbst Kriegsführung Es gibt zwei wichtige technologische Grundlagen dieser faszinierenden Entwicklung: Die offensichtlichere: die atemberaubende Geschwindigkeit, mit der uns Fortschritte in Mikroelektronik und Chip-Design immer schnellere Hardware bringen Die verstecktere Grundlage: Eine intellektuelle Unternehmung, die einen wesentliche Treibstoff für die fortschreitende Computer-Revolution bietet: Die Suche nach effizienten Algorithmen It s a fascinating story. Gather round and listen close. [Sanjoy Dasgupta, Christos Papadimitriou und Umesh Vazirani in Algorithms, 1.ed, McGraw-Hill, 2008] Version 1.0a2 2

3 Schauen Sie sich um Die Suche nach effizienten Algorithmen wird Thema in ADS aber auch in MGI werden wir schon (mathematisch motivierte) Ausflüge dorthin unternehmen zum Beispiel im folgenden. Wir werden uns mit Zahlen beschäftigen und rechnen lernen und mit Hilfe von Primzahlen unseren Freunden (ziemlich) sichere s senden Und natürlich werden wir das so genau anschauen, dass sie selbst per Hand verschlüsseln können werden! Version 1.0a2 3

4 Algorithmen mit Zahlen Im folgenden werden zwei sehr alte Probleme eine zentrale Rolle spielen: Faktorisierung: Gegeben sei eine Zahl N, stelle sie dar als Produkt ihrer Primfaktoren Prüfen der Primzahleigenschaft: Gegeben sei eine Zahl N, bestimme, ob sie eine Primzahl ist Faktorisierung ist ein hartes Problem: der schnellste bisher bekannte Algorithmus benötigt einen Zeitaufwand, der exponentiell ist zur Zahl der Bits, die N kodieren. Zum Testen der Primzahleigenschaft existiert hingegen ein effizienter Algorithmus (ausführbar mit einem Zeitaufwand, der sich durch ein Polynom abschätzen läßt) Aber mehr dazu später. Version 1.0a2 4

5 Algorithmen mit Zahlen Eine elementare Eigenschaft von Dezimalzahlen: Die Summe von drei beliebigen einstelligen Zahlen ist höchsten zweistellig. Prüfen wir das: Die größte einstellige Zahl ist = 27, die Aussage stimmt also offensichtlich Diese Aussage gilt für Zahlen zu jeder Basis b >= 2 Deshalb können wir beim Addieren zweier Zahlen, egal, wie sie repräsentiert sind, diese immer rechtsbündig untereinander schreiben und dann von rechts nach links ziffernweise addieren und einen (immer) EINSTELLIGEN Übertrag (0 ist auch erlaubt) mitführen, der beim nächsten Durchgang hinzu addiert wird (und wieder nur zu einem einstelligen Übertrag beiträgt, s. unsere Aussage oben). Version 1.0a2 5

6 Algorithmen mit Zahlen Aber was war nochmal eine Basis b? Dezimalzahlen, z.b. 234, lassen sich wie folgt als Summe von Potenzen zur Basis 10 darstellen: 234 = 4* * *10 2 Zur Erinnerung: x 0 ist immer 1, x 1 ist immer x, also gilt auch für x=10: 10 1 = = 10*10 = y = 10 0 = 1 mit genau y Nullen, y >= 0 Die Zahl, die durch 234 im Dezimalsystem repräsentiert wird, läßt sich aber auch zu anderen Basen darstellen Version 1.0a2 6

7 Algorithmen mit Zahlen 234 im Dezimalsystem ist 14* *16 0 = EA im Hexadezimalsystem Basis 16, klar. Dann braucht man aber auch 16 Ziffern also nimmt man noch A (für 10), B (11), C(12), D(13), E (14), F (15), hinzu Das Hexadezimalsystem wird ihnen noch oft begegnen, weil die Wortbreite in Computersystemen regelmäßig durch 8 teilbar ist (früher 8 Bit, später 16, dann 32, heute oft 64) und in 8 Bit genau 256, also 16*16, Werte passen genauer: die Zahlen von 0 bis 255, oder, Hexadezimal, von 00 bis FF (FF = 15* = 255) Version 1.0a2 7

8 Algorithmen mit Zahlen 234 im Dezimalsystem ist = 3* * *8 0 = 352 im Oktalsystem Basis? Klar, 8 Von Dieben im Mittelalter erfunden, weil denen regelmässig beide Daumen abgehackt wurden (zur Strafe ) Auch praktisch, wenn die Wortbreite nur bei 3 Bit (bzw. 6) liegt Denn dann kann man nur die Werte 0..7 kodieren (bei 6- Bit wird man dann zweistellig ) Und das sind genau die Ziffern im Oktalsystem Version 1.0a2 8

9 Algorithmen mit Zahlen Was meint denn Wortbreite? Rechts ist der Speicher ihres Computers Die einzelnen Speicherzellen lassen sich einzeln adressieren Hier z.b. 0, 1, 2, 3 Und die Breite der Zelle meint die Wortbreite (des Speichers), hier wird die Zahl der Bits gezählt, die in eine Zelle passen Der Prozessor kann intern sogar eine andere Breite haben, als der Speicher 0: 1: 2: 3: Version 1.0a2 9

10 Algorithmen mit Zahlen Und was sind Bits? Das sind die kleinsten Informationseinheiten im Rechner, sie sind an oder aus, wahr oder falsch, 1 oder 0 Mit Bits kann man unsere Zahl 234 auch darstellen in der sogenannten Binärdarstellung (binär = zweiwertig): = Wie kommt man drauf? 0: 1: 2: 3: Version 1.0a2 10

11 Algorithmen mit Zahlen 234 = = 1* * * * * * * *2 0 = binär Mit 8 Bit kann man also wieviele Zahlen repräsentieren? Genau: Bei jedem Bit kann man sich zwischen 0 und 1 entscheiden, mit einem Bit hat man also 2 Wahlmöglichkeiten mit zwei Bits kommen noch mal jeweils zwei Möglichkeiten hinzu, also insgesamt 2*2, usw. bei 8 Bit sind es dann: 2*2*2*2*2*2*2*2 = 2 8 = 256 Wieviel sind es bei 16 Bit? Wieviel bei 32? Wieviel bei 64? , , viele (ca. 1, * ) Version 1.0a2 11

12 Algorithmen mit Zahlen Die Frage nach den Wahlmöglichkeiten als Entscheidungsbaum aber nur für 3 Bit Sie müssen drei Fragen mit Ja oder Nein beantworten, wieviele mögliche Kombinationen von Antworten gibt es? Erste Frage: Sind sie reich? Ja (=1) Nein (=0) Zweite: Sind sie schlau? Dritte: Sind sie schön? = 2 3 Version 1.0a2 12

13 Algorithmen mit Zahlen Die Frage nach den Wahlmöglichkeiten als Entscheidungsbaum für 8 Fragen Würde zu einem Baum mit 8 Ebenen mit Frageknoten führen und eine 9te Ebene mit den Antwortknoten, diese Knoten heißen auch Blätter, denn sie haben keine Kinder (anders als die sogenannten inneren Knoten, unseren Frageknoten). Auf der ersten Ebene sind 2 0 Knoten, auf der zweiten doppelt so viele, also 2 1, auf der dritten wieder doppelt so viele, also 2 2, usw. auf der n-ten Ebene sind also 2 n-1 Knoten Auf der 9ten Ebene sind also 2 8 = 256 Blätter Preisfrage: Wieviele innere Knoten gibt es übrigens auf den inneren Ebenen 1 bis 8 insgesamt? Version 1.0a2 13

14 Algorithmen mit Zahlen Preisfrage: Wieviele innere Knoten gibt es übrigens auf den Ebenen 1 bis 8 insgesamt? Rechnen wir mal kurz rückwärts : Wenn es auf Ebene n x Frageknoten gibt, gibt es auf Ebene n+1 2*x Antwortknoten für jeden Frageknoten gibt es ja zwei mögliche Antworten Ja und Nein übrigens, wenn sie jetzt noch vielleicht hinzunehmen, haben sie das Rechnen zur Basis 3 verstanden. Umgekehrt: Wenn wir auf Ebene n sind (n >= 2), dann haben wir genau HALB soviele Knoten auf der Ebene darüber (also auf Ebene n-1). Wenn wir von 256 = 2 8 auf Ebene 9 ausgehen, haben wir auf Ebene 8 genau 256 / 2 = 2 8 / 2 = 2*2*2*2*2*2*2*2 / 2 = 2*2*2*2*2*2*2 = 2 7 Knoten Auf Ebene 7 wieder halb so viele, also 2 6 usw., bis zu 2 0 = 1 Knoten auf Ebene 1. In Summe sind das: = = 255 = = Version 1.0a2 14

15 Algorithmen mit Zahlen Unser JA-NEIN -Entscheidungsbaum ist ein sogenannter Binärbaum ja, richtig, binär war zweiwertig Wenn der Binärbaum n Ebenen hat (also n-1 Fragen gestellt werden), dann hat er genau wieviele Knoten (innere und Blätter zusammen genommen)? Ja, richtig, 2 n 1. Kontrollieren wir das für das Beispiel eben: Wir hatten 9 Ebenen mit 2 8 Blättern auf Ebene 9 und insgesamt inneren Knoten In Summe also (2 * 2 8 ) 1, also 2 9 1, also 2 n 1 für n = 9, also = 511 Übrigens: Wieviele Knoten wären auf Ebene 10 hinzu gekommen? Klar, für jedes Blatt wären zwei neue hinzugekommen, also 256*2 = 2 9 = 512 Vorsicht übrigens: oft spricht man auch von einer Tiefe eines Baumes, und die zählt man manchmal ab 0 (unser Baum hätte dann die Tiefe 8 gehabt) und der oberste Knoten, die sogenannte Wurzel, wäre auf Tiefe 0 gewesen. Version 1.0a2 15

16 Algorithmen mit Zahlen Wie findet man die binäre Darstellung einer Dezimalzahl? Teilen wir mal 234 durch 2, bis es nicht mehr geht: 234 / 2 = / 2 = 58 Rest 1 58 / 2 = / 2 = 14 Rest 1 14 / 2 = 7 7 / 2 = 3 Rest 1 3 / 2 = 1 Rest 1 Wir können also 234 7mal durch 2 teilen und behalten ab und an einen Rest zurück d.h. 2 7 ist schon mal in 234 enthalten, aber nicht 2 8. Und weiter? Jetzt könnten wir 2 7 von 234 abziehen und wieder durch 2 teilen usw. Version 1.0a2 16

17 Algorithmen mit Zahlen Machen wir das einmal: = = / 2 = / 2 = 26 Rest 1 26 / 2 = / 2 = 6 Rest 1 6 / 2 = 3 3 / 2 = 1 Rest 1, hier ging es also noch 6 mal. Mit = = 42 geht es so: 42/2 = 21, 21/2 = 10 Rest 1, 10/2 = 5, 5/2 = 2 Rest 1, 2/2 = 1, also 5 mal Mit = = 10 so: 10/2 = 5, 5/2 = 2 Rest 1, 2/2 = 1, also 3mal. Mit = 10 8 = 2 so: 2/2 = 1, also 1mal. Und dann bleibt nicht übrig, denn = 2 2 = 0. Die 2 passte also 7mal, 6mal, 5mal, 3mal und 1mal in 234. (Geht diese Berechnung auch leichter?) Version 1.0a2 17

18 Algorithmen mit Zahlen Die 2 passte also 7mal, 6mal, 5mal, 3mal und 1mal in 234 und die jeweiligen Reste. In 234 sind also 2 7, 2 6, 2 5, 2 3 und 2 1 als additive Faktoren enthalten. Nun steht, wie im Dezimalsystem, jede Ziffer der Binärzahl je nach Position in der Zahl für eine dieser Potenzen. Wenn man die Positionen von RECHTS zählt, steht die erste Ziffer RECHTS (an Position 0) für den Faktor vor 2 0 (bzw. vor 10 0 im Dezimalsystem) Links daneben dann für den Faktor vor 2 1 usw. Im Binärsystem sind unsere Faktoren alle nur 0 oder 1, wenn die Potenz 2 n in der Zahl vorkommt, steht an der Position n (von rechts gezählt, mit 0 beginnend) eine 1, sonst eine 0 Also ergibt sich für 234: Ausführlich: 1 an Position 7, 1 an Pos. 6, 1 an Pos. 5, 0 an Pos. 4, 1 an Pos. 3, 0 an Pos. 2, 1 an Pos. 1, 0 an Pos. 0 Version 1.0a2 18

19 Algorithmen mit Zahlen Addition, s. oben: Deshalb können wir beim Addieren zweier Zahlen, egal, wie sie repräsentiert sind, diese immer rechtsbündig untereinander schreiben und dann von rechts nach links ziffernweise addieren und einen (immer) EINSTELLIGEN Übertrag (0 ist auch erlaubt) mitführen, der beim nächsten Durchgang hinzu addiert wird Ü = Die 8 binären Rechenregeln für Addition. Die erste Stelle wird in die Übertragszeile eingetragen, die zweite in die Ergebniszeile. Version 1.0a2 19

20 Multiplikation (=13 dezimal) * (=11 dezimal) (1101 mal 1, kein Shift) (1101 mal 1, 1 Links-Shift) (1101 mal 0, 2 Links-Shift) (1101 mal 1, 3 Links-Shift) (=143 dezimal) Ungefähre Kosten: Wenn beide Zahlen n Bits lang sind, dann entstehen n Zwischenreihen mit einer Länge bis zu 2n Bits. Wenn wir jetzt zwei Zeilen addieren und dann das Zwischenergebnis zur nächsten Zeile addieren, dann haben wir ungefähr n-1 mal O(n) Bits zu addieren, in Summe O(n 2 ). Zum O-Kalkül: siehe ATG. Version 1.0a2 20

21 Multiplikation einmal anders Eine Methode, die bereits Al Kwarizmi (der Namensgeber für den Begriff Algorithmus ) im 9. Jahrhundert nach Christi kannte und in einem Buch veröffentlichte: Um zwei Dezimalzahlen x und y zu multiplizieren, schreibe sie zunächst direkt nebeneinander. Wiederhole dann das folgende: Teile die erste Zahl durch 2, runde das Ergebnis ab (abschneiden der Nachkommastelle,5) und verdopple die zweite Zahl fortlaufend. Tue dies, bis die erste Zahl zur 1 wurde. Streiche dann alle Zeilen, in denen die erste Zahl gerade (=even) war und addiere die übrigen Zeilen auf. 11 * Version 1.0a2 21

22 Multiplikation einmal anders 11 * * = (=13) (=26) (=104) (=143) Hier simulieren wir also die normale Multiplikation, allerdings, ohne die Binärrepräsentation der 11 zu kennen (die erzeugen wir aber nebenbei von rechts nach links ) Version 1.0a2 22

23 Multiplikation einmal anders y x 11 * Multiplikationsregel für zwei ganze Zahlen x und y, y >=0: 2(x * xy/2y), falls y gerade x*y = {x + 2(x * xy/2y), falls y ungerade 0, falls y = 0 Hier schneidet xy/2y die Nachkommastelle von y/2 ab Man nennt das die floor-funktion; ceiling gibt es auch, es rundet nach oben auf die nächstgrößere ganze Zahl auf, allerdings nicht, wenn die Ausgangszahl schon ganzzahlig ist. Version 1.0a2 23

24 Multiplikation als Pseudo-Code function multiply(x,y) Input: Zwei ganze n-bit Zahlen x,y mit y >= 0 Output: Das Produkt der Eingabezahlen if y=0: return 0 z = multiply(x, xy/2y) if y is even (gerade): return 2z else: return x + 2z Beispielausführung s. Mitschrieb Aufwand ist übrigens wieder O(n 2 ) Version 1.0a2 24

25 Division Was bedeutet es, eine nicht-negative ganze Zahl x durch eine positive ganze Zahl y, y 0, zu dividieren? Gesucht ist ein Quotient q und ein Rest r, so dass: x = y*q + r Nebenbedingung: 0 <= r < y Beispiel: 17 / 5 = 2*5 + 7? Falsch: r > y 17 / 5 = 3*5 + 2? Korrekt. Version 1.0a2 25

26 Division als Pseudo-Code function divide(x,y) Input: Zwei ganze n-bit Zahlen x,y mit y >= 1 Output: Quotient q und Rest r von x / y if x=0: return (q,r) = (0,0) (q,r) = divide(xx/2y,y) q = 2*q, r = 2*r if x is odd (ungerade): r = r + 1 if r >= y: r = r-y, q = q+1 return (q,r) Beispielausführung s. Mitschrieb Aufwand ist übrigens wieder O(n 2 ) Version 1.0a2 26

27 Modulare Arithmetik Wenn man wiederholt addiert oder multipliziert, können große Zahlen entstehen manchmal umgeht man das, in dem man die Zahl auf 0 zurücksetzt: Beim Zählen der Stunden setzen wir 24 und 0 gleich und beginnen erneut usw. Wir definieren: x modulo N sei der Rest, der bleibt, wenn x durch N geteilt wird, d.h. falls x = q*n+r mit 0<=r<N, dann gilt: x modulo N = r Mit Bezug zu modulo N kann man jetzt sagen: zwei Zahlen x,y sind äquivalent, wenn sie den gleichen Rest beim Teilen durch N erzeugen, also wenn x modulo N = y modulo N, oder, gleichwertig: N teilt (x-y) glatt, also ohne Rest Genau dann schreiben wir auch: x y (mod N) Version 1.0a2 27

28 Modulare Arithmetik Beispiel: (mod 60), denn 253 = 4* , also Rest = 0* , wieder Rest 13 also 253 mod 60 = 13 mod 60 Oder anders: = 240, 240 = 4*6 + 0, also läßt sich (253-13) glatt durch 60 teilen. Das gilt natürlich auch für (13-253) = -240 Version 1.0a2 28

29 Modulare Arithmetik Modulare Arithmetik (z.b. modulo N) limitiert den Wertebereich für die Ergebnisse der arithmetischen Operation, im Beispiel auf [0,..,N-1]. Sobald man an die Grenzen stößt, beginnt man wieder auf der anderen Seite. Man kann aber auch sagen, dass modulare Arithmetik mit allen ganzen Zahlen umgeht, diese allerdings in N sogenannte Äquivalenzklassen unterteilt. Für jede Klasse gilt: {i + kn: k Z} mit 0 <= i < N. Wenn N=3 gilt (also wir modulo 3 rechnen), dann gibt es 3 Äquivalenzklassen (Rest 0) (Rest 1) (Rest 2) Für jedes Zahlenpaar x,x in einer der Klassen gilt: x x (mod N) Aus Sicht der modulo N -Operation sind die Zahlen x und x nicht unterscheidbar. Version 1.0a2 29

30 Modulare Arithmetik Man kann immer noch rechnen (Ersetzungsregel) Falls x x (mod N) und y y (mod N), dann x + y x + y (mod N) x * y x * y (mod N) Praktische Anwendung: sie wollen alle Folgen einer Staffel ihrer Lieblingsserie direkt hintereinander schauen (z.b. House), und sie wollen um Mitternacht damit beginnen. Um wieviel Uhr sind sie fertig? (den Tag ignorieren wir mal ;) Es gibt 25 Episoden, jede dauert 3 Stunden (oops), also sind sie um (25 * 3) mod 24 Uhr fertig. Nun ist 25 1 (mod 24), also gilt mit der Regel oben 1 * 3 = 3 mod 24, also um 3 Uhr am morgen. mit 25 *3 = 75 = 3* wären sie natürlich zum gleichen Ergebnis gekommen sie mußten aber nie die vergleichsweise großen Zahlen 75 und 72 bestimmen. Version 1.0a2 30

31 Modulare Arithmetik Die üblichen Gesetze gelten auch modulo : x + (y + z) (x + y) + z (mod N) x * y y * x (mod N) x (y + z) x * y + y * z Die erste ist die Assoziativitätsregel, die zweite die Kommutativitätsregel, die dritte die Distributivitätsregel. Gemeinsam mit der Ersetzungsregel von der letzten Folie ermöglicht das, dass jedes Zwischenresultat bei modulo - Rechungen durch die Restbildung (also eine modulo - Operation) vereinfacht werden kann. Das werden wir noch nutzen (auch in der Klausur!) Rechnen sie bitte: (278 * 35 * 17 * 78) modulo 13 Version 1.0a2 31

32 Asymmetrische Verschlüsselung Wir brauchen SCHLÜSSELPAARE, z.b. s und s s kann entschlüsseln, was s verschlüsselt und umgekehrt. Wie geht so etwas? Nehmen wir einen sehr einfachen Schlüssel, um das Alphabet A,..,Z zu verschlüsseln: Jedem Buchstaben ist eine Zahl zwischen 0 und 25 zugeordnet, wir nehmen eine sehr einfache Zuordnung: A/0, B/1, C/2, D/3, E/4,, Z/25 Unsere Schlüssel s und s rechnen auf dieser Repräsentation als Zahl: s(x) = (x + 3) modulo 26 s (x) = (x 3) modulo 26 Test: F 5: s(5) = 8, s (8) = 5 Y 25: s(25) = 2, s (2) = 25 Version 1.0a2 32

33 Asymmetrische Verschlüsselung Die Schlüssel: s(x) = (x + 3) modulo 26 s (x) = (x 3) modulo 26 s(gelsenkirchen) = JHOVHQNLUFKHQ s (JHOVHQNLUFKHQ) = GELSENKIRCHEN s (GELSENKIRCHEN) = DBIPBKHFOZEBK s(dbipbkhfozebk) = GELSENKIRCHEN Verschlüsseln sie: INFORMATIK mit s und s X Y Z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z A B C Version 1.0a2 33

34 Asymmetrische Verschlüsselung Die Idee ist klar: Was der eine Schlüssel tut, nimmt der andere zurück Er invertiert jeweils, was der andere Schlüssel tat Wir suchen also ein Paar aus Operation und hierzu inverser Operation und natürlich können die nicht so einfach sein, wie unser Schlüsselpaar gerade Es wird noch ein wenig anderes funktionieren: Wir legen Operationen fest und suchen nach Zahlen (nach 3, um genau zu sein), die dann in den Operationen verwendet werden und deren Effekte sich jeweils invers zu einander verhalten Genau das haben wir eben auch gemacht: Die Operation war Addition. s addierte 3 und s das Inverse von 3 bzgl. der Addition, also -3. Genauso gut hätten wir multiplizieren können (z.b. mit 5 und 1/5, allerdings dann ohne etwa abzuschneiden ;) Wir werden zwei Zahlen nutzen, die beim Potenzieren unter modulo bezüglich einer dritten Zahl die Eigenschaft haben, invers zueinander zu sein. Version 1.0a2 34

Einführung in die Informatik I

Einführung in die Informatik I Einführung in die Informatik I Das Rechnen in Zahlensystemen zur Basis b=2, 8, 10 und 16 Prof. Dr. Nikolaus Wulff Zahlensysteme Neben dem üblichen dezimalen Zahlensystem zur Basis 10 sind in der Informatik

Mehr

Repräsentation von Daten: Binär-, Oktal- u. Hexadezimalcodierung von ganzen und rationalen Zahlen

Repräsentation von Daten: Binär-, Oktal- u. Hexadezimalcodierung von ganzen und rationalen Zahlen Großübung 1: Zahlensysteme Repräsentation von Daten: Binär-, Oktal- u. Hexadezimalcodierung von ganzen und rationalen Zahlen Lehrender: Dr. Klaus Richter, Institut für Informatik; E-Mail: richter@informatik.tu-freiberg.de

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

Grundlagen der Informatik

Grundlagen der Informatik Mag. Christian Gürtler Programmierung Grundlagen der Informatik 2011 Inhaltsverzeichnis I. Allgemeines 3 1. Zahlensysteme 4 1.1. ganze Zahlen...................................... 4 1.1.1. Umrechnungen.................................

Mehr

Technische Informatik - Eine Einführung

Technische Informatik - Eine Einführung Martin-Luther-Universität Halle-Wittenberg Fachbereich Mathematik und Informatik Lehrstuhl für Technische Informatik Prof. P. Molitor Ausgabe: 2005-02-21 Abgabe: 2005-02-21 Technische Informatik - Eine

Mehr

21.10.2013. Vorlesung Programmieren. Agenda. Dezimalsystem. Zahlendarstellung. Zahlendarstellung. Oder: wie rechnen Computer?

21.10.2013. Vorlesung Programmieren. Agenda. Dezimalsystem. Zahlendarstellung. Zahlendarstellung. Oder: wie rechnen Computer? Vorlesung Programmieren Zahlendarstellung Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/pfisterer Agenda Zahlendarstellung Oder: wie rechnen

Mehr

3 Rechnen und Schaltnetze

3 Rechnen und Schaltnetze 3 Rechnen und Schaltnetze Arithmetik, Logik, Register Taschenrechner rste Prozessoren (z.b. Intel 4004) waren für reine Rechenaufgaben ausgelegt 4 4-Bit Register 4-Bit Datenbus 4 Kbyte Speicher 60000 Befehle/s

Mehr

Mathematische Grundlagen der Kryptographie. 1. Ganze Zahlen 2. Kongruenzen und Restklassenringe. Stefan Brandstädter Jennifer Karstens

Mathematische Grundlagen der Kryptographie. 1. Ganze Zahlen 2. Kongruenzen und Restklassenringe. Stefan Brandstädter Jennifer Karstens Mathematische Grundlagen der Kryptographie 1. Ganze Zahlen 2. Kongruenzen und Restklassenringe Stefan Brandstädter Jennifer Karstens 18. Januar 2005 Inhaltsverzeichnis 1 Ganze Zahlen 1 1.1 Grundlagen............................

Mehr

1. Das dekadische Ziffernsystem (Dezimalsystem) Eine ganze Zahl z kann man als Summe von Potenzen zur Basis 10 darstellen:

1. Das dekadische Ziffernsystem (Dezimalsystem) Eine ganze Zahl z kann man als Summe von Potenzen zur Basis 10 darstellen: Zahlensysteme. Das dekadische Ziffernsystem (Dezimalsystem) Eine ganze Zahl z kann man als Summe von Potenzen zur Basis darstellen: n n n n z a a... a a a Dabei sind die Koeffizienten a, a, a,... aus der

Mehr

Zahlensysteme. von Christian Bartl

Zahlensysteme. von Christian Bartl von Inhaltsverzeichnis Inhaltsverzeichnis... 2 1. Einleitung... 3 2. Umrechnungen... 3 2.1. Dezimalsystem Binärsystem... 3 2.2. Binärsystem Dezimalsystem... 3 2.3. Binärsystem Hexadezimalsystem... 3 2.4.

Mehr

2: Zahlentheorie / Restklassen 2.1: Modulare Arithmetik

2: Zahlentheorie / Restklassen 2.1: Modulare Arithmetik Stefan Lucks Diskrete Strukturen (WS 2009/10) 57 2: Zahlentheorie / Restklassen 2.1: Modulare Arithmetik Uhr: Stunden mod 24, Minuten mod 60, Sekunden mod 60,... Rechnerarithmetik: mod 2 w, w {8, 16, 32,

Mehr

Zahlensysteme. Digitale Rechner speichern Daten im Dualsystem 435 dez = 1100110011 binär

Zahlensysteme. Digitale Rechner speichern Daten im Dualsystem 435 dez = 1100110011 binär Zahlensysteme Menschen nutzen zur Angabe von Werten und zum Rechnen vorzugsweise das Dezimalsystem Beispiel 435 Fische aus dem Teich gefischt, d.h. 4 10 2 + 3 10 1 +5 10 0 Digitale Rechner speichern Daten

Mehr

Zahlensysteme Seite -1- Zahlensysteme

Zahlensysteme Seite -1- Zahlensysteme Zahlensysteme Seite -- Zahlensysteme Inhaltsverzeichnis Dezimalsystem... Binärsystem... Umrechnen Bin Dez...2 Umrechnung Dez Bin...2 Rechnen im Binärsystem Addition...3 Die negativen ganzen Zahlen im Binärsystem...4

Mehr

Im Original veränderbare Word-Dateien

Im Original veränderbare Word-Dateien Binärsystem Im Original veränderbare Word-Dateien Prinzipien der Datenverarbeitung Wie du weißt, führen wir normalerweise Berechnungen mit dem Dezimalsystem durch. Das Dezimalsystem verwendet die Grundzahl

Mehr

Einführung in die Programmierung

Einführung in die Programmierung Technische Universität Carolo Wilhelmina zu Brauschweig Institut für rechnergestützte Modellierung im Bauingenierwesen Prof. Dr.-Ing. habil. Manfred Krafczyk Pockelsstraße 3, 38106 Braunschweig http://www.irmb.tu-bs.de

Mehr

Der Zwei-Quadrate-Satz von Fermat

Der Zwei-Quadrate-Satz von Fermat Der Zwei-Quadrate-Satz von Fermat Proseminar: Das BUCH der Beweise Fridtjof Schulte Steinberg Institut für Informatik Humboldt-Universität zu Berlin 29.November 2012 1 / 20 Allgemeines Pierre de Fermat

Mehr

BITte ein BIT. Vom Bit zum Binärsystem. A Bit Of Magic. 1. Welche Werte kann ein Bit annehmen? 2. Wie viele Zustände können Sie mit 2 Bit darstellen?

BITte ein BIT. Vom Bit zum Binärsystem. A Bit Of Magic. 1. Welche Werte kann ein Bit annehmen? 2. Wie viele Zustände können Sie mit 2 Bit darstellen? BITte ein BIT Vom Bit zum Binärsystem A Bit Of Magic 1. Welche Werte kann ein Bit annehmen? 2. Wie viele Zustände können Sie mit 2 Bit darstellen? 3. Gegeben ist der Bitstrom: 10010110 Was repräsentiert

Mehr

Lösung 1. Übungsblatt

Lösung 1. Übungsblatt Fakultät Informatik, Technische Informatik, Professur für Mikrorechner Lösung 1. Übungsblatt Konvertierung von Zahlendarstellungen verschiedener Alphabete und Darstellung negativer Zahlen Stoffverteilung

Mehr

Lenstras Algorithmus für Faktorisierung

Lenstras Algorithmus für Faktorisierung Lenstras Algorithmus für Faktorisierung Bertil Nestorius 9 März 2010 1 Motivation Die schnelle Faktorisierung von Zahlen ist heutzutage ein sehr wichtigen Thema, zb gibt es in der Kryptographie viele weit

Mehr

RSA-Verschlüsselung. von Johannes Becker Gießen 2006/2008

RSA-Verschlüsselung. von Johannes Becker Gießen 2006/2008 RSA-Verschlüsselung von Johannes Becker Gießen 2006/2008 Zusammenfassung Es wird gezeigt, wieso das nach Ronald L. Rivest, Adi Shamir und Leonard Adleman genannte RSA-Krptosstem funktioniert, das mittlerweile

Mehr

2 Einfache Rechnungen

2 Einfache Rechnungen 2 Einfache Rechnungen 2.1 Zahlen Computer, auch bekannt als Rechner, sind sinnvoller eingesetzt, wenn sie nicht nur feste Texte ausgeben, sondern eben auch rechnen. Um das Rechnen mit Zahlen zu verstehen,

Mehr

Modul 114. Zahlensysteme

Modul 114. Zahlensysteme Modul 114 Modulbezeichnung: Modul 114 Kompetenzfeld: Codierungs-, Kompressions- und Verschlüsselungsverfahren einsetzen 1. Codierungen von Daten situationsbezogen auswählen und einsetzen. Aufzeigen, welche

Mehr

Information in einem Computer ist ein

Information in einem Computer ist ein 4 Arithmetik Die in den vorhergehenden Kapiteln vorgestellten Schaltungen haben ausschließlich einfache, Boole sche Signale verarbeitet. In diesem Kapitel wird nun erklärt, wie Prozessoren mit Zahlen umgehen.

Mehr

Ein polyadisches Zahlensystem mit der Basis B ist ein Zahlensystem, in dem eine Zahl x nach Potenzen von B zerlegt wird.

Ein polyadisches Zahlensystem mit der Basis B ist ein Zahlensystem, in dem eine Zahl x nach Potenzen von B zerlegt wird. Zahlensysteme Definition: Ein polyadisches Zahlensystem mit der Basis B ist ein Zahlensystem, in dem eine Zahl x nach Potenzen von B zerlegt wird. In der Informatik spricht man auch von Stellenwertsystem,

Mehr

Zahlensysteme. Zahl 0 0 0 0 0 5 5. Stellenwert Zahl 0 0 0 0 0 50 5. Zahl = 55 +50 +5

Zahlensysteme. Zahl 0 0 0 0 0 5 5. Stellenwert Zahl 0 0 0 0 0 50 5. Zahl = 55 +50 +5 Personal Computer in Betrieb nehmen 1/6 Weltweit setzen die Menschen alltäglich das Zehnersystem für Zählen und Rechnen ein. Die ursprüngliche Orientierung stammt vom Zählen mit unseren 10 Fingern. Für

Mehr

Das Rechnermodell - Funktion

Das Rechnermodell - Funktion Darstellung von Zahlen und Zeichen im Rechner Darstellung von Zeichen ASCII-Kodierung Zahlensysteme Dezimalsystem, Dualsystem, Hexadezimalsystem Darstellung von Zahlen im Rechner Natürliche Zahlen Ganze

Mehr

5. Übung zum G8-Vorkurs Mathematik (WiSe 2011/12)

5. Übung zum G8-Vorkurs Mathematik (WiSe 2011/12) Technische Universität München Zentrum Mathematik PD Dr. hristian Karpfinger http://www.ma.tum.de/mathematik/g8vorkurs 5. Übung zum G8-Vorkurs Mathematik (WiSe 2011/12) Aufgabe 5.1: In einer Implementierung

Mehr

RSA-Verschlüsselung. Verfahren zur Erzeugung der beiden Schlüssel:

RSA-Verschlüsselung. Verfahren zur Erzeugung der beiden Schlüssel: RSA-Verschlüsselung Das RSA-Verfahren ist ein asymmetrisches Verschlüsselungsverfahren, das nach seinen Erfindern Ronald Linn Rivest, Adi Shamir und Leonard Adlemann benannt ist. RSA verwendet ein Schlüsselpaar

Mehr

4. Übungsblatt zu Mathematik für Informatiker I, WS 2003/04

4. Übungsblatt zu Mathematik für Informatiker I, WS 2003/04 4. Übungsblatt zu Mathematik für Informatiker I, WS 2003/04 JOACHIM VON ZUR GATHEN, OLAF MÜLLER, MICHAEL NÜSKEN Abgabe bis Freitag, 14. November 2003, 11 11 in den jeweils richtigen grünen oder roten Kasten

Mehr

Werkstatt Multiplikation Posten: 8-Bit Multiplikation. Informationsblatt für die Lehrkraft. 8-Bit Multiplikation

Werkstatt Multiplikation Posten: 8-Bit Multiplikation. Informationsblatt für die Lehrkraft. 8-Bit Multiplikation Informationsblatt für die Lehrkraft 8-Bit Multiplikation Informationsblatt für die Lehrkraft Thema: Schultyp: Vorkenntnisse: Bearbeitungsdauer: 8-Bit Multiplikation (im Binärsystem) Mittelschule, technische

Mehr

Technische Informatik I

Technische Informatik I Technische Informatik I Vorlesung 2: Zahldarstellung Joachim Schmidt jschmidt@techfak.uni-bielefeld.de Übersicht Geschichte der Zahlen Zahlensysteme Basis / Basis-Umwandlung Zahlsysteme im Computer Binärsystem,

Mehr

Black Box erklärt Zahlensysteme.

Black Box erklärt Zahlensysteme. Black Box erklärt Zahlensysteme. Jeder von uns benutzt aktiv mindestens zwei Zahlenssysteme, oftmals aber so selbstverständlich, dass viele aus dem Stegreif keines mit Namen nennen können. Im europäischen

Mehr

Kapitel 2 Grundlegende Konzepte. Xiaoyi Jiang Informatik I Grundlagen der Programmierung

Kapitel 2 Grundlegende Konzepte. Xiaoyi Jiang Informatik I Grundlagen der Programmierung Kapitel 2 Grundlegende Konzepte 1 2.1 Zahlensysteme Römisches System Grundziffern I 1 erhobener Zeigefinger V 5 Hand mit 5 Fingern X 10 steht für zwei Hände L 50 C 100 Centum heißt Hundert D 500 M 1000

Mehr

Teilbarkeit von natürlichen Zahlen

Teilbarkeit von natürlichen Zahlen Teilbarkeit von natürlichen Zahlen Teilbarkeitsregeln: Die Teilbarkeitsregeln beruhen alle darauf, dass man von einer Zahl einen grossen Teil wegschneiden kann, von dem man weiss, dass er sicher durch

Mehr

Leitung 1 Leitung 2 0 0 0 1 1 0 1 1

Leitung 1 Leitung 2 0 0 0 1 1 0 1 1 1 1 Vorbetrachtungen Wie könnte eine Codierung von Zeichen im Computer realisiert werden? Der Computer arbeitet mit elektrischem Strom, d. h. er kann lediglich zwischen den beiden Zuständen Strom an und

Mehr

Grundlagen der Informatik Übungen 1.Termin

Grundlagen der Informatik Übungen 1.Termin : : : : : : : : : : : : : : : : : : : : : : Grundlagen der Informatik Übungen 1.Termin Dipl.-Phys. Christoph Niethammer Grundlagen der Informatik 2012 1 : : : : : : : : : : : : : : : : : : : : : : Kontakt

Mehr

Das Maschinenmodell Datenrepräsentation

Das Maschinenmodell Datenrepräsentation Das Maschinenmodell Datenrepräsentation Darstellung von Zahlen/Zeichen in der Maschine Bit (0/1) ist die kleinste Informationseinheit Größere Einheiten durch Zusammenfassen mehrerer Bits, z.b. 8 Bit =

Mehr

bereits in A,3 und A.4: Betrachtung von Addierschaltungen als Beispiele für Schaltnetze und Schaltwerke

bereits in A,3 und A.4: Betrachtung von Addierschaltungen als Beispiele für Schaltnetze und Schaltwerke Rechnerarithmetik Rechnerarithmetik 22 Prof. Dr. Rainer Manthey Informatik II Übersicht bereits in A,3 und A.4: Betrachtung von Addierschaltungen als Beispiele für Schaltnetze und Schaltwerke in diesem

Mehr

Grundstrukturen: Speicherorganisation und Zahlenmengen

Grundstrukturen: Speicherorganisation und Zahlenmengen Zahlendarstellung Zahlen und ihre Darstellung in Digitalrechnern Grundstrukturen: Speicherorganisation und Zahlenmengen Linear organisierter Speicher zu einer Adresse gehört ein Speicher mit 3 Bit-Zellen

Mehr

27. Algorithmus der Woche Public-Key-Kryptographie Verschlüsseln mit öffentlichen Schlüsseln

27. Algorithmus der Woche Public-Key-Kryptographie Verschlüsseln mit öffentlichen Schlüsseln 27. Algorithmus der Woche Public-Key-Kryptographie Verschlüsseln mit öffentlichen Schlüsseln Autor Dirk Bongartz, RWTH Aachen Walter Unger, RWTH Aachen Wer wollte nicht schon mal eine Geheimnachricht übermitteln?

Mehr

Grundlagen der Informatik 2 Grundlagen der Digitaltechnik. 1. Zahlensysteme

Grundlagen der Informatik 2 Grundlagen der Digitaltechnik. 1. Zahlensysteme Grundlagen der Informatik 2 Grundlagen der Digitaltechnik 1. Zahlensysteme Prof. Dr.-Ing. Jürgen Teich Dr.-Ing. Christian Haubelt Lehrstuhl für Hardware-Software Software-Co-Design Grundlagen der Digitaltechnik

Mehr

1. Grundlagen der Informatik Zahlensysteme und interne Informationsdarstellung

1. Grundlagen der Informatik Zahlensysteme und interne Informationsdarstellung 1. Grundlagen der Informatik Zahlensysteme und interne Informationsdarstellung Inhalt Grundlagen digitaler Systeme Boolesche Algebra / Aussagenlogik Organisation und Architektur von Rechnern Algorithmen,

Mehr

1 Dualsystem Dualzahlen mit Vorzeichen 4. 2 Hexadezimalsystem Hexadezimalzahlen mit Vorzeichen Oktalsystem 13 4 Zahlenring 14

1 Dualsystem Dualzahlen mit Vorzeichen 4. 2 Hexadezimalsystem Hexadezimalzahlen mit Vorzeichen Oktalsystem 13 4 Zahlenring 14 Zahlensysteme Inhalt: 1 Dualsystem 1 1.1 Dualzahlen mit Vorzeichen 4 2 Hexadezimalsystem 8 2.1 Hexadezimalzahlen mit Vorzeichen 10 3 Oktalsystem 13 4 Zahlenring 14 Definition: Ein polyadisches Zahlensystem

Mehr

Binär- und Hexadezimal-Zahl Arithmetik.

Binär- und Hexadezimal-Zahl Arithmetik. Binär- und Hexadezimal-Zahl Arithmetik. Prof. Dr. Dörte Haftendorn, MuPAD 4, http://haftendorn.uni-lueneburg.de Aug.06 Automatische Übersetzung aus MuPAD 3.11, 24.04.02 Version vom 12.10.05 Web: http://haftendorn.uni-lueneburg.de

Mehr

Inhalt: Binärsystem 7.Klasse - 1 -

Inhalt: Binärsystem 7.Klasse - 1 - Binärsystem 7.Klasse - 1 - Inhalt: Binärarithmetik... 2 Negative Zahlen... 2 Exzess-Darstellung 2 2er-Komplement-Darstellung ( two s complement number ) 2 Der Wertebereich vorzeichenbehafteter Zahlen:

Mehr

Zahlensysteme: Oktal- und Hexadezimalsystem

Zahlensysteme: Oktal- und Hexadezimalsystem 20 Brückenkurs Die gebräuchlichste Bitfolge umfasst 8 Bits, sie deckt also 2 8 =256 Möglichkeiten ab, und wird ein Byte genannt. Zwei Bytes, also 16 Bits, bilden ein Wort, und 4 Bytes, also 32 Bits, formen

Mehr

Daten verarbeiten. Binärzahlen

Daten verarbeiten. Binärzahlen Daten verarbeiten Binärzahlen In Digitalrechnern werden (fast) ausschließlich nur Binärzahlen eingesetzt. Das Binärzahlensystem ist das Stellenwertsystem mit der geringsten Anzahl von Ziffern. Es kennt

Mehr

Zahlensysteme Das 10er-System

Zahlensysteme Das 10er-System Zahlensysteme Übungsblatt für die entfallende Stunde am 22.10.2010. Das 10er-System... 1 Umrechnung in das 10er-System... 2 2er-System... 2 8er-System... 2 16er-System... 3 Umrechnung in andere Zahlensysteme...

Mehr

Kapitel 2. Zahlensysteme, Darstellung von Informationen

Kapitel 2. Zahlensysteme, Darstellung von Informationen Kapitel 2 Zahlensysteme, Darstellung von Informationen 1 , Darstellung von Informationen Ein Computer speichert und verarbeitet mehr oder weniger große Informationsmengen, je nach Anwendung und Leistungsfähigkeit.

Mehr

Einleitung Shor s Algorithmus Anhang. Thomas Neder. 19. Mai 2009

Einleitung Shor s Algorithmus Anhang. Thomas Neder. 19. Mai 2009 19. Mai 2009 Einleitung Problemstellung Beispiel: RSA Teiler von Zahlen und Periode von Funktionen Klassischer Teil Quantenmechanischer Teil Quantenfouriertransformation Algorithmus zur Suche nach Perioden

Mehr

3 Zahlensysteme in der Digitaltechnik

3 Zahlensysteme in der Digitaltechnik 3 Zahlensysteme in der Digitaltechnik System Dezimal Hexadezimal Binär Oktal Basis, Radix 10 16 2 8 Zahlenwerte 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 0 1 2 3 4 5 6 7 8 9 A B C D E F 10 0 1 10 11 100

Mehr

Mit Python von Caesar zur Public-Key Kryptographie

Mit Python von Caesar zur Public-Key Kryptographie Mit Python von Caesar zur Public-Key Kryptographie Thomas Grischott KSS 30. Juni 2008 1 Die Caesarverschiebung Caesar hat Nachrichten an seine Feldherren verschlüsselt, indem er jeden Buchstaben um drei

Mehr

Kapitel 4A: Einschub - Binärcodierung elementarer Datentypen. Einschub: Teile aus Kapitel 2 in Küchlin/Weber: Einführung in die Informatik

Kapitel 4A: Einschub - Binärcodierung elementarer Datentypen. Einschub: Teile aus Kapitel 2 in Küchlin/Weber: Einführung in die Informatik Einschub: Binärcodierung elementarer Datentypen Teile aus Kapitel 2 in Küchlin/Weber: Einführung in die Informatik Unterscheide Zahl-Wert Zahl-Bezeichner Zu ein- und demselben Zahl-Wert kann es verschiedene

Mehr

Aufgaben des MSG-Zirkels 10b Schuljahr 2007/2008

Aufgaben des MSG-Zirkels 10b Schuljahr 2007/2008 Aufgaben des MSG-Zirkels 10b Schuljahr 2007/2008 Alexander Bobenko und Ivan Izmestiev Technische Universität Berlin 1 Hausaufgaben vom 12.09.2007 Zahlentheorie 1 Aufgabe 1.1 Berechne die (quadratischen)

Mehr

anschauen würdest. Meine Mailadresse lautet wenn du Fragen hast, kannst du mir eine schreiben.

anschauen würdest. Meine Mailadresse lautet wenn du Fragen hast, kannst du mir eine  schreiben. 15.Übungsblatt Klasse 5a Ausgabe am 17.03.2004 Abgabe am..2004 im Mathematikunterricht Nicht alle Erklärungen und Aufgaben, die im Internet zur Verfügung stehen, werden in gedruckter Form in den Übungsblättern

Mehr

Elementare Zahlentheorie (Version 1)

Elementare Zahlentheorie (Version 1) Elementare Zahlentheorie (Version (Winter Semester, 2005-6 Zur Notation N ist die Menge der natürlichen Zahlen:, 2, 3, 4, 5,... und so weiter. Z ist die Menge aller ganzen Zahlen:..., 4, 3, 2,, 0,, 2,

Mehr

Programmierkurs Java

Programmierkurs Java Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE16-Rekursion (Stand 09.12.2011) Aufgabe 1: Implementieren Sie in Java ein Programm, das solange einzelne Zeichen vom Terminal einliest, bis ein #-Zeichen

Mehr

Daten, Informationen, Kodierung. Binärkodierung

Daten, Informationen, Kodierung. Binärkodierung Binärkodierung Besondere Bedeutung der Binärkodierung in der Informatik Abbildung auf Alphabet mit zwei Zeichen, in der Regel B = {0, 1} Entspricht den zwei möglichen Schaltzuständen in der Elektronik:

Mehr

Das RSA-Verfahren. Armin Litzel. Proseminar Kryptographische Protokolle SS 2009

Das RSA-Verfahren. Armin Litzel. Proseminar Kryptographische Protokolle SS 2009 Das RSA-Verfahren Armin Litzel Proseminar Kryptographische Protokolle SS 2009 1 Einleitung RSA steht für die drei Namen Ronald L. Rivest, Adi Shamir und Leonard Adleman und bezeichnet ein von diesen Personen

Mehr

2 Darstellung von Zahlen und Zeichen

2 Darstellung von Zahlen und Zeichen 2.1 Analoge und digitale Darstellung von Werten 79 2 Darstellung von Zahlen und Zeichen Computer- bzw. Prozessorsysteme führen Transformationen durch, die Eingaben X auf Ausgaben Y abbilden, d.h. Y = f

Mehr

Primzahlen und RSA-Verschlüsselung

Primzahlen und RSA-Verschlüsselung Primzahlen und RSA-Verschlüsselung Michael Fütterer und Jonathan Zachhuber 1 Einiges zu Primzahlen Ein paar Definitionen: Wir bezeichnen mit Z die Menge der positiven und negativen ganzen Zahlen, also

Mehr

Grundlagen der Informatik Übungen 1. Termin Zahlensysteme

Grundlagen der Informatik Übungen 1. Termin Zahlensysteme Grundlagen der Informatik Übungen 1. Termin Zahlensysteme M. Sc. Yevgen Dorozhko dorozhko@hlrs.de Kurzvorstellung M. Sc. Yevgen Dorozhko Ausbildung: 2008: M. Sc. Systemprogrammieren, Nationale technische

Mehr

Teil II. Schaltfunktionen

Teil II. Schaltfunktionen Teil II Schaltfunktionen 1 Teil II.1 Zahlendarstellung 2 b-adische Systeme Sei b IN mit b > 1 und E b = {0, 1,..., b 1} (Alphabet). Dann ist jede Fixpunktzahl z (mit n Vorkomma und k Nachkommastellen)

Mehr

Zur Universalität der Informatik. Gott ist ein Informatiker. Die Grundordnung der Welt läßt sich mathematisch formulieren:

Zur Universalität der Informatik. Gott ist ein Informatiker. Die Grundordnung der Welt läßt sich mathematisch formulieren: Daten und ihre Codierung Seite: 1 Zur Universalität der Informatik Gott ist ein Informatiker Die Grundordnung der Welt läßt sich mathematisch formulieren: Naturgesetze, wie wir sie in der Physik, Chemie

Mehr

GF(2 2 ) Beispiel eines Erweiterungskörpers (1)

GF(2 2 ) Beispiel eines Erweiterungskörpers (1) GF(2 2 ) Beispiel eines Erweiterungskörpers (1) Im Kapitel 2.1 wurde bereits gezeigt, dass die endliche Zahlenmenge {0, 1, 2, 3} q = 4 nicht die Eigenschaften eines Galoisfeldes GF(4) erfüllt. Vielmehr

Mehr

Binäre Gleitkommazahlen

Binäre Gleitkommazahlen Binäre Gleitkommazahlen Was ist die wissenschaftliche, normalisierte Darstellung der binären Gleitkommazahl zur dezimalen Gleitkommazahl 0,625? Grundlagen der Rechnerarchitektur Logik und Arithmetik 72

Mehr

Q(n) = n 0 +n 1 +n 2 +...+n k.

Q(n) = n 0 +n 1 +n 2 +...+n k. 25 2 Kongruenzen Mit Hilfe der hier definierten Kongruenz können Aussagen über Teilbarkeit einfacher formuliert und bewiesen werden, und man erhält eine Differenzierung der Zahlen, die bezüglich einer

Mehr

Noch für heute: primitive Datentypen in JAVA. Primitive Datentypen. Pseudocode. Dezimal-, Binär- und Hexadezimalsystem. der logische Typ boolean

Noch für heute: primitive Datentypen in JAVA. Primitive Datentypen. Pseudocode. Dezimal-, Binär- und Hexadezimalsystem. der logische Typ boolean 01.11.05 1 Noch für heute: 01.11.05 3 primitie Datentypen in JAVA Primitie Datentypen Pseudocode Name Speichergröße Wertgrenzen boolean 1 Byte false true char 2 Byte 0 65535 byte 1 Byte 128 127 short 2

Mehr

Advanced Encryption Standard. Copyright Stefan Dahler 20. Februar 2010 Version 2.0

Advanced Encryption Standard. Copyright Stefan Dahler 20. Februar 2010 Version 2.0 Advanced Encryption Standard Copyright Stefan Dahler 20. Februar 2010 Version 2.0 Vorwort Diese Präsentation erläutert den Algorithmus AES auf einfachste Art. Mit Hilfe des Wissenschaftlichen Rechners

Mehr

Effiziente Algorithmen und Datenstrukturen I. Kapitel 10: Lineare Algebra

Effiziente Algorithmen und Datenstrukturen I. Kapitel 10: Lineare Algebra Effiziente Algorithmen und Datenstrukturen I Kapitel 10: Lineare Algebra Christian Scheideler WS 2008 19.02.2009 Kapitel 10 1 Überblick Notation Arithmetik auf großen Zahlen (Addition und Multiplikation)

Mehr

11/2/05. Darstellung von Text. ASCII-Code. American Standard Code for Information Interchange. Parity-Bit. 7 Bit pro Zeichen genügen (2 7 = 128)

11/2/05. Darstellung von Text. ASCII-Code. American Standard Code for Information Interchange. Parity-Bit. 7 Bit pro Zeichen genügen (2 7 = 128) Darstellung von Text ASCII-Code 7 Bit pro Zeichen genügen (2 7 = 128) 26 Kleinbuchstaben 26 Großbuchstaben 10 Ziffern Sonderzeichen wie '&', '!', ''' nicht druckbare Steuerzeichen, z.b. - CR (carriage

Mehr

11/2/05. Darstellung von Text. ASCII-Code. American Standard Code for Information Interchange. ASCII-Tabelle. Parity-Bit. Länderspezifische Zeichen

11/2/05. Darstellung von Text. ASCII-Code. American Standard Code for Information Interchange. ASCII-Tabelle. Parity-Bit. Länderspezifische Zeichen Darstellung von Text ASCII-Code 7 Bit pro Zeichen genügen ( 7 = 18) 6 Kleinbuchstaben 6 Großbuchstaben 10 Ziffern Sonderzeichen wie '&', '!', ''' nicht druckbare Steuerzeichen, z.b. - CR (carriage return

Mehr

Das RSA-Verschlüsselungsverfahren 1 Christian Vollmer

Das RSA-Verschlüsselungsverfahren 1 Christian Vollmer Das RSA-Verschlüsselungsverfahren 1 Christian Vollmer Allgemein: Das RSA-Verschlüsselungsverfahren ist ein häufig benutztes Verschlüsselungsverfahren, weil es sehr sicher ist. Es gehört zu der Klasse der

Mehr

1. Klassische Kryptographie: Caesar-Verschlüsselung

1. Klassische Kryptographie: Caesar-Verschlüsselung 1. Klassische Kryptographie: Caesar-Verschlüsselung Das Bestreben, Botschaften für andere unlesbar zu versenden, hat zur Entwicklung einer Wissenschaft rund um die Verschlüsselung von Nachrichten geführt,

Mehr

Computergrundlagen Boolesche Logik, Zahlensysteme und Arithmetik

Computergrundlagen Boolesche Logik, Zahlensysteme und Arithmetik Computergrundlagen Boolesche Logik, Zahlensysteme und Arithmetik Institut für Computerphysik Universität Stuttgart Wintersemester 2012/13 Wie rechnet ein Computer? Ein Mikroprozessor ist ein Netz von Transistoren,

Mehr

Computeralgebra in der Lehre am Beispiel Kryptografie

Computeralgebra in der Lehre am Beispiel Kryptografie Kryptografie Grundlagen RSA KASH Computeralgebra in der Lehre am Beispiel Kryptografie Institut für Mathematik Technische Universität Berlin Kryptografie Grundlagen RSA KASH Überblick Kryptografie mit

Mehr

Mikro-Controller-Pass 1

Mikro-Controller-Pass 1 Seite: 1 Zahlensysteme im Selbststudium Inhaltsverzeichnis Vorwort Seite 3 Aufbau des dezimalen Zahlensystems Seite 4 Aufbau des dualen Zahlensystems Seite 4 Aufbau des oktalen Zahlensystems Seite 5 Aufbau

Mehr

3.2 Binäre Suche. Usr/local/www/ifi/fk/menschen/schmid/folien/infovk.ppt 1

3.2 Binäre Suche. Usr/local/www/ifi/fk/menschen/schmid/folien/infovk.ppt 1 3.2 Binäre Suche Beispiel 6.5.1: Intervallschachtelung (oder binäre Suche) (Hier ist n die Anzahl der Elemente im Feld!) Ein Feld A: array (1..n) of Integer sei gegeben. Das Feld sei sortiert, d.h.: A(i)

Mehr

Repräsentation von Daten Binärcodierung ganzer Zahlen

Repräsentation von Daten Binärcodierung ganzer Zahlen Kapitel 3: Repräsentation von Daten Binärcodierung ganzer Zahlen Einführung in die Informatik Wintersemester 2007/08 Prof. Bernhard Jung Übersicht Repräsentation von Daten im Computer (dieses und nächstes

Mehr

Entwicklung der Asymmetrischen Kryptographie und deren Einsatz

Entwicklung der Asymmetrischen Kryptographie und deren Einsatz Entwicklung der Asymmetrischen Kryptographie und deren Einsatz Peter Kraml, 5a hlw Facharbeit Mathematik Schuljahr 2013/14 Caesar-Verschlüsselung Beispiel Verschiebung der Buchstaben im Alphabet sehr leicht

Mehr

Midterm-Klausur Technische Grundlagen der Informatik

Midterm-Klausur Technische Grundlagen der Informatik Midterm-Klausur Technische Grundlagen der Informatik Prof. Dr. Arndt Bode Wintersemester 2002/2003 7. Dezember 2002 Name: Vorname: Matrikelnummer: Hörsaal: Platz: Unterschrift: Ergebnis: Aufgabe Punkte

Mehr

Prinzip 8 der von-neumann Architektur: (8) Alle Daten werden binär kodiert

Prinzip 8 der von-neumann Architektur: (8) Alle Daten werden binär kodiert Binäre Repräsentation von Information Bits und Bytes Binärzahlen ASCII Ganze Zahlen Rationale Zahlen Gleitkommazahlen Motivation Prinzip 8 der von-neumann Architektur: (8) Alle Daten werden binär kodiert

Mehr

Grundlagen der Technischen Informatik. 4. Übung

Grundlagen der Technischen Informatik. 4. Übung Grundlagen der Technischen Informatik 4. Übung Christian Knell Keine Garantie für Korrekt-/Vollständigkeit 4. Übungsblatt Themen Aufgabe 1: Aufgabe 2: Polyadische Zahlensysteme Gleitkomma-Arithmetik 4.

Mehr

5.1 Drei wichtige Beweistechniken... 55 5.2 Erklärungen zu den Beweistechniken... 56

5.1 Drei wichtige Beweistechniken... 55 5.2 Erklärungen zu den Beweistechniken... 56 5 Beweistechniken Übersicht 5.1 Drei wichtige Beweistechniken................................. 55 5. Erklärungen zu den Beweistechniken............................ 56 Dieses Kapitel ist den drei wichtigsten

Mehr

Zahlensysteme. Formale Methoden der Informatik WiSe 2010/2011 Folie 1 (von 71)

Zahlensysteme. Formale Methoden der Informatik WiSe 2010/2011 Folie 1 (von 71) Zahlensysteme Formale Methoden der Informatik WiSe / Folie (von 7) Teil I: Zahlensysteme. Einführung und Zahlensysteme. Zahlensysteme / Algorithmik. Zahlendarstellung im Rechner. Gleitkommazahlen / Fließpunktzahlen

Mehr

Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2015/16. Vorbereitende Aufgaben. Präsenzaufgaben

Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2015/16. Vorbereitende Aufgaben. Präsenzaufgaben Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2015/16 Fakultät für Informatik Lehrstuhl 14 Lars Hildebrand, Marcel Preuß, Iman Kamehkhosh, Marc Bury, Diana Howey Übungsblatt

Mehr

Kapiteltests zum Leitprogramm Binäre Suchbäume

Kapiteltests zum Leitprogramm Binäre Suchbäume Kapiteltests zum Leitprogramm Binäre Suchbäume Björn Steffen Timur Erdag überarbeitet von Christina Class Binäre Suchbäume Kapiteltests für das ETH-Leitprogramm Adressaten und Institutionen Das Leitprogramm

Mehr

Einführung in Computer Microsystems

Einführung in Computer Microsystems Einführung in Computer Microsystems Kapitel 9 Entwurf eines eingebetteten Systems für Anwendungen in der IT-Sicherheit Prof. Dr.-Ing. Sorin A. Huss Fachbereich Informatik Integrierte Schaltungen und Systeme

Mehr

ax 2 + bx + c = 0, (4.1)

ax 2 + bx + c = 0, (4.1) Kapitel 4 Komplexe Zahlen Wenn wir uns auf die reellen Zahlen beschränken, ist die Operation des Wurzelziehens (also die Umkehrung der Potenzierung) nicht immer möglich. Zum Beispiel können wir nicht die

Mehr

Stefan Lucks Krypto und Mediensicherheit (2009) 4: Stromchiffren

Stefan Lucks Krypto und Mediensicherheit (2009) 4: Stromchiffren 4: Stromchiffren Zwei Grundbausteine der symmetrischen Kryptographie: Stromchiffren Verschlüsseln beliebig langer Klartexte, interner Zustand Blockchiffren Verschlüsseln von Blocks einer festen Größe,

Mehr

Computerarithmetik ( )

Computerarithmetik ( ) Anhang A Computerarithmetik ( ) A.1 Zahlendarstellung im Rechner und Computerarithmetik Prinzipiell ist die Menge der im Computer darstellbaren Zahlen endlich. Wie groß diese Menge ist, hängt von der Rechnerarchitektur

Mehr

Eine Logikschaltung zur Addition zweier Zahlen

Eine Logikschaltung zur Addition zweier Zahlen Eine Logikschaltung zur Addition zweier Zahlen Grundlegender Ansatz für die Umsetzung arithmetischer Operationen als elektronische Schaltung ist die Darstellung von Zahlen im Binärsystem. Eine Logikschaltung

Mehr

Leitprogramm Bubblesort

Leitprogramm Bubblesort Leitprogramm Bubblesort Dr. Rainer Hauser Inhalt 1 Übersicht...1 2 Input-Block I: Der Sortieralgorithmus Bubblesort...2 3 Input-Block II: Die Effizienz von Bubblesort...6 4 Zusammenfassung...8 5 Lernkontrolle...9

Mehr

Wiederholung Symmetrische Verschlüsselung klassische Verfahren: Substitutionschiffren Transpositionschiffren Vigenère-Chiffre One-Time-Pad moderne

Wiederholung Symmetrische Verschlüsselung klassische Verfahren: Substitutionschiffren Transpositionschiffren Vigenère-Chiffre One-Time-Pad moderne Wiederholung Symmetrische Verschlüsselung klassische Verfahren: Substitutionschiffren Transpositionschiffren Vigenère-Chiffre One-Time-Pad moderne Verfahren: DES (Feistel-Chiffre) mehrfache Wiederholung

Mehr

Probabilistische Primzahlensuche. Marco Berger

Probabilistische Primzahlensuche. Marco Berger Probabilistische Primzahlensuche Marco Berger April 2015 Inhaltsverzeichnis Inhaltsverzeichnis 1 Einleitung 4 1.1 Definition Primzahl................................ 4 1.2 Primzahltest...................................

Mehr

1. 4-Bit Binärzahlen ohne Vorzeichen 2. 4-Bit Binärzahlen mit Vorzeichen 3. 4-Bit Binärzahlen im 2er Komplement 4. Rechnen im 2er Komplement

1. 4-Bit Binärzahlen ohne Vorzeichen 2. 4-Bit Binärzahlen mit Vorzeichen 3. 4-Bit Binärzahlen im 2er Komplement 4. Rechnen im 2er Komplement Kx Binäre Zahlen Kx Binäre Zahlen Inhalt. Dezimalzahlen. Hexadezimalzahlen. Binärzahlen. -Bit Binärzahlen ohne Vorzeichen. -Bit Binärzahlen mit Vorzeichen. -Bit Binärzahlen im er Komplement. Rechnen im

Mehr

Lösung zur Klausur zu Krypographie Sommersemester 2005

Lösung zur Klausur zu Krypographie Sommersemester 2005 Lösung zur Klausur zu Krypographie Sommersemester 2005 1. Bestimmen Sie die zwei letzten Ziffern der Dezimaldarstellung von 12 34 Es gilt: 12 34 = 12 32+2 = 12 32 12 2 = 12 (25) 12 2 = ((((12 2 ) 2 ) 2

Mehr

Informationsdarstellung im Rechner

Informationsdarstellung im Rechner Informationsdarstellung im Rechner Dr. Christian Herta 15. Oktober 2005 Einführung in die Informatik - Darstellung von Information im Computer Dr. Christian Herta Darstellung von Information im Computer

Mehr

Homomorphe Verschlüsselung

Homomorphe Verschlüsselung Homomorphe Verschlüsselung Sophie Friedrich, Nicholas Höllermeier, Martin Schwaighofer 11. Juni 2012 Inhaltsverzeichnis Einleitung Motivation Mathematische Definitionen Wiederholung Gruppe Ring Gruppenhomomorphisums

Mehr

Klausur "Informationstechnische Grundlagen" WS 2012/2013

Klausur Informationstechnische Grundlagen WS 2012/2013 PD Dr. J. Reischer 11.02.2013 Klausur "Informationstechnische Grundlagen" WS 2012/2013 Nachname, Vorname Abschluss (BA, MA, FKN etc.) Matrikelnummer, Semester Versuch (1/2/3) Bitte füllen Sie zuerst den

Mehr