Kolokwium grupy 13i, 07.01.2013:

1. Znaleźć okres ( o ile istnieje ) w rozwinięciach dwójkowych liczb podanych dziesiętnie:

a) 11.11

b) 240 i 16/17

2. Co to za liczba dziesiętna zapisana jako binarna: 0.00(0111) [2]

3. W 16 bitowym rejestrze procesora jest stałopozycyjna liczba w zapisie hexadecymalnym 8D0B. Podać tę liczbę w zapisie ósemkowym. Co to za liczba w zapisie dziesiętnym?

4. Przedstawić w postaci ciągu dwójkowego w 16 bitowym rejestrze procesora: cecha - pierwsze 6 bitów, pozostałe - mantysa, liczby: a) -5984. oraz b) 0.021484375

5. Zapisać podane wyrażenia w ONP podając kolejne zawartości stosu:

 x=y=(a*U[q*r^s/(-p-t)]+b*t)^B(s/t-u*w/p)+(a*l+b*k)^l;
 

6. Przetłumaczyć instrukcję podstawienia na ONP, a następnie podać zapis rejestrowy (docelowy, półskompilowany) realizujący to podstawienie, przyjmując że procesor posiada 4 rejestry i stos:

m=n=p=(-1)^(m+n+p)*(m+n+p)

7. Jaką instrukcję podstawienia realizuje poniższy program docelowy (w zapisie rejestrowym)?:

1. r0 = f

2. r1 = x

3. r1 = -r1

4. r2 = k

5. r1 = r1 ^ r2

6. r2 = y

7. r2 = -r2

8. r3 = k

9. r2 = r2 ^ r3

10. r1 = r1 + r2

11. r0 ← r1

8. Strzelec trafia w „10” z prawdopodobieństwem 0.9; wiadomością jest uzyskanie k dziesiątek w 4 strzałach, k⇐4. Obliczyć średnią ilość informacji zawartą w takiej wiadomości.

9. Przy rzucie dwiema kostkami wiadomością jest uzyskanie określonego iloczynu punktów. Obliczyć redundancję kodu jednoznacznego, w którym wszystkie słowa kodowe mają równą długość i długość ta jest minimalna.

10. Co realizuje podana (w języku C) funkcja cotojest?

           
           cotojest(s1,s2)
           char *s1,*s2;
           {double atof(),v1,v2;
           char ftoa();
           v1 = atof(s1);
           v2 = atof(s2);
           if(v1<v2) return(-1);else if(v1>v2)return(1);else return(0);}
          

Należy rozpisać działanie funkcji atof i ftoa.