Musterlösungen zum 13.¨Ubungsblatt - next-internet.com
Musterlösungen zum 13.¨Ubungsblatt - next-internet.com
Musterlösungen zum 13.¨Ubungsblatt - next-internet.com
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Universität Karlsruhe (TH)<br />
Institut für Rechnerentwurf und Fehlertoleranz<br />
Technische Informatik I im WS 2004/2005<br />
<strong>Musterlösungen</strong> <strong>zum</strong> 13. Übungsblatt<br />
Lösung 1<br />
Dr.-Ing. Tamim Asfour<br />
Haid-und-Neu-Str. 7<br />
2. OG., Raum 313.1<br />
D-76131 Karlsruhe<br />
Telefon: +49-721-608-7379<br />
Fax: +49-721-608-8270<br />
Email: asfour@ira.uka.de<br />
http://i61www.ira.uka.de/users/asfour/TI<br />
1. Für sub = 1 soll jedes Bit von B negiert werden und für sub = 0 unverändert weitergeleitet<br />
werden. Zur Addition einer 1 (Komplementbildung) kann der Übertragseingang<br />
verwendet werden.<br />
Funktionstabelle:<br />
sub bi b ′ i<br />
0 0 0<br />
0 1 1<br />
1 0 1<br />
1 1 0<br />
b ′ i = bi ↔| sub<br />
b0<br />
b1<br />
b2<br />
b3<br />
sub<br />
=1<br />
=1<br />
=1<br />
=1<br />
a0<br />
a1<br />
a2<br />
0<br />
1<br />
<br />
2 3 012<br />
a3 s0<br />
s1<br />
s2<br />
s3<br />
c0<br />
0 123<br />
3<br />
CI CO c4<br />
2. Ein Überlauf (OVR: overflow) tritt bei der Addition zweier Zahlen in<br />
Zweierkomplement-Form auf, wenn beide Zahlen positiv (negative) sind; das Ergebnis<br />
der Addition jedoch negativ (positiv) ist.
<strong>Musterlösungen</strong> <strong>zum</strong> 13. Übungsblatt zur Vorlesung ” Technische Informatik I“ im WS 2004/2005 2<br />
Lösung 2<br />
Funktionstabelle:<br />
a3 b3 s3 OVR<br />
0 0 0 0<br />
0 0 1 1<br />
0 1 0 0<br />
0 1 1 0<br />
1 0 0 0<br />
1 0 1 0<br />
1 1 0 1<br />
1 1 1 0<br />
OV R = a 3b 3s3 ∨ a3 b3 s3<br />
a0<br />
a1<br />
a2<br />
a3<br />
b0<br />
b1<br />
b2<br />
b3<br />
1. Funktionstabelle eines Vollsubtrahierers:<br />
En−1 An Bn Dn En<br />
0 0 0 0 0<br />
0 0 1 1 1<br />
0 1 0 1 0<br />
0 1 1 0 0<br />
1 0 0 1 1<br />
1 0 1 0 1<br />
1 1 0 0 0<br />
1 1 1 1 1<br />
2. Vollsubtrahierer:<br />
c0<br />
¤£¤ ¢£¢<br />
£ £<br />
Dn = An ↔ Bn ↔ En−1<br />
¡<br />
©<br />
0<br />
1<br />
2<br />
3<br />
0<br />
1<br />
2<br />
3<br />
CI<br />
1<br />
1<br />
An<br />
Bn<br />
En-1<br />
<br />
En = An · Bn ∨ An · En−1 ∨ Bn · En−1<br />
↔<br />
↔<br />
↔<br />
1<br />
1<br />
1<br />
0<br />
1<br />
2<br />
3<br />
CO<br />
1<br />
¦ ¥<br />
¨§<br />
1<br />
=1<br />
s0<br />
s1<br />
s2<br />
s3<br />
c4<br />
&<br />
&<br />
=1<br />
&<br />
&<br />
&<br />
≥ 1<br />
≥1<br />
0<br />
0<br />
OVR<br />
Dn<br />
En
<strong>Musterlösungen</strong> <strong>zum</strong> 13. Übungsblatt zur Vorlesung ” Technische Informatik I“ im WS 2004/2005 3<br />
&<br />
&<br />
≥1<br />
1<br />
&<br />
=1<br />
=1<br />
&<br />
&<br />
≥1<br />
1<br />
&<br />
=1<br />
=1<br />
&<br />
&<br />
≥1<br />
1<br />
&<br />
=1<br />
B0 ... B3<br />
↔ ↔ ↔ ↔<br />
1<br />
1<br />
0<br />
0<br />
=1<br />
&<br />
&<br />
≥1<br />
0<br />
CO<br />
&<br />
↔<br />
0<br />
1<br />
↔ ↔ ↔ ↔<br />
1<br />
1<br />
0<br />
1<br />
=1<br />
0<br />
0<br />
0<br />
0<br />
3. Die Laufzeit hängt linear von der Anzahl der Bits in den Dualzahlen ab. Eine Verbesserung<br />
ist durch eine ≫Carry-Look-Ahead≪-Schaltung möglich.<br />
Lösung 3<br />
1. Die beiden 4-Bit Zahlen werden zunächst herkömmlich addiert. Falls das Zwischenergebnis<br />
größer oder gleich 1010 ist, wird das Übertragsbit CO gesetzt und <strong>zum</strong> Zwischenergebnis<br />
der Wert 610<br />
a0<br />
a1<br />
a2<br />
a3<br />
b0<br />
b1<br />
b2<br />
b3<br />
CI<br />
↔<br />
↔<br />
↔<br />
↔<br />
↔<br />
↔<br />
↔<br />
↔<br />
↔<br />
1<br />
1<br />
1<br />
0<br />
1<br />
0<br />
1<br />
0<br />
0<br />
⎫<br />
⎟<br />
⎬<br />
⎟<br />
⎭<br />
0<br />
1<br />
2<br />
3<br />
⎫<br />
⎟<br />
⎬<br />
⎟<br />
⎭<br />
0<br />
1<br />
2<br />
3<br />
CI<br />
P<br />
Q<br />
∑<br />
⎧<br />
⎟<br />
⎨<br />
⎟<br />
⎩<br />
∑<br />
0<br />
1<br />
2<br />
3<br />
CO<br />
&<br />
≥1<br />
&<br />
↔<br />
0<br />
⎫<br />
⎟<br />
⎬<br />
⎟<br />
⎭<br />
0<br />
1<br />
2<br />
3<br />
⎫<br />
⎟<br />
⎬<br />
⎟<br />
⎭<br />
0<br />
1<br />
2<br />
3<br />
CI<br />
P<br />
Q<br />
∑<br />
⎧<br />
⎟<br />
⎨<br />
⎟<br />
⎩<br />
∑<br />
0<br />
1<br />
2<br />
3<br />
CO<br />
0<br />
0<br />
0<br />
0<br />
0<br />
CO<br />
D0 ... D3<br />
A0 ... A3<br />
=1
<strong>Musterlösungen</strong> <strong>zum</strong> 13. Übungsblatt zur Vorlesung ” Technische Informatik I“ im WS 2004/2005 4<br />
2. Kaskadenschaltung zweier 1-Tetraden BCD-Addierer:<br />
↔<br />
1<br />
↔<br />
1<br />
↔<br />
1<br />
↔<br />
0<br />
↔<br />
1<br />
↔<br />
0<br />
↔<br />
0<br />
0<br />
0<br />
0<br />
0<br />
0<br />
1<br />
⎫<br />
CO<br />
CI<br />
∑<br />
⎫<br />
1<br />
0<br />
2<br />
3<br />
P<br />
⎬<br />
2<br />
3<br />
Q<br />
⎭<br />
⎬<br />
⎟<br />
⎟<br />
3<br />
2<br />
⎟<br />
⎟<br />
⎟<br />
⎟<br />
⎨<br />
⎩<br />
∑<br />
⎧<br />
1<br />
0<br />
⎭<br />
⎟<br />
⎟<br />
⎟<br />
⎟<br />
⎟<br />
⎟<br />
≥1<br />
&<br />
&<br />
0<br />
1<br />
⎫<br />
CO<br />
CI<br />
∑<br />
⎫<br />
1<br />
0<br />
2<br />
3<br />
P<br />
⎬<br />
2<br />
3<br />
Q<br />
⎭<br />
⎬<br />
⎟<br />
⎟<br />
3<br />
2<br />
⎟<br />
⎟<br />
⎟<br />
⎟<br />
⎨<br />
⎩<br />
∑<br />
⎧<br />
1<br />
0<br />
⎭<br />
⎟<br />
⎟<br />
⎟<br />
⎟<br />
⎟<br />
⎟<br />
↔<br />
0<br />
0<br />
↔<br />
1<br />
a4<br />
a5<br />
a7<br />
a6<br />
b4<br />
b6<br />
b5<br />
b7<br />
CO<br />
↔<br />
1<br />
↔<br />
0<br />
↔<br />
1<br />
↔<br />
0<br />
↔<br />
1<br />
↔<br />
0<br />
↔<br />
0<br />
↔<br />
0<br />
0<br />
0<br />
0<br />
0<br />
0<br />
1<br />
⎫<br />
CO<br />
CI<br />
∑<br />
⎫<br />
1<br />
0<br />
2<br />
3<br />
P<br />
⎬<br />
2<br />
3<br />
Q<br />
⎭<br />
⎬<br />
⎟<br />
⎟<br />
3<br />
2<br />
⎟<br />
⎟<br />
⎟<br />
⎟<br />
⎨<br />
⎩<br />
∑<br />
⎧<br />
1<br />
0<br />
⎭<br />
⎟<br />
⎟<br />
⎟<br />
⎟<br />
⎟<br />
⎟<br />
≥1<br />
&<br />
&<br />
0<br />
1<br />
⎫<br />
CO<br />
CI<br />
∑<br />
⎫<br />
1<br />
0<br />
2<br />
3<br />
P<br />
⎬<br />
2<br />
3<br />
Q<br />
⎭<br />
⎬<br />
⎟<br />
⎟<br />
3<br />
2<br />
⎟<br />
⎟<br />
⎟<br />
⎟<br />
⎨<br />
⎩<br />
∑<br />
⎧<br />
1<br />
0<br />
⎭<br />
⎟<br />
⎟<br />
⎟<br />
⎟<br />
⎟<br />
⎟<br />
↔<br />
0<br />
↔<br />
1<br />
a0<br />
a1<br />
a3<br />
a2<br />
b0<br />
b2<br />
b1<br />
b3<br />
CI<br />
s0<br />
s1<br />
s3<br />
s2<br />
s4<br />
s5<br />
s7<br />
s6