1 / 30

1 2 . čas Pokretni zarez

1 2 . čas Pokretni zarez. IEEE754-2008 ( dekadna osnova ). Standard IEEE 754-2008. Standard IEEE 754-2008 usvojen je avgusta 2008. godine. Zamenjuje prethodne verzije standarda IEEE 754 i IEEE 854 Standardnom se uvodi mogućnost zapisa brojeva pomoću dekadne osnove

fauve
Download Presentation

1 2 . čas Pokretni zarez

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 12. čas Pokretni zarez IEEE754-2008 (dekadna osnova)

  2. Standard IEEE 754-2008 • Standard IEEE 754-2008 usvojen je avgusta 2008. godine. • Zamenjuje prethodne verzije standarda IEEE 754 i IEEE 854 • Standardnom se uvodi mogućnost zapisa brojeva pomoću dekadne osnove • Dopune prethodnog standarda vezano za binarnu osnovu

  3. Predstavljanje brojeva u dekadnoj osnovi • Softverski – brzina rada nije zadovoljavajuća jer se softver stara o zapisu brojeva i operacijama nad njima. • Hardverski • BCD zapis (fiksni zarez – nedostaci su relativno složeno izvođenje operacija, znatno sporije od binarne osnove) • Pokretni zarez (IEEE 754-2008) – trenutno samo neki od procesora hardverski podržavaju ovakav zapis (npr IBM z serija)

  4. Zapis u registrima računara • Realne brojeve u dekadnoj osnovi u računaru treba zapisati u registre iste dužine kao i pri zapisu realnih brojeva u pokretnom zarezu pomoću binarne osnove. • Zapis treba da bude u obliku znak, frakcija i eksponent. • Zapis treba da bude moguć u jednostrukoj, dvostrukoj i četvorostrukoj tačnosti. • Zapis treba da omogući precizno zapisivanje dekadnih cifara bez konverzije

  5. Zapis u registrima računara • Preciznost zapisa treba da bude uporediva sa preciznošću zapisa dekadnih brojeva pomoću binarne osnove. • Potrebno je primeniti kodiranje koje omogućuje zapisivanje svih potrebnih podataka u dovoljnoj tačnosti (u slučaju BCD kodiranja javlja se problem) • Treba predvideti zapis specijalnih vrednosti • Definisati pravila za izvođenje operacija

  6. Packed Decimal Encoding (PDP) • Mehanizam predstavljanja 3 dekadne cifre pomoću 10 bitova. • Dekadno kodiranje, Densely Packed Decimal (DPD) – IBM • Binarno kodiranje, Binary Integer Decimal (BID) – INTEL

  7. Densely Packed Decimal kodiranje • Kodira 3 dekadne cifre u 10 bita • 20% efikasnije kodiranje od BCD zapisa • Deli cifre na male (0-7) i velike (8-9) na osnovu vrednosti prvog bita u BCD kodu • Male cifre zahtevaju tri bita za predstavljanje, a velike jedan bit kako bi se međusobno razlikovale

  8. Densely Packed Decimal kodiranje • Kodiranje razmatra svaku od kombinacija tri cifre: • Sve tri cifre su male: potrebno je 10 bitova (3+3+3 za cifre, 1 bit da označi ovu kombinaciju) • Dve cifre su male: potrebno je 7 bitova za cifre (3+3+1); preostala 3 bita označavaju kombinaciju • Jedna cifra je mala: potrebno je 5 bitova za cifre (3+1+1); preostalih 5 bitova označavaju kombinaciju • Sve cifre su velike: potrebna su 3 bita za cifre (1+1+1); preostalih 7 (mada je potrebno samo 5) označavaju kombinaciju

  9. Brojevi • Brojevi mogu biti: • Konačni • Specijalne vrednosti • Brojevi su zapisani pomoću: • Znaka broja (0 za pozitivne, 1 za negativne) • Frakcije (zapisuje se kao celobrojna vrednost veća ili jednaka nuli) • eksponenta • U zavisnosti od komponenti, jedna ista vrednost može biti zapisana na različite načine! • Iz tog razloga, njegova reprezentacija ne mora da bude normalizovana.

  10. Klase brojeva • Postoje iste klase brojeva kao i kod binarne osnove: • Označena nula • Subnormalni brojevi (denormalizovani brojevi) • Normalni (normalizovani brojevi) • Beskonačno • NaN (tihi i signalni)

  11. Napomene (DPD) • Kodiranje jedne ili dve dekadne cifre je uvek desno poravnato u grupi od 10 bitova, dok su ostali bitovi 0. Kodirane dekadne cifre se zato mogu zapisati u polju veće dužine dopunjavanjem nula sa leve strane, bez potrebe za ponovnim kodiranjem. • Svi brojevi u intervalu [0,79] se kodiraju desno poravnato na isti način kao u BCD (8421) kodu.

  12. Šematski prikaz kodiranja • Cifre C1C2C3 zapisane u BCD zapisu (abcd)(efgh)(ijkm) postaju (pqr)(stu)(v)(wxy) gde je:

  13. Šematski prikaz dekodiranja • Cifre (pqr)(stu)(v)(wxy) postaju (abcd)(efgh)(ijkm) koje predstavljaju BCD zapis cifara C1C2C3

  14. Formati zapisa

  15. Vrednost broja • Vrednost broja predstavljenog u pokretnom zarezu pomoću dekadne osnove se određuje na sledeći način: • Ako su 5 bitova kombinacije u intervalu 00000-11101, u pitanju je konačan broj. • Ako su 5 bitova kombinacije jednaki 11110, vrednost broja je ±∞, u zavisnosti od znaka broja. • Ako su 5 bitova kombinacije jednaki 11111, vrednost broja je NaN (SNaN ako je bit najveće težine polja NE jednak 1, inače QNaN).

  16. Dekadno kodiranje • Dekadne cifre u nastavku frakcije kodirane su DPD algoritmom. • Dve cifre najveće težine eksponenta i cifra najveće težine frakcije određuju se na osnovu 5 bitova kombinacije.

  17. Intervali brojeva

  18. Primeri zapisa brojeva pomoću dekadnog kodiranja

  19. Uporedni prikaz zapisa nekih brojeva pomoću binarne, heksadekadne i dekadne osnove

  20. Uporedni prikaz zapisa nekih brojeva pomoću binarne, heksadekadne i dekadne osnove

  21. Primer 1 • Zapisati broj +123.4 u pokretnom zarezu pomoćcu dekadne osnove u jednostrukoj tačnosti, koristeći dekadno (DPD) kodiranje. • Rešenje: Broj koga treba zapisati predstavimo u obliku +1234*10−1. Vrednosti cifara u zapisu broja su: • 1. Broj koga treba zapisati je pozitivan - znak broja je 0. • 2. Frakcija broja je 1234. Dopunimo frakciju do maksimalnog broja cifara za jednostruku tačnost (7). Dobijeni broj koga treba da kodiramo je 0001234. Kodiraju se 6 cifara manje težine u dva dekleta, dok se cifra najveće težine kodira u polju za kombinaciju. Primenom DPD kodiranja dobija se (npr. na osnovu tabele shematskog prikaza kodiranja): • 0 0 1 2 3 4 Dekadni zapis • abcd efgh ijkm abcd efgh ijkm • 0000 0000 0001 0010 0011 0100 BCD zapis • 000 000 0 001 010 011 0 100 DPD dekleti • pqr stu v wxy pqr stu v wxy

  22. Primer 1 • 3. Eksponent je jednak -1 i uz uvećanje 101 dobija se 100. Prevod dobijene vrednosti u binarni brojni sistem je 01100100. Odavde je nastavak eksponenta 100100, dok se prva dva bita 01 kodiraju u kombinaciji. • 4. Kombinacija treba da kodira cifru 0 (cifra frakcije) i dva bita najveće težine eksponenta (binarne cifre 01). Kako je 0 cifra frakcije, na osnovu pravila za predstavljanje sledi da je kombinacija = 01000. • Odavde, zapis broja +123.4 je 0 01000 100100 0000 0000 0101 0011 0100

  23. Primer 2 • Primer 2: Zapisati broj -243/13 u pokretnom zarezu pomoću dekadne osnove u jednostrukoj • tačnosti, koristeći dekadno (DPD) kodiranje. • Rešenje: Dobijeni količnik zapišimo pomoću 7 dekadnih cifara u obliku znak, farkcija i eksponent. • Kako je 243/13=18.69230769... pretpostavimo da je odabrano takvo pravilo zaokruživanja da jerezultat zaokružen na 7 cifara jednak 18,69230 (primedba: i za zapis pomoću dekadne osnove važeista pravila zaokruživanja!). • Broj koga treba zapisati predstavimo u obliku -1869230*10−5. Vrednosti cifara u zapisu broja su: • 1. Broj koga treba zapisati je negativan → znak broja je 1. • 2. Frakcija broja je 1869230. Kodiraju se 6 cifara manje težine u dva dekleta, dok se cifranajveće težine kodira u polju za kombinaciju. Primenom DPD kodiranja dobija se (npr. naosnovu tabele shematskog prikaza kodiranja):

  24. Primer 2 • 8 69 23 0 Dekadni zapis • abcd efgh ijkmabcd efgh ijkm • 1000 0110 1001 0010 0011 0000 BCD zapis • 110 010 1 111 010 011 0 000 DPD dekleti • pqr stu v wxy pqr stu v wxy • 3. Eksponent je jednak -5, i uz uvećanje 101 dobija se 96. Prevod dobijene vrednosti u binarnibrojni sistem je 01100000. Odavde je nastavak eksponenta 100000, dok se prva dva bita 01kodiraju u kombinaciji. • 4. Kombinacija treba da kodira cifru 1 (cifra frakcije) i dva bita najveće težine eksponenta(binarne cifre 01). Kako je 1 cifra frakcije, na osnovu pravila za predstavljanje sledi da jekombinacija = 01001. • Odavde, zapis broja -243/13 je 1 01001 100000 1100 1011 1101 0011 0000

  25. Primer 3

  26. Primer 3

  27. Primer 4

  28. Primer 4

  29. Zadaci za vežbu

  30. Zadaci za vežbu

More Related