UEBUNG 4 (LOESUNG) --- DIGITALTECHNIK .pdf - its
UEBUNG 4 (LOESUNG) --- DIGITALTECHNIK .pdf - its
UEBUNG 4 (LOESUNG) --- DIGITALTECHNIK .pdf - its
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Übung 4: Zahlensysteme<br />
in<br />
„Digitaltechnik“<br />
WS 2008/09<br />
Aufgabe 1<br />
(a) Wie lässt sich allgemein eine nstellige natürliche Zahl in einem<br />
beliebigen Zahlensystem darstellen? Geben Sie jeweils für das<br />
duale, dezimale bzw. hexadezimale Zahlensystem die Basis und den<br />
Zeichenvorrat an!<br />
( )<br />
n−1<br />
Z = CB = C B + C B + ... + CB + CB ; C= Faktor<br />
B<br />
∑<br />
i=<br />
0<br />
i n−1 n−2<br />
1 0<br />
i n−1 n−2<br />
1 0<br />
2 1 0<br />
( 174) = 1*10 + 7*10 + 4*10<br />
10<br />
Zahlensystem Basis Zeichenvorrat<br />
Dezimal<br />
Dual<br />
Hexadezimal<br />
Oktal<br />
(b) Notieren Sie die folgenden Zahlen in verschiedenen<br />
Zahlensystemen:<br />
( 375 ) →( N) , ( N) ( 1001011)<br />
→ ( N)<br />
10 2 16 2 10<br />
(375)10 (N)2<br />
375 : 2 = 187<br />
187 : 2 = 93<br />
93 : 2 = 46<br />
46 : 2 = 23<br />
23 : 2 = 11<br />
11 : 2 = 5<br />
5 : 2 = 2<br />
2 : 2 = 1<br />
1 : 2 =0<br />
Rest 1<br />
Rest 1<br />
Rest 1<br />
Rest 0<br />
Rest 1<br />
Rest 1<br />
Rest 1<br />
Rest 0<br />
Rest 1<br />
10<br />
2<br />
16<br />
8<br />
0,1,2,3,4,5,6,7,8,9<br />
0,1<br />
0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F<br />
0,1,2,3,4,5,6,7<br />
B = Basis<br />
Dezimal Dual (Binär)
(375)10 (N)16<br />
163 = 4096 > 375 0<br />
16 2 = 256
(1001011)2 (N)16<br />
( 1001011)<br />
⎛ ⎞<br />
⎜0100 1011⎟= 4<br />
⎜ ⎟<br />
⎝ 4<br />
B ⎠<br />
2<br />
( B)<br />
(1001011)2 (4B)16<br />
(1001011)2 (N)8<br />
( 1001011)<br />
⎛ ⎞<br />
⎜001001011 <br />
= 113<br />
⎜<br />
⎟<br />
⎝ 1 1 3 ⎠<br />
2<br />
( )<br />
(1001011)2 (113)8<br />
(17B)16 (N)2<br />
1= 0 0 0 1<br />
7= 0 1 1 1<br />
B = 1 0 1 1<br />
⇒ →<br />
( 17B) ( 0001 0111 1011)<br />
16 2<br />
(10011010)2 (N)8<br />
( 10011010)<br />
⎛ ⎞<br />
⎜1001 1010⎟= = 9<br />
⎜ ⎟<br />
⎝ 9<br />
A ⎠<br />
2<br />
8<br />
16<br />
( N ) ( A)<br />
16 16<br />
Dual Hexadezimal<br />
Dual Oktal<br />
Hexadezimal Dual<br />
Dual Hexadezimal
(c) Welcher Wertebereich positiver, ganzer Dualzahlen kann mit<br />
einem Datenwort der Länge 4 Bit dargestellt werden? Welchen<br />
Wertebereich erhält man, wenn ganze Dualzahlen dargestellt<br />
werden sollen?<br />
Verallgemeinern Sie auf N Bit lange Datenworte!<br />
positive ganze Dualzahlen (4 – Bit)<br />
Dual Dezimal<br />
größter Wert 1111 15<br />
Kleinster Wert 0000 0<br />
N<br />
N – Bit ⎡<br />
⎣0,1,..., 2 −1⎤<br />
⎦<br />
a) Format mit Betrag & Vorzeichen<br />
MSB(Most Significant Bit = höchstwertige Bit)<br />
0 + ; 1<br />
−<br />
Dual Dezimal<br />
größter Wert 0111 7<br />
Kleinster Wert 1111 ‐7<br />
b) MSB(Most Significant Bit = höchstwertige Bit)<br />
0 + ; 1<br />
−<br />
positive Zahlen: Betrag<br />
negative Zahlen: Zweierkomplement (ZK)<br />
Dual Dezimal Dual Dezimal<br />
0| 111 +7 1| 111 ‐1<br />
0| 110 +6 1| 110 ‐2<br />
0| 101 +5 1| 101 ‐3<br />
0| 100 +4 1| 100 ‐4<br />
0| 011 +3 1| 011 ‐5<br />
0| 010 +2 1| 010 ‐6<br />
0| 001 +1 1| 001 ‐7<br />
0| 000 0 1| 000 ‐8<br />
N−1 N−1<br />
Wertebereich: N – Bit= ⎡− ( 2 ) ,..., + ( 2 −1)<br />
⎤<br />
⎣ ⎦<br />
[ 0,1,...,14,15 ]<br />
[ −7, − 6,..., + 6, +<br />
7]
Eigenschaften des Komplementären Zahlenraums<br />
N<br />
ZK + Z = B N = Bitlänge; B = Basis; Z = Zahl<br />
N<br />
EK + Z = B − 1<br />
Bildung Einerkomplement (EK)<br />
Alle Stellen der Zahl werden invertiert 0101→ 1010( EK )<br />
Bildung des Zweierkomplements (ZK)<br />
EK + LSB ( LSB = Least Significant Bit)<br />
ZK von 0101<br />
( EK )<br />
( LSB)<br />
0101 1010<br />
+ 0001<br />
−−−−−−−−−−− −−−−−<br />
oder : 0 1 0<br />
→<br />
1<br />
1011<br />
1 0 1 1<br />
↓<br />
( ZK )<br />
1. Fange bei der rechten Stelle (niedrigstwertiges Bit) an.<br />
2.<br />
a. Wenn diese Stelle eine 0 ist, schreibe eine 0 und gehe zu Punkt 3;<br />
b. Wenn diese Stelle eine 1 ist, schreibe eine 1 und gehe zu Punkt 4.<br />
3. Gehe ein Zeichen nach links und wiederhole Punkt 2.<br />
4. Invertiere alle restlichen Stellen bis zum höchstwertigen Bit.
Aufgabe 2<br />
Führen Sie die folgenden Rechenoperationen durch:<br />
a) (1100 0101)2 + (0110 0110)2<br />
Format: positive 8bitDualzahlen<br />
11000101<br />
+<br />
10110 10110<br />
_______________________<br />
<br />
1| 0 0 1 0 1 0 1 1<br />
b) (1101)2 ⋅ (1011)2<br />
Format: positive 4bitDualzahlen<br />
1101 ________________________<br />
⋅ 1011<br />
1101<br />
00 00<br />
1101<br />
1101<br />
<br />
_________________________<br />
1 1 1<br />
10001111 c) 1) (00000111)2 − (00000100)2<br />
00000111 |7<br />
00000100 |4<br />
0000010 ←0<br />
000001←0 0<br />
000001 0 0<br />
Alles invertieren!!!<br />
00000111 |7<br />
+ ____________________________<br />
11111100 | − 4<br />
1|00000 01 1 |3<br />
Falsche Überlagerung<br />
⇒ 1111110 0 | − 4
2) (00000011)2 − (00000111)2<br />
00000011 |3<br />
00000111 |7<br />
00000111<br />
Alles invertieren!!!<br />
00000011 |3<br />
+ ___________________________<br />
11111001 | −7<br />
11111100 | −4<br />
3) (01111111)2 − (11111111)2<br />
01111111 |127<br />
11111111 |255<br />
11111111<br />
Alles invertieren!!!<br />
0 1 1 1 1 1 1 1 |127<br />
+ 00000001 | − −1<br />
⇒ 111110 01 | − 7<br />
⇒ 00000001 |1<br />
( )<br />
<br />
______________________________<br />
1 1 1 1 1 1 1<br />
1000000 0<br />
| −128