Rechnerorganisation Mathematische Grundlagen (1) Boolesche Algebren: BMA, BAA (2,3) Kombinatorische Schaltungen (4,5) Automaten (6,7) Sequentielle Schaltungen (8) Programmierbare Strukturen (9) Rechneraufbau und ~funktion (10,11) Informationskodierung (12,13) Zusammenfassung, Wiederholung (14) H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 1
Datenkodierung Daten alphanumerische Zeichen Zahlen ASCII-Kode: H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 2
Zeichenkodierung - ASCII Buchstaben H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 3
Zeichenkodierung - ASCII Ziffern H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 4
Zeichenkodierung - ASCII Sonderzeichen H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 5
Zeichenkodierung - ASCII Steuerzeichen H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 6
Zeichenkodierung - Unicode internationaler Standard für jedes sinntragende Schriftzeichen oder Textelement aller bekannten Schriftkulturen und Zeichensysteme ein digitaler Code festgelegt wird ständig um Zeichen weiterer Schriftsysteme ergänzt ursprünglich mit 16 Bit definiert (2 16 = 65.536 Elemente) ab Unicode 2.0 (Juli 1996) auf 17 Unicode-Blöcke zu je 65.534 Elementen definiert (insgesamt 1.114.112 Codepunkte) kodiert in UTF-8 U+0000 bis U+10FFFF 8-Bit UCS Transformation Format, wobei UCS wiederum Universal Character Set www.wikipedia.de H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 7
Zeichenkodierung - Unicode 17 Ebenen (0.. 10H) je 2 16 = 65.536 mögliche Codierungen (0000.. FFFFH) FFFEH und FFFFH nicht für die Kodierung benutzt ergibt 17 * 65.534 = 1.114.078 mögliche Zeichen (Codepoints) H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 8
Datenkodierung Daten alphanumerische Zeichen Zahlen BCD vorzeichenbehaftete Zahlen 2K-Zahlen Gleitkomma-Zahlen H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 9
Zahlenkodierung - BCD BCD Binary Coded Decimals (siehe Arbeitsblätter S. 29) Tetraden Pseudotetraden H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 10
Zahlenkodierung - BCD direkter BCD Code Aiken Code 3xS Code Pseudotetraden H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 11
Zahlenkodierung - BCD Gray-Code Dezimalzähler: Kodierung wie in Arbeitsblättern Bilder: Hexadezimal-Zähler, (keine Pseudotetraden) H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 12
Zahlenkodierung - BCD Operationen Addition + Korrektur H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 13
Zahlenkodierung 2K-Zahlen Konegative Zahlen (siehe Arbeitsblätter S. 30) Ergänzung zu 2 n bzw. 2 n -1 H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 14
Zahlenkodierung 2K-Zahlen Bildung der 2K-Zahlen (a) Subtraktion von 2 n : z n = 2 n z n (b) 1K-Zahl (Negation) + 1: z n = 2 n 1 z n +1 (c) beginnend von rechts die erste 1 suchen, diese bleibt stehen, alle Ziffern links davon invertieren H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 15
Zahlenkodierung 2K-Zahlen Operationen (siehe Arbeitsblätter S. 30) z n1 > z n2, z n1 + z n2 =s n, z n1 - z n2 = d n 2K: z n1 + z n1 =2 n H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 16
Rechnerorganisation 13. Vorlesung Mathematische Grundlagen (1) Boolesche Algebren: BMA, BAA (2,3) Kombinatorische Schaltungen (4,5) Automaten (6,7) Sequentielle Schaltungen (8) Programmierbare Strukturen (9) Rechneraufbau und ~funktion (10,11) Informationskodierung (12,13) Zusammenfassung, Wiederholung (14) H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 17
Datenkodierung Daten alphanumerische Zeichen Zahlen BCD vorzeichenbehaftete Zahlen 2K-Zahlen Gleitkomma-Zahlen H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 18
Gleitkommazahlen (GK); (Floating point, FP) z = ± M x B E M = Mantisse B = Basis E = Exponent Normierung: gleiche Vorkommastelle : 0 (M = 0,...) 125 = ( 0,125 x 10 3 ) 10 (dezimal) 7DH = ( 0,7D x 10 2 ) 16 (hexadezimal) = ( 0,1111101 x 10 111 ) 2 (dual) H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 19
Gleitkommazahlen (GK); (Floating point, FP) z = ± M x B E M = Mantisse B = Basis E = Exponent Normierung: gleiche Vorkommastelle : 1 (M = 1,...) 125 = ( 0,125 x 10 3 ) 10 (dezimal) 7DH = ( 0,7D x 10 2 ) 16 (hexadezimal) = ( 0,1111101 x 10 111 ) 2 (dual) = (1,111101 x 10 110 ) 2 (dual) H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 20
Gleitkommazahlen (GK); (Floating point, FP) z = ± M x B E M = Mantisse B = Basis E = Exponent Normierung: gleiche Vorkommastelle : 1 (M = 1,...) = (1,111101 x 10 110 ) 2 (dual) nur im Dualsystem möglich 1 wird nicht abgespeichert => Doppelte Genauigkeit! H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 21
Gleitkommazahlen (GK); (Floating point, FP) IEEE Standard (IEEE 754-1985) Ermittlung von s = Vorzeichen e = vorzeichenloser Exponent f = gebrochener Anteil short real long real temporary real H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 22
Gleitkommazahlen (GK); (Floating point, FP) z n = ± M x 10 2 E =1,111101 x 10 110 IEEE Standard (IEEE 754-1985) H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 23
Gleitkommazahlen (GK); (Floating point, FP) z n = ± M x 10 E 2 =1,111101 x 10 110 M = 1,f f... fractional part IEEE Standard (IEEE 754-1985) H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 24
Gleitkommazahlen (GK); (Floating point, FP) z n = ± M x 10 E 2 =1,111101 x 10 110 M = 1,f f... fractional part Exponent - Anpassung: (hier mit 8 Bit für short real) e = E + bias e = E + 7FH e = 6 + 7FH e = 85H vorzeichenloser (biased) Exponent e H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 25 IEEE Standard (IEEE 754-1985)
Gleitkommazahlen (GK); (Floating point, FP) 125 = 7DH = 0111 1101 = 1,111101 x 10 110 f = 111101 e = 85H = 1000 0101 s = 0, da positive Zahl Format: short real (Länge: 4 Byte) IEEE Standard (IEEE 754-1985) H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 26
Gleitkommazahlen (GK); (Floating point, FP) 125 = ( 1,111101 x 10 110 ) 2 0 10000101 111101000... = 0100 0010 1111 1010 0000 0000 0000 0000 = 42 FA 00 00 H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 27 IEEE Standard (IEEE 754-1985)
Gleitkommazahlen (GK); (Floating point, FP) 1 Wertebereiche IEEE Standard (IEEE 754-1985) H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 28
Gleitkommazahlen (GK); (Floating point, FP) Sonderformate IEEE Standard (IEEE 754-1985) H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 29
Gleitkommazahlen (GK); (Floating point, FP) Operation: Addition Exponenten-Anpassung: 125 + 20 1,111101 x 10 110 + 1,01 x 10 100 1,111101 x 10 110 + 0,0101 x 10 110 Neukodierung: 10,010001 x 10 110 1,0010001 x 10 111 H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 30
Gleitkommazahlen (GK); (Floating point, FP) Java-Applet zur rechnerinternen Zahlenverarbeitung www.tu-ilmenau.de/iks -> Lehre - Rechnerorganisation H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 31
Datentypen höherer Sprachen - PASCAL Entsprechend Maschinendatentypen H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 32
Datentypen höherer Sprachen - PASCAL Keinem Maschinendatentyp entsprechend H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 33
Datentypen höherer Sprachen - JAVA Datentyp Größe Wrapper-Klasse Wertebereich Beschreibung boolean JVM- Spezifisch java.lang.boolean true / false (0/1) Boolescher Wahrheitswert char 16 bit java.lang.character Buchstaben, Zeichen byte 8 bit java.lang.byte -128... 127 short 16 bit java.lang.short -32.768... 32.767 int 32 bit java.lang.integer -2.147.483.648... 2.147.483.647 long 64 bit java.lang.long -9.223.372.036.854.775.808... 9.223.372.036.854.775.807 Unicode-Zeichen (UTF-16) Zweierkomplement- Wert Zweierkomplement- Wert Zweierkomplement- Wert Zweierkomplement- Wert float 32 bit java.lang.float +/-1,4E-45... +/-3,4E+38 Gleitkommazahl (IEEE 754) double 64 bit java.lang.double +/-4,9E-324... +/-1,7E+308 Gleitkommazahl doppelter Genauigkeit (754) H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 36
Das war s für dieses Semester Viel Erfolg bei der Prüfung! oder Bis nächsten Donnerstag 15.00...... zur Zusammenfassung/Wiederholung H.-D. Wuttke, K. Henke 28.01.2016 www.tu-ilmenau.de/iks 37