Difference between revisions of "TU Wien:Technische Grundlagen der Informatik VU (Kastner)/WS12 - Übung 1 - Lösung"

From VoWi
Jump to navigation Jump to search
Line 519: Line 519:
 
Z<sub>1</sub>=001001<sub>2</sub>, Z<sub>2</sub>=101101<sub>2</sub>
 
Z<sub>1</sub>=001001<sub>2</sub>, Z<sub>2</sub>=101101<sub>2</sub>
 
==a==
 
==a==
 +
{|
 +
|-
 +
|001001
 +
|-
 +
|<span style="text-decoration: underline;">101101</span>
 +
|-
 +
|110110
 +
|-
 +
|}
 +
 +
Invertieren im 2er-Komplement:
 +
-(110110) + 1 = 1001 + 1 = 1010
 +
 
==b==
 
==b==
 
==c==
 
==c==

Revision as of 10:27, 24 October 2012

Beispiel 1

Angabe

A=(117.6)10 B=(587.3525)10

A-a)

n = 6 (6 Nachkommastellen)
Vorkomma:

Zahl Operation Rest
117 mod 2 1
58 mod 2 0
29 mod 2 1
14 mod 2 0
7 mod 2 1
3 mod 2 1
1 mod 2 1

(117)10 = (111 0101)2

Nachkomma: (Es werden wenigstens 7 Stellen benötigt, um auf 6 Stellen runden zu können!)

Zahl Operation Rest
0.6 \lfloor 0.6 * 2\rfloor 1
0.2 \lfloor 0.2 * 2\rfloor 0
0.4 \lfloor 0.4 * 2\rfloor 0
0.8 \lfloor 0.8 * 2\rfloor 1
0.6 \lfloor 0.6 * 2\rfloor 1
0.2 \lfloor 0.2 * 2\rfloor 0
0.4 \lfloor 0.4 * 2\rfloor 0

Wichtig sollte hierbei sein, die Periode zu erkennen.
(0.6)10 = (0.1001100)2
(117.6)10 = (111 0101.1001 10)2

A-b)

n = 2 (2 Nachkommastellen)
Vorkomma:

Zahl Operation Rest
117 mod 16 5
7 mod 16 7

(117)10 = (75)16

Nachkomma: (Es werden wenigstens 3 Stellen benötigt, um auf 2 Stellen runden zu können!)

Zahl Operation Rest
0.6 \lfloor 0.6 * 16\rfloor 9
0.6 \lfloor 0.6 * 16\rfloor 9
0.6 \lfloor 0.6 * 16\rfloor 9

Wichtig sollte hierbei sein, die Periode zu erkennen.
(0.6)10 = (0.999)16

(117.6)10 = (75.9A)16 (Anm: Es wird hier auf A gerundet, nicht auf 76, da im Hexdezimalsystem nicht 10 nach 9 kommt, sondern A.)

A-c)

n = 4 (4 Nachkommastellen)
Vorkomma:

Zahl Operation Rest
117 mod 6 3
19 mod 6 1
3 mod 6 3

(117)10 = (313)6

Nachkomma: (Es werden wenigstens 5 Stellen benötigt, um auf 4 Stellen runden zu können!)

Zahl Operation Rest
0.6 \lfloor 0.6 * 6\rfloor 3
0.6 \lfloor 0.6 * 6\rfloor 3
0.6 \lfloor 0.6 * 6\rfloor 3
0.6 \lfloor 0.6 * 2\rfloor 3
0.6 \lfloor 0.6 * 2\rfloor 3
... ... ...

Wichtig sollte hierbei sein, die Periode zu erkennen.
(0.6)10 = (0.3333)6
(117.6)10 = (313.3334)6 (Anm: Es wird hier aufgerundet, da 3 im sedeniären System schon die Hälfte ist. (10/2 = 5, 6 / 2 = 3))

B-a)

n = 6 (6 Nachkommastellen)
Vorkomma:

587 mod 2 1
293 mod 2 1
146 mod 2 0
73 mod 2 1
36 mod 2 0
18 mod 2 0
9 mod 2 1
4 mod 2 0
2 mod 2 0
1 mod 2 1

(587)10 = (10 0100 1011)2

Nachkomma: (Es werden wenigstens 7 Stellen benötigt, um auf 6 Stellen runden zu können!)

Zahl Operation Rest
0.3525 \lfloor  0.3525 * 2  \rfloor 0
0.705 \lfloor  0.705 * 2  \rfloor 1
0.41 \lfloor  0.41 * 2  \rfloor 0
0.82 \lfloor  0.82 * 2  \rfloor 1
0.64 \lfloor  0.64 * 2  \rfloor 1
0.28 \lfloor  0.28 * 2  \rfloor 0
0.56 \lfloor  0.56 * 2  \rfloor 1

(0.3525)10 = (0.010111)2
(587.3525)10 = (10 0100 1011.010111)2

B-b)

(587.3525)10 = (?)16

587 mod 16 B
36 mod 16 4
2 mod 16 2

(587)10 = (24B)16

Zahl Operation Rest
0.3525 \lfloor  0.3525 * 16  \rfloor 5
0.64 \lfloor  0.64 * 16  \rfloor A
0.24 \lfloor  0.24 * 16  \rfloor 3

(0.3525)10 = (0.5A3)16
Gerundet wird nach unten, weil 3 < 16 / 2 ist. Also (5A3)16=(0.5A>16
(587.3525)10 = (24B.5A)16

B-c)

(587.3525)10 = (?)6

587 mod 6 5
97 mod 6 1
16 mod 6 4
2 mod 6 2

(587)10 = (2415)6

Zahl Operation Rest
0.3525 \lfloor  0.3525 * 6  \rfloor 2
0.115 \lfloor  0.115 * 6  \rfloor 0
0.69 \lfloor  0.69 * 6  \rfloor 4
0.14 \lfloor  0.14 * 6  \rfloor 0
0.84 \lfloor  0.84 * 6  \rfloor 5

(0.3525)10 = (0.20405)6
(587.3525)10 = (2415.2041)6

Beispiel 2

a

Schwerer weg

(8B5C3F.72DC)16 = (?)2
Vorkomma:

Operand Operation Ergebnis Rest
9133119 mod 2 4566559 1
4566559 mod 2 2283279 1
2283279 mod 2 1141639 1
1141639 mod 2 570819 1
570819 mod 2 285409 1
285409 mod 2 142704 1
142704 mod 2 71352 0
71352 mod 2 35676 0
35676 mod 2 17838 0
17838 mod 2 8919 0
8919 mod 2 4459 1
4459 mod 2 2229 1
2229 mod 2 1114 1
1114 mod 2 557 0
557 mod 2 278 1
278 mod 2 139 0
139 mod 2 69 1
69 mod 2 34 1
34 mod 2 17 0
17 mod 2 8 1
8 mod 2 4 0
4 mod 2 2 0
2 mod 2 1 0
1 mod 2 0 1

(8B5C3F)16=(100010110101110000111111)2
Nachkomma:

Ich erspar mir hier mal diese elend lange Rechnung.

(8B5C3F.72DC)16=(1000 1011 0101 1100 0011 1111.0111 0010 1101 11)2

Cheesy Weg

Eine hexadezimal Stelle enstpricht immer genau 4 Bits.

8 B 5 C 3 F . 7 2 D C
1000 1011 0101 1100 0011 1111 . 0111 0010 1101 1100

(8B5C3F.72DC)16=(1000 1011 0101 1100 0011 1111.0111 0010 1101 11)2

b

(1010 1100 0011 1011.0011 0010 11)2 = (?)8 Es gibt hier wieder zwei Wege. Den Mathematischen, und den einfachen.

Einfach

Jeweils 3 Binärstellen sind eine Oktalstelle. (1112=78)

1 010 110 000 111 011 . 001 100 101 100
1 2 6 0 7 3 . 1 4 5 6

Mathematisch

(1010 1100 0011 1011.0011 0010 11)2 = (20 +21 +23 +24 +25 +212 +213 +215 +217 +2-3 +2-4 +2-7 +2-11 +2-12 +2-13 ) = (18+28+108+208+408+20008+40008+200008+1000008)+(0.18+0.048+0.0048+0.0018+0.00048+0.00028) =
(126073.1456)8

c

Einfach

Zwei stellen im Quatärnierensystem entsprich einer Stelle im Hexadezimalsystem.

03 12 01 . 31 02 20
3 6 1 . D 2 8

Beispiel 3

Grundlagen

Additionsregeln:

Operand 1 Operand2 Ergebnis Carry
1 1 0 1
0 1 1 0
1 0 0 1
0 0 0 0

Addition mit Carry: (Alle anderen Fälle folgen der obigen Tabelle.)

Operand 1 Operand2 Carry von letzter Addition Ergebnis Carry
1 1 1 1 1
1 0 1 0 1
0 1 1 0 1
0 0 1 1 0

a

1 1 1 1 1 1 Carry
1 0 1 1 0 0 1 0 . 1 0 1 Operand 1
1 1 0 0 0 1 1 . 1 Operand 2
1 0 0 0 1 0 1 1 0 . 0 0 1 Ergebnis

b

1 1 1 1 1 Borrow
1 0 1 1 0 0 1 0 . 1 0 1 Operand 1
1 0 1 1 0 0 1 0 . 1 0 1 Operand 2
0 1 0 0 1 1 1 1 . 0 0 1 Ergebnis

c

1100011.1 : 101 = 10011.111001

d

10110010.101 * 1000
10110010101
000000000000
0000000000000
00000000000000
10110010101.000

(Die Operation entspricht einem arithmetischem Links-Shift um 3 Stellen)

Beispiel 4

A

Operand Operation Ergebnis
5C8 mod 2 0
2E4 mod 2 0
1F2 mod 2 0
B9 mod 2 1
5C mod 2 0
2E mod 2 0
17 mod 2 1
B mod 2 1
5 mod 2 1
2 mod 2 0
1 mod2 1

a

0101 1100 10002 / 5C816

b

0101 1100 10002 / 5C816

c

1101 1100 01112 / DC716

B

Operand Operation Ergebnis
348 mod 2 0
174 mod 2 0
87 mod 2 1
43 mod 2 1
21 mod 2 1
10 mod 2 0
5 mod 2 1
2 mod 2 0
1 mod 2 1

a

1001 0101 11002 / 95C16

b

1110 1010 01002 / EA416

c

0110 1010 00112 / 6A316

C

010 = 02

a

Es gibt 2 Darstellungen für 0 in der Vorzeichen-Betrag Darstellung. 0000 0000 00002 / 00016 ( = +0) 1000 0000 00002 / 80016 ( = -0)

b

0000 0000 00002 / 016

c

0111 1111 11112 / 7FF16

Beispiel 5

Z1=0010012, Z2=1011012

a

001001
101101
110110

Invertieren im 2er-Komplement: -(110110) + 1 = 1001 + 1 = 1010

b

c

Beispiel 6

Beispiel 7

Beispiel 8

Beispiel 9

Beispiel 10