Gedächtnisprotokoll RS08-1

Aus Fachschaft_Informatik
Zur Navigation springen Zur Suche springen

Aufgabe 1[Bearbeiten]

(5 Punkte)

Wandeln sie die Dezimalzahl 17,125 in eine Binärzahl um mit 6 Vorkomma und 4 Nachkomma.

Aufgabe 2 ( Extraaufgabe )[Bearbeiten]

(10 Punkte)

Geben Sie die Dezimalzahl 0,9 als Binärbruch an. Geben Sie dazu die Vorperiode und die Periode sowie die Zahl auf 6 Stellen 'neutral' gerundet an.

Vorperiode:

Periode:

neutral Gerundet:

Aufgabe 3[Bearbeiten]

(10 Punkte)

Berechnen Sie zur Nachricht 1101001011 die Schutzkette nach dem CRC verfahren. Das Divisionspolynoms ist 10011. Geben Sie die geschützte Nachricht (Nachricht + Schutzkette) an.

Aufgabe 4 ( Extraaufgabe )[Bearbeiten]

Die Hamming Codierung lässt sich als CRC Codierung auffassen. Das Divisionspolynoms sei 1101. Berechnen Sie ob folgende Nachrichten korrekt übertragen wurden. Ansonsten geben sie die korrigierten Nachrichten an.

a) 0111001

b) 1010000

c) 0100110

d) 1111101

Aufgabe 5[Bearbeiten]

Gegeben sind folgende Relative Häufigkeiten 5, 7, 11, 18, 19, 23 eines Zeichensatzes. Geben Sie die Längen der Codewörter eines zugehörigen Huffmancodes an.

Aufgabe 6[Bearbeiten]

Gegeben sind folgende DNF

X = /ABC + A/B/C + A/BC + AB/C + ABC

Y = /A/BC + /AB/C + A/BC + AB/C + ABC


Dadraus wurden mithilfe von KV-Diagrammen die folgenden minimierten DNF erstellt:

a)

X = ....

Y = .....


Kreuzen Sie alle zutreffenden Aussagen an:

[ ] Die minimierten Terme sind richtig
[ ] Die minimierten Terme sind falsch
[ ] Nur X ist richtig
[ ] Nur Y ist richtig
[ ] Die minimierten Terme sind richtig, aber vertauscht
[ ] Die minimierten Terme sind richtig, aber in der falschen Reinfolge


b)

Aus den minimierten DNF wurde folgende Schaltung gebaut:


http://nilstgmd.bplaced.net/data/RS_aufg6b.png

Kreuzen Sie alle richtigen Aussagen an:

[ ] Die Schaltung ist richtig.
[ ] Die Schaltung ist falsch, weil die Eingänge falsch belegt sind.
[ ] Die Schaltung ist falsch, weil die Ausgänge falsch belegt sind.
[ ] Die Schaltung ist richtig, aber alle Ausgänge wurden vertauscht.
[ ] Die Schaltung ist richtig, aber alle Eingänge wurden vertauscht.
[ ] Die Schaltung ist richtig, aber aber die Eingäng A und C wurden vertauscht.
...
[ ] Keine der Aussagen trifft zu.


c)

Geben Sie an welche Bedeutung die in der Schaltung verwendeten Symbole als elementare Schaltglieder haben.

d)

Geben Sie an wie oft die elementaren Schaltglieder in der Schaltung verwendet wurden.

Aufgabe 7[Bearbeiten]

( 30 Punkte )

Entwicklung einer Taktunterteilung die das existierenden Takt-Signal derart unterteilt das jeweils nach vier Takten eine 1 am Ausgang anliegt.

http://theoneandonlyfoo.th.funpic.de/rs-aufgabe7.png


a) Implementations Model:

ACHTUNG: Im folgenden sind bereits die Lösungen eingetragen, das ist ja nicht
unbedingt der Sinn des Gedächtnisprotokolls, vielleicht sollten wir
das nochmal ändern? --Olli 03:56, 14. Feb. 2008 (CET)

http://nilstgmd.bplaced.net/data/RS_aufg7a.png

b) Zustandstabelle:

http://nilstgmd.bplaced.net/data/RS_aufg7b.png

c) Minimierte Ausgangsgleichung:

http://nilstgmd.bplaced.net/data/RS_aufg7c.png

d) Kombinatorische Logik:

http://nilstgmd.bplaced.net/data/RS_aufg7d.png

Aufgabe 8[Bearbeiten]

Die Ausgabe der Sparc (inklusive Flags) für folgende Aufgaben

// UNVOLLSTÄNDIG

Welche Flags werden bei addcc gesetzt:

a) 0x7FFFFFFC + 0xC

b) 0xFFFFFF9C + 0x6C

Welche Flags werden bei subcc gesetzt:

a) 0x0 - 0x80000000 =

b) 0x0 - 0xffff126 = [letzte Ziffer nicht ganz sicher]

... 0x7FFFFFFC + 0xC =

...

Aufgabe 9[Bearbeiten]

( 15 Punkte )

Was macht dieses Programm:

   funktion:
       save %sp, -120, %sp
       mov %i0, %o0          ! %o0 = x
       
       smul %o0, %o0, %o3
       smul %o0, %o3, %o2
       
       sll %o2, 2, %o0
       sll %o2, 3, %o1
       add %o0, %o1, %o2
       
       sll %o3, 1, %o0
       sll %o3, 4, %o1
       add %o0, %o1, %o3
       
       add %o3, %o2, %o3
       add %o3, 60, %o0
       
       sra %o0, 31, %g1
       wr %g0, %g1, %y
       nop
       nop
       nop
       sdiv %o0, 18, %i0
       
       jmp %i7+8
       restore

Aufgabe 10 ( Extraaufgabe )[Bearbeiten]

( 30 Punkte )

Was macht das Programm:

   .global psum
   .section ".rodata"
   .null: .word 0, 0
   .section ".text"
   ! double psum( int n, double x[], double y[] )
   ! %i0 -> n
   ! %i1 -> x[]
   ! %i2 -> y[]
   psum:
       save %sp, -120, %sp
       
       sethi %hi(.null), %o0
       ldd [%o0 + %lo( .null )], %f4
       st %f4, [%fp-16]
       st %f4, [%fp-12]
       
       mov %g0, %i5
       cmp %g0, %i0
       bge .ende
       nop
       
   .schleife:
       ld [%fp-16], %f8
       ld [%fp-12], %f9
       
       mov %i5, %o0
       sll %o0, 3, %o1
       
       add %i1, %o1, %g1
       ld [%g1], %f4
       ld [%g1+4], %f5
       
       add %i2, %o1, %g1
       ld [%g1], %f6
       ld [%g1+4], %f7
       
       fmuld %f4, %f6, %f4
       faddd %f8, %f4, %f4
       
       st %f4, [%fp-16]
       st %f5, [%fp-12]
       
       add %i5, 1, %i5
       cmp %i5, %i0
       bl .schleife
       nop
       
   .ende:
       
       ldd [%fp-16], %f4
       std %f4, [%fp-8]
       fmovs %f4, %f0
       fmovs %f5, %f1
       
       jmp %i7+8
       restore

Aufgabe 11[Bearbeiten]

Cache LRU und Beladys

Anzahl Seitenalarme

Aufgabe 12[Bearbeiten]

Haupspeichergröße = 2^18

Cachemengen = 32 mit je 4 Cacheblöcken (direct mapped)

Cacheblockgröße = 16 Byte


In welchen Cachemengen werden die Werte folgender Adressen abgelegt:

a) 01 0110 1010 0100 1010

b) 10 1010 1010 0101 1101

c) 11 0101 0100 1110 1001

d) 00 1001 1110 1011 1010

Geben Sie an wie viele Bit der Adresse auf was verfallen:

Tag:              Bit
Index:            Bit
Bytenummer:       Bit