petak, 23. studenoga 2012.

Pripreme za osnove informatike-12

Poštovani drago mi je da vam opet mogu pisati razne tutorijale vezane uz osnove informatike. Prije nego što sam počeo pisati ovaj post sjetio sam se jednog trenutka sa državnog natjecanja. Bio je prvi dan i svi smo došli u Primošten kada me najednom pita neki profesor da mu riješim neki zadatak. To je bio profesor Marko Kozina koji je imao učenika Hrvoja Abramovića u kategoriji osnove informatike. Profesor mi je dao listu zadataka koji sam je nekoliko dana prije objavio na blogu zbog vježbanja za državno. Bilo mi je drago i pomogao sam mu i na kraju je njegov učenik osvojio 2. mjesto u , kategoriji punoj osmaša on  je bio jedini sedmaš. Tako da to znači da uz puno truda možete napraviti velike rezultate.
  Danas ću malo objasniti to pitanje što me profesor Kozina pitao, a to je IEEE brojevi ili decimalni brojevi.


Decimalni brojevi sastoje se od dvaju dijelova – cijeloga dijela broja i decimalnoga dijela iza decimalnoga zareza. U računalu koristimo zapis s pomičnim zarezom ili znanstveni zapis. U ovom se slučaju broj prikazuje s jednim cijelim mjestom različitim od nule.
IEEE 754 standard
U prikazu Krajnji lijevi bit je predznak, sljedećih predviđeno je za karakteristiku, ostatak bitova za mantisu (njezin decimalni dio).


Zapiši broj 42,75 u 32-bitnom registru prema IEEE 754 standardu.
1. Pretvaramo cijelobrojni dio broja u binarni.

 42/2=21 0
 21/2=10 1
 10/2=5   0
 5/2=2     1
 2/2=1     0
 1/2=0     1
42(10)=101010(2)
2. Pretvaramo decimalni dio broja u binarni.
 0,75*2=1,5  1
0,5*2=1        1
42,75(10)= 101010,11(2)
3. Brojimo koliko trebamo pomaknuti zarez u lijevo tako da prvi broj binarnog zapisa bude sam u cijelobrojnom zapisu( npr. 1,101001 ili 1,01111111111111010 ili 1,10101).
U ovom slučaju je to  5 mjesta prema lijevo.
I 127 dodamo 5=133.( Uvijek dodajemo broju 127)
Dobiveni broj pretvorimo u binarni zapis.
133/2=66 1
66/2=33   0
33/2=16   1
16/2=8     0
 8/2=4      0
 4/2=2      0
 2/2=1      0
 1/2=0      1
133(10)=10000101(2)
4. Dobivamo rezultat:
 Sada imamo sve potrebno da napišemo broj u IEEE 754 standradu( da ne zaboravite staviti tri E govorite u sebi I triple E)
Ako nam je broj pozitivan onda će nam prvi broj biti 0, ako je negativan onda će biti 1.
Onda nakon toga pišemo dobiveni broj u 3 koraku i nakon toga pišemo decimalni dio zapisa broj sa početka gdje je samo 1 u cijelobrojnom zapisu (mora biti 23 znamenke, ako je potrebno na kraju dodavaj nule)
Rezultat je:

0100 0010 101 010 1100 00 00 00 00 00 00 00


Često se koristi i skraćeni oblik zapisa broja u heksadekadskom obliku: 42AB0000.

Pozdrav i vidmo se u slijedećem predvanju. ;-)

4 komentara:

  1. Pitanje: Gdje se mogu naci zadaci koje je profesor Kozina objavio na blogu, ako smijem znati ?

    OdgovoriIzbriši
  2. Profesor Kozina nije objavljivo nikakve zadatke na našem blogu. On je samo pohvalio pripreme za osnove informatike.
    http://informatikazasve.blogspot.com/2012/04/pripreme-za-osnove-informatike.html
    Hvala na praćenju bloga, Pozdrav
    Informatika za sve

    OdgovoriIzbriši
  3. Ovo ima grešku!?
    " 127 dodamo 5=133" hmmm.. 127 + 5 = 132
    rj. :
    01000010001010110000000000000000
    422B0000

    OdgovoriIzbriši
    Odgovori
    1. I ja sam isto to primjetio, mislim da je njihova pogreška te da je ovo pravi rezultat.

      Izbriši