Grundlagen der Technischen Informatik 3. Übung Christian Knell Keine Garantie für Korrekt-/Vollständigkeit
3. Übungsblatt Themen Aufgabe 1: Aufgabe 2: Aufgabe 3: Aufgabe 4: Aufgabe 5: Zahlendarstellungen I Zahlendarstellungen II Binärarithmetik Zahlenkonversion BCD-Arithmetik
3. Übungsblatt Aufgabe 1 a) Beschreiben Sie den allgemeinen Aufbau einer Ganzzahl N in einem polyadischen Zahlensystem. N = d n-1 R n-1 + + d 1 R 1 + d 0 R 0 R: Basis R i : Wertigkeit d i : Ziffer der Stelle i Z: 0,, R-1
3. Übungsblatt Aufgabe 1 b) Welche ist die größte mit n Bits darstellbare Dezimalzahl? 2 n - 1
3. Übungsblatt Aufgabe 1 c) Geben Sie den Wertebereich einer n Bit breiten Zahl N = d n-1 d n-2 d 1 d 0 in (I) Vorzeichen / Betrags-, (II) 1er- und (III) 2er-Komplementdarstellung an und nennen Sie die Formel für die Berechnung des Zahlenwertes. Darstellung Wertebereich Zahlenwert I [-2 n-1 + 1, 2 n-1-1] II [-2 n-1 + 1, 2 n-1-1] III [-2 n-1, 2 n-1-1] d dn 1 ( 1) n 2 i 0 d i 2 n 2 n 1 i ( d 2 ) d 2 n 1 n 1 i i 0 n 2 n 1 i 2 ) 2 1 i i 0 ( d n d i
3. Übungsblatt Aufgabe 2 Gegeben seien die Zahlen: 2 10, 64 10, 255 10, -254 10, -32 10. Stellen Sie diese Zahlen jeweils in (I) Vorzeichen / Betrags-, (II) 1er-Komplement- und (II) 2er-Komplementdarstellung dar. (I) Vorzeichen / Betragsdarstellung: 1. Umwandeln der Dezimalzahl in Binärzahl 2. Dezimalzahl < 0: Voranstellen einer 1 3. Dezimalzahl > 0: Voranstellen einer 0
3. Übungsblatt Aufgabe 2 Gegeben seien die Zahlen: 2 10, 64 10, 255 10, -254 10, -32 10. Stellen Sie diese Zahlen jeweils in (I) Vorzeichen / Betrags-, (II) 1er-Komplement- und (II) 2er-Komplementdarstellung dar. (I) Vorzeichen / Betragsdarstellung: 2 10 = 2 1 = (0) 10 2 64 10 = 2 6 = (0) 100 0000 2 255 10 = 2 7 + 2 6 + 2 5 + 2 4 + 2 3 + 2 2 + 2 1 + 2 0 = (0) 1111 1111 2 254 10 = 2 7 + 2 6 + 2 5 + 2 4 + 2 3 + 2 2 + 2 1 = (0) 1111 1110 2 => -254 10 = (1) 1111 1110 2 32 10 = 2 5 = (0) 10 0000 2 => -32 10 = (1) 10 0000 2
3. Übungsblatt Aufgabe 2 Gegeben seien die Zahlen: 2 10, 64 10, 255 10, -254 10, -32 10. Stellen Sie diese Zahlen jeweils in (I) Vorzeichen / Betrags-, (II) 1er-Komplement- und (II) 2er-Komplementdarstellung dar. (II) 1er-Komplement: 1. Umwandeln der Dezimalzahl in Binärzahl 2. Führende 0 an den Beginn der Binärzahl 3. Falls Dezimalzahl < 0 invertieren der Bits der Binärzahl
3. Übungsblatt Aufgabe 2 Gegeben seien die Zahlen: 2 10, 64 10, 255 10, -254 10, -32 10. Stellen Sie diese Zahlen jeweils in (I) Vorzeichen / Betrags-, (II) 1er-Komplement- und (II) 2er-Komplementdarstellung dar. (II) 1er-Komplement: 2 10 = 2 1 = 010 2 64 10 = 2 6 = 0100 0000 2 255 10 = 2 7 + 2 6 + 2 5 + 2 4 + 2 3 + 2 2 + 2 1 + 2 0 = 0 1111 1111 2 254 10 = 2 7 + 2 6 + 2 5 + 2 4 + 2 3 + 2 2 + 2 1 = 0 1111 1110 2 => -254 10 = 1 0000 0001 2 32 10 = 2 5 = 010 0000 2 => -32 10 = 101 1111 2
3. Übungsblatt Aufgabe 2 Gegeben seien die Zahlen: 2 10, 64 10, 255 10, -254 10, -32 10. Stellen Sie diese Zahlen jeweils in (I) Vorzeichen / Betrags-, (II) 1er-Komplement- und (II) 2er-Komplementdarstellung dar. (III) 2er-Komplement: 1. Dezimalzahl > 0: 2er-Komplement = 1er-Komplement 2. Dezimalzahl < 0: 2er-Komplement = 1er-Komplement + 1
3. Übungsblatt Aufgabe 2 Gegeben seien die Zahlen: 2 10, 64 10, 255 10, -254 10, -32 10. Stellen Sie diese Zahlen jeweils in (I) Vorzeichen / Betrags-, (II) 1er-Komplement- und (II) 2er-Komplementdarstellung dar. (III) 2er-Komplement: 2 10 = 2 1 = 010 2 64 10 = 2 6 = 0100 0000 2 255 10 = 2 7 + 2 6 + 2 5 + 2 4 + 2 3 + 2 2 + 2 1 + 2 0 = 0 1111 1111 2 254 10 = 2 7 + 2 6 + 2 5 + 2 4 + 2 3 + 2 2 + 2 1 = 0 1111 1110 2 => -254 10 = 1 0000 0001 2 => -254 10 = 1 0000 0010 2 32 10 = 2 5 = 010 0000 2 => -32 10 = 101 1111 2 => -32 10 = 110 0000 2
3. Übungsblatt Aufgabe 2 Gegeben seien die Zahlen: 2 10, 64 10, 255 10, -254 10, -32 10. Stellen Sie diese Zahlen jeweils in (I) Vorzeichen / Betrags-, (II) 1er-Komplement- und (II) 2er-Komplementdarstellung dar. Dezimal Vorzeichen/Betrag 1er-Komplement 2er-Komplement 2 (0) 10 010 010 64 (0) 100 0000 0100 0000 0100 0000 255 (0) 1111 1111 0 1111 1111 0 1111 1111-254 (1) 1111 1110 1 0000 0001 1 0000 0010-32 (1) 10 0000 101 1111 110 0000
3. Übungsblatt Aufgabe 3 Führen Sie die folgenden Berechnungen im angegebenen Zahlensystem aus, ohne die Zahlen ins Dezimalsystem umzuwandeln: a) Multiplikation im Binärsystem: 11101010 2 * 1011 2 = 101000001110 2 1 1 1 0 1 0 1 0 * 1 0 1 1 1 1 1 0 1 0 1 0 + 0 0 0 0 0 0 0 0 + 1 1 1 0 1 0 1 0 + 1 1 1 0 1 0 1 0 1 1 1 1 1 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 1 1 0
3. Übungsblatt Aufgabe 3 Führen Sie die folgenden Berechnungen im angegebenen Zahlensystem aus, ohne die Zahlen ins Dezimalsystem umzuwandeln: b) Subtraktion im Binärsystem: 11010010 2 10110101 2 01110110 2 10011001 2
3. Übungsblatt Aufgabe 3 b) Subtraktion im Binärsystem: 11010010 2 10110101 2 0 0 1 1 0 1 0 0 1 0 Minuend - 0 0 1 0 1 1 0 1 0 1 Subtrahend 1 1 0 1 0 0 1 0 1 0 Subtrahend (B-1) + 0 0 0 0 0 0 0 0 0 1 1 1 0 1 0 0 1 0 1 1 Subtrahend (B-2) + 0 0 1 1 0 1 0 0 1 0 Minuend 1 1 1 1 0 0 0 0 1 0 0 = 1 0 0 0 0 0 1 1 1 0 1 Übertrag = 1 0 0 0 0 0 1 1 1 0 1 => Ergebnis positiv
3. Übungsblatt Aufgabe 3 c) Subtraktion im Binärsystem: 01110110 2 10011001 2 0 0 0 1 1 1 0 1 1 0 Minuend - 0 0 1 0 0 1 1 0 0 1 Subtrahend 1 1 0 1 1 0 0 1 1 0 Subtrahend (B-1) + 0 0 0 0 0 0 0 0 0 1 1 1 0 1 1 0 0 1 1 1 Subtrahend (B-2) + 0 0 0 1 1 1 0 1 1 0 Minuend 0 0 0 1 1 0 0 1 1 0 0 = 0 1 1 1 1 0 1 1 1 0 1 Übertrag = 0 0 0 0 0 1 0 0 0 1 0 => Ergebnis negativ
3. Übungsblatt Aufgabe 3 c) Prozessoren arbeiten mit einer endlichen Wortbreite, was den darstellbaren Zahlenbereich einschränkt. Welche Auswirkungen kann dies bei der Subtraktion und Addition haben? Es kann zu falschen Ergebnissen kommen, falls der darstellbare Zahlenbereich verlassen wird.
3. Übungsblatt Aufgabe 3 c) Prozessoren arbeiten mit einer endlichen Wortbreite, was den darstellbaren Zahlenbereich einschränkt. Können Sie sich vorstellen, wie diese Probleme in der Praxis gelöst werden? Im Prozessor existiert ein Carry Flag, welches den Übertrag von der n-ten in die (n+1)-te Stelle enthält und vom Programmierer explizit überprüft und verarbeitet werden kann.
3. Übungsblatt Aufgabe 3 c) Prozessoren arbeiten mit einer endlichen Wortbreite, was den darstellbaren Zahlenbereich einschränkt. Können Sie sich vorstellen, wie diese Probleme in der Praxis gelöst werden? Bei der Darstellung im 2er-Komplement kann zu einem arithmetischen Überlauf kommen, bei dem das Vorzeichen des Ergebnisses falsch ist. Hierfür existiert im Prozessor das Overflow Flag.
3. Übungsblatt Aufgabe 4 a) Konvertieren Sie die Hexadezimalzahl AC 16 mit sukzessiver Division unter ausschließlicher Verwendung der angegebenen Zahlensysteme ins Quintalsystem: Anmerkungen: I. Konvertierung von großem auf kleines Zahlensystem: sukzessive Division II. Konvertierung von kleinem auf großes Zahlensystem: Horner-Schema oder sukzessive Division bei sukzessiver Division: Umwandlung der großen Basis in kleines Zahlensystem
3. Übungsblatt Aufgabe 4 a) (AC) 16 = (?) 5 AC : 5 = 22 2 22 : 5 = 6 4 6 : 5 = 1 1 1 : 5 = 0 1 (AC) 16 = (1142) 5
3. Übungsblatt Aufgabe 4 b) Konvertieren Sie die Binärzahl 1010 1100 2 unter ausschließlicher Verwendung der angegebenen Zahlensysteme ins Ternärsystem: Horner-Schema: von links nach rechts
3. Übungsblatt Aufgabe 4 b) (1010 1100) 2 = (?) 3 1 * 2 = 2 + 0 2 * 2 = 11 + 1 12 * 2 = 101 + 0 101 * 2 = 202 + 1 210 * 2 = 1120 + 1 1121 * 2 = 10012 + 0 10012 * 2 = 20101 + 0 = 20101 10101100 2 = 20101 3
3. Übungsblatt Aufgabe 4 c) Konvertieren Sie die Dezimalzahl 34,28125 10 ins Binärformat. Verwenden Sie für die Nachkommastellen maximal 4 Bit. 34 : 2 = 17 0 17 : 2 = 8 1 8 : 2 = 4 0 4 : 2 = 2 0 2 : 2 = 1 0 1 : 2 = 0 1 34 10 = 100010 2
3. Übungsblatt Aufgabe 4 c) Konvertieren Sie die Dezimalzahl 34,28125 10 ins Binärformat. Verwenden Sie für die Nachkommastellen maximal 4 Bit. 0,28125 * 2 = 0,5625 0 0,5625 * 2 = 1,125 1 0,125 * 2 = 0,25 0 0,25 * 2 = 0,5 0 0,28125 10 0,0100 2
3. Übungsblatt Aufgabe 4 c) Konvertieren Sie die Dezimalzahl 34,28125 10 ins Binärformat. Verwenden Sie für die Nachkommastellen maximal 4 Bit. 34,28125 10 100010,0100 2
3. Übungsblatt Aufgabe 4 d) Base64 und Latin-1 sind zwei Codierungen zur Übermittlung von Nachrichten, deren Codetabellen auf den Übungsblättern dargestellt sind (graue Unterlegung bedeutet nicht belegt). Beide Codierungen lassen sich als polyadische Zahlensysteme auffassen. Wandeln Sie mit diesem Wissen die mit Latin-1 codierte Nachricht 1¾Å nach Base64 um. Base64: Basis 64 = 2 6 Latin-1: Basis 256 = 2 8 1¾Å Latin-1 := 31 BE C5 = 00110001 10111110 11000101 Mb7F Base64 := 0C 1B 3B 05 = 001100 011011 111011 000101
3. Übungsblatt Aufgabe 5 Addieren Sie die beiden BCD-Zahlen 0111 0111 0101 BCD und 0100 1001 1000 BCD ohne das BCD-System zu verlassen. Geben Sie den vollständigen Rechenweg an und konvertieren Sie das Ergebnis zusätzlich ins Dezimalsystem. BCD = Binary Coded Decimals 4 Bits entsprechen jeweils einer Dezimalstelle Schrittweise Addition der einzelnen Dezimalstellen Ergebnis > 9: Korrekturaddition mit 6 10 (0110 2 )
3. Übungsblatt Aufgabe 5 Addieren Sie 0111 0111 0101 BCD und 0100 1001 1000 BCD : 0 1 0 1 + 1 0 0 0 Erste Dezimalstelle = 1 1 0 1 Pseudotetrade + 0 1 1 0 Korrekturaddition = 1 0 0 1 1 0 1 1 1 + 1 0 0 1 Zweite Dezimalstelle = 1 0 0 0 1 Überlauf + 0 1 1 0 Korrekturaddition = 1 0 1 1 1 0 1 1 1 + 0 1 0 0 Dritte Dezimalstelle = 1 1 0 0 Pseudotetrade + 0 1 1 0 Korrekturaddition = 1 0 0 1 0 0 1 1 1 0 0 1 1 = 1273 10 Ergebnis
3. Übungsblatt Danke für die Aufmerksamkeit