<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki.mafiasi.de/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=78.54.25.34</id>
	<title>Fachschaft Informatik - Benutzerbeiträge [de]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.mafiasi.de/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=78.54.25.34"/>
	<link rel="alternate" type="text/html" href="https://wiki.mafiasi.de/index.php/Spezial:Beitr%C3%A4ge/78.54.25.34"/>
	<updated>2026-10-17T17:41:02Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.46.2</generator>
	<entry>
		<id>https://wiki.mafiasi.de/index.php?title=Ged%C3%A4chtnisprotokoll_RS08-1&amp;diff=5350</id>
		<title>Gedächtnisprotokoll RS08-1</title>
		<link rel="alternate" type="text/html" href="https://wiki.mafiasi.de/index.php?title=Ged%C3%A4chtnisprotokoll_RS08-1&amp;diff=5350"/>
		<updated>2008-03-26T21:06:21Z</updated>

		<summary type="html">&lt;p&gt;78.54.25.34: tip fehler&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Aufgabe 1 ==&lt;br /&gt;
(5 Punkte)&lt;br /&gt;
&lt;br /&gt;
Wandeln sie die Dezimalzahl 17,125 in eine Binärzahl um mit 6 Vorkomma und 4 Nachkomma.&lt;br /&gt;
&lt;br /&gt;
== Aufgabe 2 ( Extraaufgabe ) ==&lt;br /&gt;
(10 Punkte)&lt;br /&gt;
&lt;br /&gt;
Geben Sie die Dezimalzahl 0,9 als Binärbruch an. Geben Sie dazu die Vorperiode und die Periode sowie die Zahl auf 6 Stellen &#039;neutral&#039; gerundet an.&lt;br /&gt;
&lt;br /&gt;
Vorperiode:&lt;br /&gt;
&lt;br /&gt;
Periode:&lt;br /&gt;
&lt;br /&gt;
neutral Gerundet:&lt;br /&gt;
&lt;br /&gt;
== Aufgabe 3 ==&lt;br /&gt;
(10 Punkte)&lt;br /&gt;
&lt;br /&gt;
Berechnen Sie zur Nachricht 1101001011 die Schutzkette nach dem CRC verfahren. Das Divisionspolynoms ist 10011.&lt;br /&gt;
Geben Sie die geschützte Nachricht (Nachricht + Schutzkette) an.&lt;br /&gt;
&lt;br /&gt;
== Aufgabe 4 ( Extraaufgabe ) ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
a) 0111001&lt;br /&gt;
&lt;br /&gt;
b) 1010000&lt;br /&gt;
&lt;br /&gt;
c)  0100110&lt;br /&gt;
&lt;br /&gt;
d)  1111101&lt;br /&gt;
&lt;br /&gt;
== Aufgabe 5 ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== Aufgabe 6 ==&lt;br /&gt;
&lt;br /&gt;
Gegeben sind folgende DNF&lt;br /&gt;
&lt;br /&gt;
X = /ABC + A/B/C + A/BC + AB/C + ABC&lt;br /&gt;
&lt;br /&gt;
Y = /A/BC + /AB/C + A/BC + AB/C + ABC&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Dadraus wurden mithilfe von KV-Diagrammen die folgenden minimierten DNF erstellt:&lt;br /&gt;
&lt;br /&gt;
a)&lt;br /&gt;
&lt;br /&gt;
X = ....&lt;br /&gt;
&lt;br /&gt;
Y = .....&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Kreuzen Sie alle zutreffenden Aussagen an:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[ ] Die minimierten Terme sind richtig&lt;br /&gt;
[ ] Die minimierten Terme sind falsch&lt;br /&gt;
[ ] Nur X ist richtig&lt;br /&gt;
[ ] Nur Y ist richtig&lt;br /&gt;
[ ] Die minimierten Terme sind richtig, aber vertauscht&lt;br /&gt;
[ ] Die minimierten Terme sind richtig, aber in der falschen Reinfolge&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
b)&lt;br /&gt;
&lt;br /&gt;
Aus den minimierten DNF wurde folgende Schaltung gebaut:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
http://nilstgmd.bplaced.net/data/RS_aufg6b.png&lt;br /&gt;
&lt;br /&gt;
Kreuzen Sie alle richtigen Aussagen an:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[ ] Die Schaltung ist richtig.&lt;br /&gt;
[ ] Die Schaltung ist falsch, weil die Eingänge falsch belegt sind.&lt;br /&gt;
[ ] Die Schaltung ist falsch, weil die Ausgänge falsch belegt sind.&lt;br /&gt;
[ ] Die Schaltung ist richtig, aber alle Ausgänge wurden vertauscht.&lt;br /&gt;
[ ] Die Schaltung ist richtig, aber alle Eingänge wurden vertauscht.&lt;br /&gt;
[ ] Die Schaltung ist richtig, aber aber die Eingäng A und C wurden vertauscht.&lt;br /&gt;
...&lt;br /&gt;
[ ] Keine der Aussagen trifft zu.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
c)&lt;br /&gt;
&lt;br /&gt;
Geben Sie an welche Bedeutung die in der Schaltung verwendeten Symbole als elementare Schaltglieder haben.&lt;br /&gt;
&lt;br /&gt;
d)&lt;br /&gt;
&lt;br /&gt;
Geben Sie an wie oft die elementaren Schaltglieder in der Schaltung verwendet wurden.&lt;br /&gt;
&lt;br /&gt;
== Aufgabe 7 ==&lt;br /&gt;
( 30 Punkte )&lt;br /&gt;
&lt;br /&gt;
Entwicklung einer Taktunterteilung &lt;br /&gt;
die das existierenden Takt-Signal &lt;br /&gt;
derart unterteilt das  jeweils nach &lt;br /&gt;
vier Takten eine 1 am Ausgang &lt;br /&gt;
anliegt.&lt;br /&gt;
&lt;br /&gt;
http://theoneandonlyfoo.th.funpic.de/rs-aufgabe7.png&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
a) Implementations Model:&lt;br /&gt;
 ACHTUNG: Im folgenden sind bereits die Lösungen eingetragen, das ist ja nicht&lt;br /&gt;
 unbedingt der Sinn des Gedächtnisprotokolls, vielleicht sollten wir&lt;br /&gt;
 das nochmal ändern? --[[Benutzer:Olli|Olli]] 03:56, 14. Feb. 2008 (CET)&lt;br /&gt;
&lt;br /&gt;
http://nilstgmd.bplaced.net/data/RS_aufg7a.png&lt;br /&gt;
 &lt;br /&gt;
b) Zustandstabelle:&lt;br /&gt;
&lt;br /&gt;
http://nilstgmd.bplaced.net/data/RS_aufg7b.png&lt;br /&gt;
&lt;br /&gt;
c) Minimierte Ausgangsgleichung:&lt;br /&gt;
&lt;br /&gt;
http://nilstgmd.bplaced.net/data/RS_aufg7c.png&lt;br /&gt;
&lt;br /&gt;
d) Kombinatorische Logik:&lt;br /&gt;
&lt;br /&gt;
http://nilstgmd.bplaced.net/data/RS_aufg7d.png&lt;br /&gt;
&lt;br /&gt;
== Aufgabe 8 ==&lt;br /&gt;
Die Ausgabe der Sparc (inklusive Flags) für folgende Aufgaben&lt;br /&gt;
&lt;br /&gt;
// UNVOLLSTÄNDIG&lt;br /&gt;
&lt;br /&gt;
Welche Flags werden bei addcc gesetzt:&lt;br /&gt;
&lt;br /&gt;
a) 0x7FFFFFFC + 0xC&lt;br /&gt;
&lt;br /&gt;
b) 0xFFFFFF9C + 0x6C&lt;br /&gt;
&lt;br /&gt;
Welche Flags werden bei subcc gesetzt:&lt;br /&gt;
&lt;br /&gt;
a) 0x0 - 0x80000000 =&lt;br /&gt;
&lt;br /&gt;
b) 0x0 - 0xffff126 = [letzte Ziffer nicht ganz sicher]&lt;br /&gt;
&lt;br /&gt;
...&lt;br /&gt;
0x7FFFFFFC + 0xC = &lt;br /&gt;
&lt;br /&gt;
...&lt;br /&gt;
&lt;br /&gt;
== Aufgabe 9 ==&lt;br /&gt;
( 15 Punkte )&lt;br /&gt;
&lt;br /&gt;
Was macht dieses Programm:&lt;br /&gt;
&lt;br /&gt;
    funktion:&lt;br /&gt;
        save %sp, -120, %sp&lt;br /&gt;
        mov %i0, %o0          ! %o0 = x&lt;br /&gt;
        &lt;br /&gt;
        smul %o0, %o0, %o3&lt;br /&gt;
        smul %o0, %o3, %o2&lt;br /&gt;
        &lt;br /&gt;
        sll %o2, 2, %o0&lt;br /&gt;
        sll %o2, 3, %o1&lt;br /&gt;
        add %o0, %o1, %o2&lt;br /&gt;
        &lt;br /&gt;
        sll %o3, 1, %o0&lt;br /&gt;
        sll %o3, 4, %o1&lt;br /&gt;
        add %o0, %o1, %o3&lt;br /&gt;
        &lt;br /&gt;
        add %o3, %o2, %o3&lt;br /&gt;
        add %o3, 60, %o0&lt;br /&gt;
        &lt;br /&gt;
        sra %o0, 31, %g1&lt;br /&gt;
        wr %g0, %g1, %y&lt;br /&gt;
        nop&lt;br /&gt;
        nop&lt;br /&gt;
        nop&lt;br /&gt;
        sdiv %o0, 18, %i0&lt;br /&gt;
        &lt;br /&gt;
        jmp %i7+8&lt;br /&gt;
        restore&lt;br /&gt;
&lt;br /&gt;
== Aufgabe 10 ( Extraaufgabe ) ==&lt;br /&gt;
( 30 Punkte )&lt;br /&gt;
&lt;br /&gt;
Was macht das Programm:&lt;br /&gt;
&lt;br /&gt;
    .global psum&lt;br /&gt;
    .section &amp;quot;.rodata&amp;quot;&lt;br /&gt;
    .null: .word 0, 0&lt;br /&gt;
    .section &amp;quot;.text&amp;quot;&lt;br /&gt;
    ! double psum( int n, double x[], double y[] )&lt;br /&gt;
    ! %i0 -&amp;gt; n&lt;br /&gt;
    ! %i1 -&amp;gt; x[]&lt;br /&gt;
    ! %i2 -&amp;gt; y[]&lt;br /&gt;
    psum:&lt;br /&gt;
        save %sp, -120, %sp&lt;br /&gt;
        &lt;br /&gt;
        sethi %hi(.null), %o0&lt;br /&gt;
        ldd [%o0 + %lo( .null )], %f4&lt;br /&gt;
        st %f4, [%fp-16]&lt;br /&gt;
        st %f4, [%fp-12]&lt;br /&gt;
        &lt;br /&gt;
        mov %g0, %i5&lt;br /&gt;
        cmp %g0, %i0&lt;br /&gt;
        bge .ende&lt;br /&gt;
        nop&lt;br /&gt;
        &lt;br /&gt;
    .schleife:&lt;br /&gt;
        ld [%fp-16], %f8&lt;br /&gt;
        ld [%fp-12], %f9&lt;br /&gt;
        &lt;br /&gt;
        mov %i5, %o0&lt;br /&gt;
        sll %o0, 3, %o1&lt;br /&gt;
        &lt;br /&gt;
        add %i1, %o1, %g1&lt;br /&gt;
        ld [%g1], %f4&lt;br /&gt;
        ld [%g1+4], %f5&lt;br /&gt;
        &lt;br /&gt;
        add %i2, %o1, %g1&lt;br /&gt;
        ld [%g1], %f6&lt;br /&gt;
        ld [%g1+4], %f7&lt;br /&gt;
        &lt;br /&gt;
        fmuld %f4, %f6, %f4&lt;br /&gt;
        faddd %f8, %f4, %f4&lt;br /&gt;
        &lt;br /&gt;
        st %f4, [%fp-16]&lt;br /&gt;
        st %f5, [%fp-12]&lt;br /&gt;
        &lt;br /&gt;
        add %i5, 1, %i5&lt;br /&gt;
        cmp %i5, %i0&lt;br /&gt;
        bl .schleife&lt;br /&gt;
        nop&lt;br /&gt;
        &lt;br /&gt;
    .ende:&lt;br /&gt;
        &lt;br /&gt;
        ldd [%fp-16], %f4&lt;br /&gt;
        std %f4, [%fp-8]&lt;br /&gt;
        fmovs %f4, %f0&lt;br /&gt;
        fmovs %f5, %f1&lt;br /&gt;
        &lt;br /&gt;
        jmp %i7+8&lt;br /&gt;
        restore&lt;br /&gt;
&lt;br /&gt;
== Aufgabe 11 ==&lt;br /&gt;
Cache LRU und Beladys&lt;br /&gt;
&lt;br /&gt;
Anzahl Seitenalarme&lt;br /&gt;
&lt;br /&gt;
== Aufgabe 12 ==&lt;br /&gt;
Haupspeichergröße = 2^18&lt;br /&gt;
&lt;br /&gt;
Cachemengen = 32 mit je 4 Cacheblöcken (direct mapped)&lt;br /&gt;
&lt;br /&gt;
Cacheblockgröße = 16 Byte&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In welchen Cachemengen werden die Werte folgender Adressen abgelegt:&lt;br /&gt;
&lt;br /&gt;
a) 01 0110 1010 0100 1010&lt;br /&gt;
&lt;br /&gt;
b) 10 1010 1010 0101 1101&lt;br /&gt;
&lt;br /&gt;
c) 11 0101 0100 1110 1001&lt;br /&gt;
&lt;br /&gt;
d) 00 1001 1110 1011 1010&lt;br /&gt;
&lt;br /&gt;
Geben Sie an wie viele Bit der Adresse auf was verfallen:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Tag:              Bit&lt;br /&gt;
Index:            Bit&lt;br /&gt;
Bytenummer:       Bit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Gedaechtnisprotokoll]]&lt;/div&gt;</summary>
		<author><name>78.54.25.34</name></author>
	</entry>
	<entry>
		<id>https://wiki.mafiasi.de/index.php?title=Ged%C3%A4chtnisprotokoll_RS08-1&amp;diff=5349</id>
		<title>Gedächtnisprotokoll RS08-1</title>
		<link rel="alternate" type="text/html" href="https://wiki.mafiasi.de/index.php?title=Ged%C3%A4chtnisprotokoll_RS08-1&amp;diff=5349"/>
		<updated>2008-03-26T21:05:46Z</updated>

		<summary type="html">&lt;p&gt;78.54.25.34: Die Adressen müssen 18Bit lang sein&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Aufgabe 1 ==&lt;br /&gt;
(5 Punkte)&lt;br /&gt;
&lt;br /&gt;
Wandeln sie die Dezimalzahl 17,125 in eine Binärzahl um mit 6 Vorkomma und 4 Nachkomma.&lt;br /&gt;
&lt;br /&gt;
== Aufgabe 2 ( Extraaufgabe ) ==&lt;br /&gt;
(10 Punkte)&lt;br /&gt;
&lt;br /&gt;
Geben Sie die Dezimalzahl 0,9 als Binärbruch an. Geben Sie dazu die Vorperiode und die Periode sowie die Zahl auf 6 Stellen &#039;neutral&#039; gerundet an.&lt;br /&gt;
&lt;br /&gt;
Vorperiode:&lt;br /&gt;
&lt;br /&gt;
Periode:&lt;br /&gt;
&lt;br /&gt;
neutral Gerundet:&lt;br /&gt;
&lt;br /&gt;
== Aufgabe 3 ==&lt;br /&gt;
(10 Punkte)&lt;br /&gt;
&lt;br /&gt;
Berechnen Sie zur Nachricht 1101001011 die Schutzkette nach dem CRC verfahren. Das Divisionspolynoms ist 10011.&lt;br /&gt;
Geben Sie die geschützte Nachricht (Nachricht + Schutzkette) an.&lt;br /&gt;
&lt;br /&gt;
== Aufgabe 4 ( Extraaufgabe ) ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
a) 0111001&lt;br /&gt;
&lt;br /&gt;
b) 1010000&lt;br /&gt;
&lt;br /&gt;
c)  0100110&lt;br /&gt;
&lt;br /&gt;
d)  1111101&lt;br /&gt;
&lt;br /&gt;
== Aufgabe 5 ==&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
== Aufgabe 6 ==&lt;br /&gt;
&lt;br /&gt;
Gegeben sind folgende DNF&lt;br /&gt;
&lt;br /&gt;
X = /ABC + A/B/C + A/BC + AB/C + ABC&lt;br /&gt;
&lt;br /&gt;
Y = /A/BC + /AB/C + A/BC + AB/C + ABC&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Dadraus wurden mithilfe von KV-Diagrammen die folgenden minimierten DNF erstellt:&lt;br /&gt;
&lt;br /&gt;
a)&lt;br /&gt;
&lt;br /&gt;
X = ....&lt;br /&gt;
&lt;br /&gt;
Y = .....&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Kreuzen Sie alle zutreffenden Aussagen an:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[ ] Die minimierten Terme sind richtig&lt;br /&gt;
[ ] Die minimierten Terme sind falsch&lt;br /&gt;
[ ] Nur X ist richtig&lt;br /&gt;
[ ] Nur Y ist richtig&lt;br /&gt;
[ ] Die minimierten Terme sind richtig, aber vertauscht&lt;br /&gt;
[ ] Die minimierten Terme sind richtig, aber in der falschen Reinfolge&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
b)&lt;br /&gt;
&lt;br /&gt;
Aus den minimierten DNF wurde folgende Schaltung gebaut:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
http://nilstgmd.bplaced.net/data/RS_aufg6b.png&lt;br /&gt;
&lt;br /&gt;
Kreuzen Sie alle richtigen Aussagen an:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[ ] Die Schaltung ist richtig.&lt;br /&gt;
[ ] Die Schaltung ist falsch, weil die Eingänge falsch belegt sind.&lt;br /&gt;
[ ] Die Schaltung ist falsch, weil die Ausgänge falsch belegt sind.&lt;br /&gt;
[ ] Die Schaltung ist richtig, aber alle Ausgänge wurden vertauscht.&lt;br /&gt;
[ ] Die Schaltung ist richtig, aber alle Eingänge wurden vertauscht.&lt;br /&gt;
[ ] Die Schaltung ist richtig, aber aber die Eingäng A und C wurden vertauscht.&lt;br /&gt;
...&lt;br /&gt;
[ ] Keine der Aussagen trifft zu.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
c)&lt;br /&gt;
&lt;br /&gt;
Geben Sie an welche Bedeutung die in der Schaltung verwendeten Symbole als elementare Schaltglieder haben.&lt;br /&gt;
&lt;br /&gt;
d)&lt;br /&gt;
&lt;br /&gt;
Geben Sie an wie oft die elementaren Schaltglieder in der Schaltung verwendet wurden.&lt;br /&gt;
&lt;br /&gt;
== Aufgabe 7 ==&lt;br /&gt;
( 30 Punkte )&lt;br /&gt;
&lt;br /&gt;
Entwicklung einer Taktunterteilung &lt;br /&gt;
die das existierenden Takt-Signal &lt;br /&gt;
derart unterteilt das  jeweils nach &lt;br /&gt;
vier Takten eine 1 am Ausgang &lt;br /&gt;
anliegt.&lt;br /&gt;
&lt;br /&gt;
http://theoneandonlyfoo.th.funpic.de/rs-aufgabe7.png&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
a) Implementations Model:&lt;br /&gt;
 ACHTUNG: Im folgenden sind bereits die Lösungen eingetragen, das ist ja nicht&lt;br /&gt;
 unbedingt der Sinn des Gedächtnisprotokolls, vielleicht sollten wir&lt;br /&gt;
 das nochmal ändern? --[[Benutzer:Olli|Olli]] 03:56, 14. Feb. 2008 (CET)&lt;br /&gt;
&lt;br /&gt;
http://nilstgmd.bplaced.net/data/RS_aufg7a.png&lt;br /&gt;
 &lt;br /&gt;
b) Zustandstabelle:&lt;br /&gt;
&lt;br /&gt;
http://nilstgmd.bplaced.net/data/RS_aufg7b.png&lt;br /&gt;
&lt;br /&gt;
c) Minimierte Ausgangsgleichung:&lt;br /&gt;
&lt;br /&gt;
http://nilstgmd.bplaced.net/data/RS_aufg7c.png&lt;br /&gt;
&lt;br /&gt;
d) Kombinatorische Logik:&lt;br /&gt;
&lt;br /&gt;
http://nilstgmd.bplaced.net/data/RS_aufg7d.png&lt;br /&gt;
&lt;br /&gt;
== Aufgabe 8 ==&lt;br /&gt;
Die Ausgabe der Sparc (inklusive Flags) für folgende Aufgaben&lt;br /&gt;
&lt;br /&gt;
// UNVOLLSTÄNDIG&lt;br /&gt;
&lt;br /&gt;
Welche Flags werden bei addcc gesetzt:&lt;br /&gt;
&lt;br /&gt;
a) 0x7FFFFFFC + 0xC&lt;br /&gt;
&lt;br /&gt;
b) 0xFFFFFF9C + 0x6C&lt;br /&gt;
&lt;br /&gt;
Welche Flags werden bei subcc gesetzt:&lt;br /&gt;
&lt;br /&gt;
a) 0x0 - 0x80000000 =&lt;br /&gt;
&lt;br /&gt;
b) 0x0 - 0xffff126 = [letzte Ziffer nicht ganz sicher]&lt;br /&gt;
&lt;br /&gt;
...&lt;br /&gt;
0x7FFFFFFC + 0xC = &lt;br /&gt;
&lt;br /&gt;
...&lt;br /&gt;
&lt;br /&gt;
== Aufgabe 9 ==&lt;br /&gt;
( 15 Punkte )&lt;br /&gt;
&lt;br /&gt;
Was macht dieses Programm:&lt;br /&gt;
&lt;br /&gt;
    funktion:&lt;br /&gt;
        save %sp, -120, %sp&lt;br /&gt;
        mov %i0, %o0          ! %o0 = x&lt;br /&gt;
        &lt;br /&gt;
        smul %o0, %o0, %o3&lt;br /&gt;
        smul %o0, %o3, %o2&lt;br /&gt;
        &lt;br /&gt;
        sll %o2, 2, %o0&lt;br /&gt;
        sll %o2, 3, %o1&lt;br /&gt;
        add %o0, %o1, %o2&lt;br /&gt;
        &lt;br /&gt;
        sll %o3, 1, %o0&lt;br /&gt;
        sll %o3, 4, %o1&lt;br /&gt;
        add %o0, %o1, %o3&lt;br /&gt;
        &lt;br /&gt;
        add %o3, %o2, %o3&lt;br /&gt;
        add %o3, 60, %o0&lt;br /&gt;
        &lt;br /&gt;
        sra %o0, 31, %g1&lt;br /&gt;
        wr %g0, %g1, %y&lt;br /&gt;
        nop&lt;br /&gt;
        nop&lt;br /&gt;
        nop&lt;br /&gt;
        sdiv %o0, 18, %i0&lt;br /&gt;
        &lt;br /&gt;
        jmp %i7+8&lt;br /&gt;
        restore&lt;br /&gt;
&lt;br /&gt;
== Aufgabe 10 ( Extraaufgabe ) ==&lt;br /&gt;
( 30 Punkte )&lt;br /&gt;
&lt;br /&gt;
Was macht das Programm:&lt;br /&gt;
&lt;br /&gt;
    .global psum&lt;br /&gt;
    .section &amp;quot;.rodata&amp;quot;&lt;br /&gt;
    .null: .word 0, 0&lt;br /&gt;
    .section &amp;quot;.text&amp;quot;&lt;br /&gt;
    ! double psum( int n, double x[], double y[] )&lt;br /&gt;
    ! %i0 -&amp;gt; n&lt;br /&gt;
    ! %i1 -&amp;gt; x[]&lt;br /&gt;
    ! %i2 -&amp;gt; y[]&lt;br /&gt;
    psum:&lt;br /&gt;
        save %sp, -120, %sp&lt;br /&gt;
        &lt;br /&gt;
        sethi %hi(.null), %o0&lt;br /&gt;
        ldd [%o0 + %lo( .null )], %f4&lt;br /&gt;
        st %f4, [%fp-16]&lt;br /&gt;
        st %f4, [%fp-12]&lt;br /&gt;
        &lt;br /&gt;
        mov %g0, %i5&lt;br /&gt;
        cmp %g0, %i0&lt;br /&gt;
        bge .ende&lt;br /&gt;
        nop&lt;br /&gt;
        &lt;br /&gt;
    .schleife:&lt;br /&gt;
        ld [%fp-16], %f8&lt;br /&gt;
        ld [%fp-12], %f9&lt;br /&gt;
        &lt;br /&gt;
        mov %i5, %o0&lt;br /&gt;
        sll %o0, 3, %o1&lt;br /&gt;
        &lt;br /&gt;
        add %i1, %o1, %g1&lt;br /&gt;
        ld [%g1], %f4&lt;br /&gt;
        ld [%g1+4], %f5&lt;br /&gt;
        &lt;br /&gt;
        add %i2, %o1, %g1&lt;br /&gt;
        ld [%g1], %f6&lt;br /&gt;
        ld [%g1+4], %f7&lt;br /&gt;
        &lt;br /&gt;
        fmuld %f4, %f6, %f4&lt;br /&gt;
        faddd %f8, %f4, %f4&lt;br /&gt;
        &lt;br /&gt;
        st %f4, [%fp-16]&lt;br /&gt;
        st %f5, [%fp-12]&lt;br /&gt;
        &lt;br /&gt;
        add %i5, 1, %i5&lt;br /&gt;
        cmp %i5, %i0&lt;br /&gt;
        bl .schleife&lt;br /&gt;
        nop&lt;br /&gt;
        &lt;br /&gt;
    .ende:&lt;br /&gt;
        &lt;br /&gt;
        ldd [%fp-16], %f4&lt;br /&gt;
        std %f4, [%fp-8]&lt;br /&gt;
        fmovs %f4, %f0&lt;br /&gt;
        fmovs %f5, %f1&lt;br /&gt;
        &lt;br /&gt;
        jmp %i7+8&lt;br /&gt;
        restore&lt;br /&gt;
&lt;br /&gt;
== Aufgabe 11 ==&lt;br /&gt;
Cache LRU und Beladys&lt;br /&gt;
&lt;br /&gt;
Anzahl Seitenalarme&lt;br /&gt;
&lt;br /&gt;
== Aufgabe 12 ==&lt;br /&gt;
Haupspeichergröße = 2^18&lt;br /&gt;
&lt;br /&gt;
Cachemengen = 32 mit je 4 Cacheblöcken (direct mapped)&lt;br /&gt;
&lt;br /&gt;
Cacheblockgröße = 16 Byte&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In welchen Cachemengen werden die Werte folgender Adressen abgelegt:&lt;br /&gt;
&lt;br /&gt;
a) 01 0110 1010 0100 1010&lt;br /&gt;
&lt;br /&gt;
b) 10 1010 1010 0101 1101&lt;br /&gt;
&lt;br /&gt;
c) 11 010100 1110 1001&lt;br /&gt;
&lt;br /&gt;
d) 00 1001 1110 1011 1010&lt;br /&gt;
&lt;br /&gt;
Geben Sie an wie viele Bit der Adresse auf was verfallen:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Tag:              Bit&lt;br /&gt;
Index:            Bit&lt;br /&gt;
Bytenummer:       Bit&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Gedaechtnisprotokoll]]&lt;/div&gt;</summary>
		<author><name>78.54.25.34</name></author>
	</entry>
</feed>