Fixpontos, lebegőpontos

Slides:



Advertisements
Hasonló előadás
5. Fejezet : Lebegőpontos számok
Advertisements

Pék Ágnes © V4.0/2009 Adatok ábrázolása számítógépen Adatok ábrázolása számítógépen Adatok ábrázolása számítógépen.
Access Adatbáziskezelés
IPv4 címzés.
Az adatábrázolás, adattárolás módja a számítógépekben
Előző órán megbeszéltük hogyan lehet a képet bináris jelekké alakítani
Bevezetés az informatikába
Racionális számok számítógépi ábrázolása
ADATBÁZIS KEZELÉS – Adattípusok
Volumetrikus szivattyúk
Halmazok, műveletek halmazokkal
Műveletek logaritmussal
Gyűrűk Definíció. Az (R, +, ·) algebrai struktúra gyűrű, ha + és · R-en binér műveletek, valamint I. (R, +) Abel-csoport, II. (R, ·) félcsoport, és III.
Alhálózat számítás Osztályok Kezdő Kezdete Vége Alapértelmezett CIDR bitek alhálózati maszk megfelelője A /8 B
Függvénytranszformációk
Bevezetés az informatikába
Bevezetés az informatikába
Csernoch Mária Adatábrázolás Csernoch Mária
Csernoch Mária Adatábrázolás Csernoch Mária
Prototípuskészítés Verilog nyelven Screen Saver Készítette: Mészáros Péter.
SZÁMRENDSZEREK SZÁMÁBRÁZOLÁS
4. Fejezet : Az egész számok (integer) ábrázolása
SZÁMÁBRÁZOLÁS.
Az információ és kódolása Kovácsné Lakatos Szilvia
Miskolci Egyetem Informatikai Intézet Általános Informatikai Tanszé k Pance Miklós Adatstruktúrák, algoritmusok előadásvázlat Miskolc, 2004 Technikai közreműködő:
1 Programozás alapjai GEIAL312B (ANSI C) BSc (Bachelor of Science) / Alap képzés 2005/2006. őszi félév Miskolci Egyetem Általános Informatikai Tanszék.
AVL fák.
2 tárolós egyszerű logikai gép vázlata („feltételes elágazás”)
2-es, Számrendszerek 10-es és 16-os Készítette: Varga Máté
Lineáris függvények.
Szám - számrendszer 564,2 = 5* * * *10-1
Fixpontos, lebegőpontos
Miben hasonlítanak egymásra a mai és az ötvenes évek számítógépei? Takács Béla Melyek a közös tulajdonságaik ?
Az abszolút értékes függvények ábrázolása
Alapismeretek Számítógépes adatábrázolás
Programozás módszertan I. 10.B
Adatok ábrázolása számítógépen
Kommunikáció.
Számítástechnika matematikai alapjai
Adatábrázolás, kódrendszerek
Az információ és kommunikáció technológiája
Számrendszerek.
Egy első generációs gép (az IAS) felépítése
A lineáris függvény NULLAHELYE GYAKORLÁS
Objektum orientált programozás
Elektronikus tananyag
Bináris szám-, karakter- és képábrázolás
Alapismeretek Számítógépes adatábrázolás
és a Venn-Euler diagrammok
Készítette: Pandur Dániel
Táblázatkezelés KÉPLETEK.
Mikroökonómia gyakorlat
INFOÉRA 2006 Nagypontosságú aritmetika I.
Informatika Dr. Herdon Miklós Dr. Fazekasné dr. Kis Mária Magó Zsolt
Írja fel a tizes számrendszerbeli
Free pascal feladatok
Kettes számrendszer.
Számítógépek felépítése 2. előadás egyszerű gépek, adatábrázolás
Adat és információ. Információ, tudás  A latin informatio = felvilágosítás, tájékoztatás, oktatás szóból  Minden, ami megkülönböztet  Új ismeretté.
Információ.
INFOÉRA 2006 Nagypontosságú aritmetika III.
Bevezetés az informatikába Számrendszerek
Mikroprocesszorok és mikrokontrollerek Programozás és digitális technika ismétlés utolsó frissítés: 2016.VIII.26.
IP címzés Gubó Gergely Konzulens: Piedl Péter Neumann János Számítástechnikai Szakközépiskola Cím: 1144 Budapest Kerepesi út 124.
Számábrázolás.
Alhálózat számítás Osztályok Kezdő Kezdete Vége Alapértelmezett CIDR bitek alhálózati maszk megfelelője A /8 B
Digitális Elektronika
Számrendszerek.
Egy egyszerű gép vázlata
Számítógép architektúrák
Előadás másolata:

Fixpontos, lebegőpontos Számábrázolás Fixpontos, lebegőpontos

Fixpontos ábrázolás A fixpontos számábrázolás lényege, hogy a szám kettes számrendszerbeli számjegyeit egy rögzített nagyságú memóriaterületen tároljuk, a szám helyi értékeinek megfelelően. Ez leggyakrabban: 1 bájt méretű 2 bájt méretű szó melyet WORD-nek nevezünk 3 bájt méretű szó melyet DWORD-nek nevezünk

Fixpontos ábrázolás Meghatározott továbbá az is,hogy hol helyezkedik el a szám egész és törtrészét elválasztó jel a tizedesvessző. Minden számítógépnél a tizedespontnak rögzített helye van és a gép a tárolt bitsorozatot ennek megfelelően értelmezi. Egy bájt esetén a számok tartománya 0-tól 255-ig terjed. A 8 bites adatok kezelhetők párban is, egy 16 bitből álló fixpontos szám ként.

Fixpontos ábrázolás A fixpontos számokkal a 2-es számrendszerben műveleteket tudunk végezni. Például összeadhatunk két 16 bites számot. Kivonást a következő féleképpen végezhetjük el: a kivonandó 2-es komplemensét hozzáadjuk a kisebbítendőhöz persze ehhez tudni kell azt hogy mi az a komplemens.

Kettes komplemens Egy szám kettes komplemensét úgy képezzük, hogy a pozitív számot bitenként invertáljuk, majd hozzáadunk egyet. Például ábrázoljuk a -22 számot kettes komplemens kódban nyolc biten:

Fixpontos ábrázolás Ebben a ábrázolási módban a bináris pont helye - ami a bal oldalon található egészeket elválasztja a jobb oldalon lévő törtektől - rögzített, és a számokat többnyire kettes komplemens kódban ábrázolják. A számok ábrázolásának két fontos jellemzője van a felhasználás szempontjából: az ábrázolandó számok nagysága az ábrázolás pontossága

Fixpontos ábrázolás A két jellemző az alkalmazott regisztermérettől és bináris pont helyétől függ. Ha a bináris pontot balra toljuk el, akkor a számok ábrázolási tartománya csökken az ábrázolás pontossága nő ha bináris pont a regiszter bal szélén van, akkor a szám fixpontos tört. Ha pedig a bináris pont jobbra mozdul, akkor a számok ábrázolási tartománya nő az ábrázolás pontossága csökken ha a bináris pont a regiszter jobb szélén van, akkor a szám fixpontos egész.

Fixpontos ábrázolás Ábrázoljuk például az N = -12,7510 számot egy 32 bites regiszterben, ahol a törtek számára 11 bit van fenntartva. A negatív számokat kettes komplemens kódban tárolják. A számot először kettes számrendszerbe alakítjuk át: -12,7510 = 1100,0112

Ezután ábrázoljuk a pozitív számot, majd vesszük a kettes komplemensét. Az adott formátumban ábrázolt N számot hexadecimálisan is leolvashatjuk. (Vigyázat, ez nem azonos az N hexadecimális értékével!) N: FFFF9A0016

Lebegőpontos ábrázolás Általános formája: f2e Az f egy bináris tört, a mantissza vagy más néven törtrész, az e pedig a kettő hatványkitevője, exponense. Három mező alkot tehát egy lebegőpontos számot: Előjel Exponens Mantissza

Lebegőpontos ábrázolás Mikor egy lebegőpontos számot ábrázolunk számítógépen akkor 2 fixpontos számot, a mantisszát, és az exponenst kell együtt kezelnünk. A lebegőpontos számok pontos tárolási formáját pontosságuk határozza meg. Leggyakrabban az egyszeres, dupla és bővített pontosságú lebegőpontos számokat használjuk.

Lebegőpontos ábrázolás Az előjel mező egyetlen bit. Értéke 1,ha a lebegőpontos szám negatív és 0 ,ha pozitív. Az exponens mező a hatványkitevőt tartalmazza, ennek mérete: 8 bit egyszeres pontosságú számnál 11 bit dupla pontosságú számnál 15 bit bővített pontosságú számnál

Lebegőpontos ábrázolás A mantissza tartalmazza a szám törtrészét. Ennek értéke lehet: Egyszeres pontosságú számnál 23 bit, Dupla pontosságú számnál 52 bit, Bővített pontosságú számnál 64 bit a mérete.

Lebegőpontos ábrázolás A számokat ebben az esetben normalizált alakban használjuk. ahol    N2    az ábrázolandó bináris szám           M      normalizált mantissza           E       karakterisztika A mantisszát leggyakrabban előjeles abszolút értékes formátumban tárolják. A normalizálásra kétféle gyakorlat terjed el.

Törtre normalizálás A bináris pontot addig toljuk el, amíg a mantissza értéke 1/2 és 1 közötti értékű nem lesz. Például: N2 = 0,00010110012 = 0,1011001˙2-3 Mivel a 2-1 helyértéken lévő bit mindig 1 értékű, ezért a szám eltárolása előtt kiveszik. Ezt implicitbitnek hívják. Így a tárolt mantissza (m) értéke: m: 011001000..

Egészre normalizálás Ez esetben a normalizált mantissza értéke 1 és 2 közé esik. Például: N2 = 0,00010110012 = 1,011001˙2-4 Itt az egészek helyén áll mindig 1, ezért tárolása szükségtelen. A tárolt mantissza azonos az előzővel: m: 011001000.. Természetesen műveletvégzés előtt mindkét esetben a nem tárolt biteket vissza kell helyezni, hiszen ellenkező esetben hibás eredményt kapnánk.

A karakterisztikához egy egész számot adnak hozzá, és így tárolják A karakterisztikához egy egész számot adnak hozzá, és így tárolják. Ezt a megoldást eltolt vagy ofszet karakterisztikának hívják. Az eltolásra azért van szükség, hogy a karakterisztikát eltoljuk a pozitív számok tartományába, és így nem kell az előjelét ábrázolni. Az eltolás mértékére (d) két megoldás használatos: d = 2k-1 - 1 d = 2k-1 ahol k a karakterisztika ábrázolására szánt bitek száma. Így az eltolt karakterisztikát (c) a c = E + d összefüggéssel számíthatjuk ki.

Például legyen egy szám karakterisztikája 4, amit nyolc biten ábrázolunk, és használjuk a d = 2k-1 eltolást: A lebegőpontos számok ábrázolásának egységesítésére született az ANSI/IEEE 754 szabvány, amellyet a nagy processzorgyártók (INTEL, MOTOROLA, stb.) is használnak. Ez a szabvány háromféle lebegőpontos formát ír elő: szimpla pontosság  32 bit dupla pontosság     64 bit belső pontosság     80 bit

s  a mantissza előjele c  eltolt karakterisztika (d = 2k-1 - 1) m  előjeles abszolút értékes, egészre normalizált mantissza A fenti jelöléseket használva egy lebegőpontos szám értéke a következő képlettel számítható ki: N = (-1)s˙(1,m)˙2c-d

Példa ábrázoljuk az N = -12,7510 számot szimpla pontosságú formátumban! Először átalakítjuk kettes számrendszerbe, majd egészre normalizáljuk: N = -12,7510 = -1100,112 = -1,10011˙23 Mivel az N előjele negatív, ezért s = 1. A normalizált mantisszából elveszünk az egészek helyén álló egyest, és nullákkal egészítjük ki az alacsonyabb helyértéken, tehát az ábrázolt mantissza: m: 10011000.. Mivel a karakterisztikát 8 biten ábrázoljuk, ezért d = 12710 = 111111112. A karakterisztikához hozzáadjuk az eltolást:

A kiszámított s, c és m értékeket behelyettesíthetjük az adott formátumba: Az ábrázolt számot hexadecimálisan leolvasva: N: C14C000016 Természetesen ez nem azonos az N szám tizenhatos számrendszerbeli értékével, ezért nem használtunk egyenlőségjelet.