Strikerfi I
09.12.41


Lokaprf 13. desember 1993


Leyfileg hjlparggn: Kennslubkur og fyrirlestrantur


1. [10%] Tlva hefur haran disk me 32 pltum (skrifa allar hliar), 32 geirum spori og 512 btum hverjum geira.
a) Hva er miki gagnamagn hverjum svalning (cylinder)?
b) Ef hmarks flutningshrai disksins er um 640 KB sekndu hver er snningshrainn (mii vi a aeins s hgt a lesa af einni hli einnar pltu einu)?
c) Ef diskurinn getur samtals geymt 220 MB hva hefur hann mrg spor?
d) Ef a tekur 5 msek. a fra hausinn milli samliggjandi spora hvernig vri best a raa geirunum sporin (stagger) til a lgmarka snningstf egar veri er a lesa geira r.



2. [10%] kvenir treikningar krefjast hlutfallslegrar nkvmni (.e. hlutfallslegur munur milli hlistra fleytitalna) upp 2 og einnig arf a vera hgt a tkna tlur allt a 10. Hver er smsta fleytitala af IEEE ger sem getur tkna slkar tlur? i eigi sem sagt a hanna nja ger IEEE fleytitalna me eins fum bitum brothluta og veldishluta og mgulegt er, sem uppfylla ofangreindar krfur.



3. [10%] egar ggn eru villukdu me Endurbttu afer Hammings er best a hafa gagnapakkana sem minnsta, v eru meiri lkur v a aeins veri tvr ea frri villur eim. mti kemur a v minni sem pakkarnir eru, eim mun fleiri vera varbitarnir hlutfalli vi gagnabita.
Segjum a vi hefum jppunarafer, sem jappai ggnunum niur helming ess sem au voru. Ef vi beitum n Endurbttu Hamming aferinni jppuu ggnin, hva mttum vi hafa gagnapakkana litla til a ggnin sem kmu t r villukduninni vru jafnstr og upprunalegu ggnin fyrir jppunina?
En ef jppunin jappai aeins niur 2/3 af upphaflegri str?



4. [10%] tskri nkvmlega hva gerist 8086-forritsbtinum a nean.
                 xor   bx, bx
         aftur:  add   bl, al
                 adc   bh, 0
                 inc   byte ptr [cs:smb + 1]
         smb:    cmp   al, 0
                 ja    aftur



5. [25%] Hr a nean er fall sem reiknar t heiltluveldi sem fstum margfldunum.
        fall veldi(heiltala b, heiltala e)
            ef e = 0 
                skila 1
            ef e = 1 
                skila b
            ef (e mod 2) = 0 
                skila veldi(b, (e div 2))
            annars
                skila (veldi(b, (e div 2)))*b
            endir
        endir
Skrifi veldi sem endurkvmt fall sem hgt er a kalla r Borland C++. Setji a upp annig a a s forminu:
        unsigned int veldi( unsigned short b, unsigned short e);
Falli arf lka a passa a ekki veri yfirfli (overflow), en a skila 0 og htta.



6. [10%] Tlvur eru anna hvort "big-endian" ea "little-endian" eftir v hvaa r innan ors btin eru. Little-endian tlvur, eins og 8086, geyma lgra bti fremst, en big-endian tlvur, eins og 68000, geyma hrra bti fremst. N eru a koma marka tlvur sem eru "bi-endian", v hgt er a skipta um "endianess" eim. Einn biti stugistinu segir til um a hvaa r a nota. Lsi nkvmlega hvernig essar tlvur geta fari a v a breyta um "endianess" og sni dmi, bi um tveggja bta or og fjgurra bta or.



7. [10%] i eftirfarandi forritsbt yfir HP PA-RISC smalaml. Geri r fyrir a breyturnar su gistum.
            if (a == b)
                c++
            else
                d += 4;
Til a f alla 10 punktana fyrir dmi m smalamlsforriti aeins vera rjr skipanir. i fi 5 punkta ef notaar eru fjrar skipanir og san frri punkta ef fleiri skipanir eru notaar.



8. [15%] Vi skulum lta nja afer vi a kvara hvaa su a henda t sndarminni. Aferin gti kallast Vxlun, og felst v a sunum er haldi r og hvert sinn sem vsa er su x frist hn fram um eitt sti rinni (.e., henni er vxla vi suna sem er undan rinni). egar henda arf t su er valin s sa sem er aftast rinni. Nja san kemur san inn aftast rina (nst aftast ef vsa er hana leiinni).
a) tskri nkvmlega uppsetningu essari afer.
b) Beri aferina saman vi LRU, FIFO og NRU. Ri kosti og galla. Hefur Vxlunaraferin einhverja augljsa galla?
c) Sni hvernig hgt vri a setja upp nlgun Vxlunaraferinni 486 gjrvanum me v a nota eingngu a minni sem til staar er sutflum (og tfluskrnni).