Számok ábrázolása számítógépen. Lebegőpontos formátum Negatív számok ábrázolásához használja

30.12.2020 Biztonság

Tantárgy: Számok ábrázolása számítógépen. Fix és lebegőpontos formátum. Közvetlen, fordított és kiegészítő kód.

Ismétlés: Egész számok átalakítása bináris számrendszerré:

13 10 = A 2 Hasonlóképpen:

13 10 =1101 2

1345 10 =10101000001 2


Egész számok ábrázolása számítógépen.

A számítógépek által feldolgozott összes információt bináris formában tárolják. Hogyan történik ez a tárolás?

A számítógépbe bevitt és a működése során keletkezett információk a memóriájában tárolódnak. A számítógép memóriáját úgy képzelheti el, mint egy hosszú oldalt, amely egyedi sorokból áll. Minden ilyen vonalat hívnak memória cella .

Sejt - ez a számítógép memóriájának egy része, amely feldolgozható információkat tartalmaz külön csapat processzor. A minimális címezhető memóriacellát bájtnak nevezzük – 8 bináris számjegy. Egy bájt sorszámát úgy hívják cím .

cella (8 bit = 1 bájt)

gépszó.

Egy memóriacella bizonyos számú homogén elemből áll. Mindegyik elem két állapot egyikében lehet, és egy szám számjegyének egyikét ábrázolja. Ez az oka annak, hogy minden cella elemet hívnak kisülés . A cellában a számjegyek számozása általában jobbról balra történik, a jobb szélső számjegy sorszáma 0. Ez a memóriacella alacsonyrendű számjegye, a legjelentősebb számjegynek sorszáma (n-1) van. egy n bites memóriacella.

Bármely bit tartalma lehet 0 vagy 1.

Egy memóriacella tartalmát ún gépszó. A memóriacella számjegyekre van felosztva, amelyek mindegyike egy számjegyet tárol.

Például a legmodernebb személyi számítógépek 64 bitesek, azaz gépi szó és ennek megfelelően memóriacella, 64 bitből áll, ill. bitek.

Bit - az információ minimális mértékegysége. Minden bit lehet 0 vagy 1. Üt más néven kisülés számítógépes memóriacellák.

A legkisebb memóriacella szabványos mérete nyolc bit, azaz nyolc bináris számjegy. A 8 bites halmaz az adatábrázolás alapegysége - egy bájt.

Byte (angol bájtból - szótag) - egy gépi szó része, 8 bitből áll, számítógépben egy egészként feldolgozva. A képernyőn van egy memóriacella, amely 8 bitből áll - ez egy bájt. A legkisebb jelentőségű számjegy sorszáma 0, a legjelentősebb számjegyé 7.

8 bit = 1 bájt

Két formátumot használnak a számok ábrázolására a számítógép memóriájában: fixpontos formátum És lebegőpontos formátum . Fixpontos formátumban ábrázolva csak egész számok , lebegőpontos formátumban – valós számok (tört).

A számítógép segítségével megoldott problémák túlnyomó többségében sok művelet egész számokkal végzett műveletekre redukálódik. Ide tartoznak a gazdasági jellegű problémák, amelyekben az adat a részvények, alkalmazottak, alkatrészek, járművek stb. Az egész számok a dátumok és időpontok jelzésére, valamint különféle objektumok számozására szolgálnak: tömbelemek, adatbázis-bejegyzések, gépcímek stb.

Az egész számok a számítógépen előjeles vagy előjel nélküli (pozitív vagy negatív) formában jeleníthetők meg.

Előjel nélküli egész számok általábanegy vagy két bájtot foglalnak el a memóriábanés fogadjon el értékeket 00000000-tól egybájtos formátumban 2 11111111-ig 2 és kétbájtos formátumban - 00000000 00000000 2 11111111 11111111 számra 2 .

Előjeles egész számok általában egy, két vagy négy bájtot foglalnak el a számítógép memóriájában, és a bal szélső (legszignifikánsabb) bit a szám előjelére vonatkozó információkat tartalmaz. A pluszjel nulla, a mínusz jel pedig egy.

1101 2 10101000001 2

A jelhez rendelt számjegy

(ebben az esetben +)

Az egész bájtból hiányzó legjelentősebb biteket nullákkal töltjük fel.

BAN BEN számítógépes technológia Az előjeles egész számok rögzítésének (kódolásának) három formája használatos:egyenes kód , vissza kód , további kód .

Közvetlen kód egy szám ábrázolása a kettes számrendszerben, ahol az első számjegy a szám előjeléhez van rendelve. Ha a szám pozitív, akkor az első számjegy 0, ha a szám negatív, az első számjegy egy.

Valójában a közvetlen kódot szinte kizárólag pozitív számokhoz használják.Közvetlen számkód írásához szüksége lesz:

    Egy számot binárisan ábrázol

    Adjon hozzá nullákat egy 8 vagy 16 bites cella utolsó előtti legjelentősebb számjegyéhez

    A legjelentősebb számjegyet a szám előjelétől függően nullával vagy eggyel töltse ki.

Példa: a 3 10 szám egybájtos formátumú közvetlen kódban a következőképpen jelenik meg:


hislo -3 10 egybájtos formátumú közvetlen kódban így néz ki:


Visszatérés kódja mert egy pozitív szám a kettes számrendszerben egybeesik a közvetlen kóddal. Negatív szám esetén a szám minden számjegyét az ellentétükre cseréljük (1 0, 0 1)megfordítani, és az egyiket az előjel számjegyébe kell beírni.

Negatív számokhoz az úgynevezett komplement kódot használjuk. Ez annak köszönhető, hogy kényelmes a számokkal végzett műveletek számítástechnikával.

Kiegészítő kód elsősorban negatív számok számítógépben történő ábrázolására szolgál. Ez a kód kényelmesebbé teszi az aritmetikai műveleteket a számítógépek számára.

A kiegészítő kódban, valamint a közvetlen kódban az első számjegy a szám jelét jelöli. A pozitív számok közvetlen és komplementer kódja megegyezik. Mivel a direkt kódot szinte kizárólag pozitív számok ábrázolására, a komplement kódot pedig negatív számokra használjuk, így szinte mindig, ha az első számjegyben 1 van, akkor komplement kóddal van dolgunk. (A nulla pozitív, az egyes negatív számot jelöl).

Algoritmus egy negatív szám komplementkódjának megszerzésére:

1. Keresse meg a szám közvetlen kódját (konvertálja a számot bináris számrendszerré, előjel nélküli számmá)

2. Kérjen visszaküldési kódot. Módosítsa minden nullát egyre, és mindegyiket nullára (fordítsa meg a számot)

3. Adjon hozzá 1-et a fordított kódhoz

Példa: Keressük meg a decimális szám kiegészítő kódját - 47 16 bites formátumban.

    Keressük meg a 47-es szám bináris reprezentációját (közvetlen kód).

2. Fordítsa meg ezt a számot (fordított kód). 3. Adjon hozzá 1-et a fordított kódhoz, és rögzítse ezt a számot a RAM-ban.

Fontos!

Pozitív számok esetén a direkt, inverz és komplementer kód ugyanaz, azaz. közvetlen kód. Nincs szükség pozitív számok megfordítására ahhoz, hogy számítógépen ábrázoljuk őket!

Miért használják?további kód a negatív szám megjelenítéséhez?

Ez megkönnyíti a matematikai műveletek végrehajtását. Például két szám van a közvetlen kódban. Az egyik szám pozitív, a másik negatív, és ezeket a számokat össze kell adni. Azonban nem lehet csak úgy összecsukni őket. Először a számítógépnek kell kitalálnia, mik a számok. Miután megállapította, hogy egy szám negatív, az összeadási műveletet ki kell cserélnie a kivonási művelettel. Ezután a gépnek meg kell határoznia, hogy abszolút értékben melyik szám nagyobb, hogy megtudja az eredmény előjelét, és eldöntse, hogy miből mit von le. Az eredmény egy összetett algoritmus. Sokkal egyszerűbb számokat összeadni, ha a negatívakat kettő komplementerévé alakítjuk.

Gyakorlati feladat:

1. Feladat. Írja le a következő decimális számok előre, hátra és komplementer kódjait a segítségével!8 bitessejt:

64 10, - 120 10

2. feladat. Írja be a következő decimális számok előre, fordított és komplementer kódjait egy 16 bites rácsba!

57 10 - 117 10 - 200 10

A matematikai számításokban a valós számok nem korlátozzák a számábrázolás tartományát és pontosságát. A számítógépekben azonban a számokat regiszterekben és memóriahelyeken tárolják korlátozott számjegyekkel. Ezért pontosság reprezentáció valós számok, elképzelhető egy autóban, véges és a tartomány korlátozott.

Programokban valós számok írásakor a szokásos vessző helyett pontot szokás használni. Bármely valós szám ábrázolható számok formájában a számrendszer gyökérsorrendjével.

4.4. példa. Az 1,756 decimális szám a számrendszer gyökérsorrendjével írt számok formájában a következőképpen ábrázolható:

1.756 . 10 0 = 0.1756 . 10 1 = 0.01756 . 10 2 = ...

17.56 . 10 -1 = 175.6 . 10 -2 = 1756.0 . 10 -3 = ... .

Lebegőpontos ábrázolás számreprezentációnak nevezzük N bázissal rendelkező számrendszerben q mint :

N = m*. q p ,

Ahol m - a szám összes számjegyét tartalmazó szorzó (mantissza), p - egy rend nevű egész szám.

Ha a "lebegő" pont a mantisszában az első jelentős számjegy előtt található, akkor a mantisszához kiosztott számjegyek fix számával a rögzítés biztosított maximális mennyiség szám jelentõs számjegyei, vagyis egy szám gépben történõ ábrázolásának maximális pontossága.

Ha a mantisszában a pont (vessző) utáni első számjegy különbözik a nullától, akkor egy ilyen számot hívnak. normalizálva .

Mantisza és rend q A radix rendszerben szokás -áris számot írni q , és maga az alap a tizedes rendszerben van.

4.5. példa.Íme példák egy szám normalizált ábrázolására a decimális rendszerben:

2178.01 =0.217801 * 10 4

0.0045 =0.45 * 10 -2

Példák binárisan:

10110,01 = 0,1011001 * 2 101 (101 2 sorrend = 5 10)

A modern számítógépek számos nemzetközi szabványos formátumot támogatnak valós lebegőpontos számok tárolására, eltérő pontossággal, de mindegyiknek azonos a felépítése. A valós szám három részből áll: a mantissza jele, az eltolt sorrend és a mantissza:

Jellegzetes n-bit normalizált szám kiszámítása a következőképpen történik: ha a megbízás ki van osztva k számjegyek, akkor a (2 k -1 -1) eltolás hozzáadódik a kettő komplementer kódjában ábrázolt sorrend valódi értékéhez.

Így a -128 és +127 tartományban lévő értékeket felvevő megbízás 0 és 255 közötti torzított sorrenddé alakul. A torzított sorrend előjel nélküli számként kerül tárolásra, ami leegyszerűsíti a megbízások összehasonlítását, összeadását és kivonását. , és leegyszerűsíti maguknak a normalizált számoknak az összehasonlítását.

A megrendeléshez hozzárendelt számjegyek száma befolyásolja a tartományt a legkisebb nem nulla számtól a legnagyobb számig, amely a gépen a formátumtól függően reprezentálható. Nyilvánvaló, hogy minél több számjegy van a mantisszához hozzárendelve, annál pontosabb a számábrázolás. Tekintettel arra, hogy normalizált valós számok esetén a mantissza legjelentősebb bitje mindig 1, ez a legjelentősebb bit nem kerül tárolásra a memóriában.

Bármely bináris egész szám, amely legfeljebb m számjegy, torzítás nélkül valós formátumra konvertálható.

4.3. táblázat. Szabványos formátumok valós számok ábrázolására

4.6. példa. Normalizált számok ábrázolása egyetlen formátumban.

Illusztráljuk, hogyan kerül tárolásra a 37.16 10 szám. Kettős számmá konvertáláskor a 100101,(00101000111101011100) pontos fordítása nem jön létre - a zárójelbe tett törtrész megismétlődik a periódusban.

A számot normalizált alakra alakítjuk át: 0.100101(00101000111101011100) * 2 110

Képzeljünk el egy valós számot 32 bites formátumban:

1. A szám előjele „+”, ezért a (31) előjelbitbe 0-t írunk be;

2. A sorrend beállításához 8 bit van lefoglalva, a komplementer kódban bemutatott sorrend valódi értékéhez hozzáadjuk az eltolást (2 7 -1) = 127. Mivel a megbízás pozitív, ezért a közvetlen rendelés kódja egybeesik a pótrendeléssel, számoljuk ki az eltolt megbízást: 00000110 + 01111111=10000101

Beírjuk a kapott eltolt sorrendet.

3. Beírjuk a mantisszát, miközben eltávolítjuk a mantissza legjelentősebb számjegyét (mindig egyenlő 1-gyel);

eltolódott sorrend

mantissza

BAN BEN ebben a példában csak 24 bitet tudtunk átvinni, a többi elveszett a számábrázolás pontosságának elvesztésével.

A numerikus adatok feldolgozása számítógépen történik kettes számrendszer segítségével. A számok a számítógép memóriájában bináris kódban, azaz nullák és egyesek sorozataként tárolódnak, és fix vagy lebegőpontos formátumban ábrázolhatók.

Az egész számokat a memória fixpontos formátumban tárolja. Ezzel a számok megjelenítési formátumával egy nyolc memóriacellából (8 bitből) álló memóriaregiszter van lefoglalva a nem negatív egész számok tárolására. A memóriacella minden számjegye mindig a szám ugyanazon számjegyének felel meg, és a vessző a legkisebb jelentőségű számjegy után jobbra, a számjegyrácson kívül található. Például az 110011012 szám a következőképpen kerül tárolásra egy memóriaregiszterben:

4. táblázat

Egy regiszterben fixpontos formátumban tárolható nem negatív egész szám maximális értéke a következő képletből határozható meg: 2n – 1, ahol n a szám jegyeinek száma. A maximális szám 28 lesz - 1 = 25510 = 111111112, a minimum pedig 010 = 000000002. Így a nem negatív egész számok változási tartománya 0 és 25510 között lesz.

Ellentétben a decimális rendszerrel, a bináris számrendszerben a bináris szám számítógépes ábrázolásában nincsenek a szám előjelét jelző szimbólumok: pozitív (+) vagy negatív (-), ezért az előjeles egész számok ábrázolásához a bináris rendszerben két számábrázolási formátumok használatosak: előjeles számérték formátum és kettes komplement formátum. Az első esetben két memóriaregiszter (16 bit) van lefoglalva az előjeles egészek tárolására, és a legjelentősebb számjegy (bal szélső) a szám előjele: ha a szám pozitív, akkor az előjelbitbe 0 kerül. , ha a szám negatív, akkor 1. Például az 53610 = 00000010000110002 szám a következő formában jelenik meg a memóriaregiszterekben:

5. táblázat

és egy negatív szám -53610 = 10000010000110002 a következő formában:

6. táblázat

A maximális pozitív szám vagy minimális negatív szám előjeles számérték formátumban (figyelembe véve egy számjegy előjelenkénti megjelenítését) 2n-1 – 1 = 216-1 – 1 = 215 – 1 = 3276710 = 1111111111111112 és a számok tartománya - 3276710 és 32767 között lesz.

Leggyakrabban az előjeles egész számok bináris rendszerben történő megjelenítésére a kettős komplementer kódformátumot használják, amely lehetővé teszi a kivonás aritmetikai műveletének helyettesítését a számítógépben egy összeadási művelettel, ami jelentősen leegyszerűsíti a mikroprocesszor szerkezetét és növeli a teljesítményét. .

A negatív egész számok ebben a formátumban történő megjelenítéséhez kettős komplement kódot használnak, amely egy negatív szám nullához viszonyított modulusa. A negatív egész szám kettős komplementerré konvertálása a következő műveletekkel történik:


1) írja be a szám modulját közvetlen kódban n (n = 16) bináris számjegyben;

2) kapja meg a szám fordított kódját (fordítsa meg a szám összes számjegyét, azaz cserélje ki az összes egyest nullára, a nullákat pedig egyesekre);

3) adjon hozzá egyet a legkisebb jelentőségű számjegyhez a kapott fordított kódhoz.

Például a -53610 szám esetében ebben a formátumban a modulus 00000010000110002, a kölcsönös kód 1111110111100111, a kiegészítő kód pedig 1111110111101000.

Emlékeztetni kell arra, hogy a pozitív szám komplementere maga a szám.

Előjeles egész számok tárolása a 16 bites számítógépes ábrázolástól eltérő használat esetén két memóriaregiszter(ezt a számformátumot rövid előjeles egész formátumnak is nevezik), a közepes és hosszú előjelű egész szám formátumot használják. A számok középső számformátumban történő megjelenítéséhez négy regisztert használnak (4 x 8 = 32 bit), a számok hosszú számformátumban történő megjelenítéséhez pedig nyolc regisztert (8 x 8 = 64 bit). A közepes és hosszú számformátumok értéktartományai rendre a következők lesznek: -(231 – 1) ... + 231 – 1 és -(263-1) ... + 263 – 1.

A számok fixpontos formátumú számítógépes ábrázolásának megvannak az előnyei és hátrányai. NAK NEK előnyöket Ezek közé tartozik a számok ábrázolásának egyszerűsége és az aritmetikai műveletek végrehajtására szolgáló algoritmusok, hátránya a számok ábrázolásának véges tartománya, amely sok gyakorlati jellegű (matematikai, gazdasági, fizikai stb.) probléma megoldásához elégtelen lehet.

A valós számokat (véges és végtelen tizedesjegyeket) a számítógép lebegőpontos formátumban dolgozza fel és tárolja. Ennél a számábrázolási formátumnál a bejegyzésben a tizedesvessző helye megváltozhat. Bármely K valós szám lebegőpontos formátumban ábrázolható a következőképpen:

ahol A a szám mantisszája; h – a számrendszer alapja; p – számsorrend.

A decimális számrendszerre vonatkozó (2.7) kifejezés a következő formában jelenik meg:

binárishoz -

nyolcashoz -

hexadecimálishoz -

A számábrázolásnak ezt a formáját is hívják Normál . A sorrend megváltoztatásával a vessző eltolódik a számban, vagyis úgy tűnik, hogy balra vagy jobbra lebeg. Ezért normál alakú a számok reprezentációit nevezzük lebegőpontos forma. A 15,5 decimális szám például lebegőpontos formátumban a következőképpen ábrázolható: 0,155 102; 1,55 101; 15,5 100; 155,0 10-1; 1550.0 10-2 stb. A 15.5 lebegőpontos decimális ezt a formáját nem használják íráskor számítógépes programokés számítógépbe bevitele (a számítógépes beviteli eszközök csak lineáris adatrögzítést érzékelnek). Ennek alapján a (2.7) kifejezés a decimális számok ábrázolására és a számítógépbe való beírására formára konvertálódik

ahol P a számsorrend,

azaz a 10-es számrendszer alapja helyett E betűt írnak, vessző helyett pontot, a szorzójelet pedig nem helyezik el. Így a 15,5 szám lebegőpontos és lineáris formátumban (számítógépes ábrázolás) a következőképpen lesz írva: 0,155E2; 1,55E1; 15,5E0; 155,0E-1; 1550.0E-2 stb.

A számrendszertől függetlenül bármely szám lebegőpontos alakban végtelen számú számmal ábrázolható. Ezt a rögzítési formát ún nem normalizált . A lebegőpontos számok egyértelmű ábrázolásához a számírás normalizált formáját használjuk, amelyben a szám mantisszának meg kell felelnie a feltételnek

ahol |A| - a szám mantisszának abszolút értéke.

A (2.9) feltétel azt jelenti, hogy a mantisszának megfelelő törtnek kell lennie, és a tizedesvessző után nullától eltérő számjegyet kell tartalmaznia, vagy más szóval, ha a mantisszában nincs nulla a tizedesvessző után, akkor a számot normalizáltnak nevezzük. . Tehát a 15,5-ös szám normalizált formában (normalizált mantissza) lebegőpontos formában így fog kinézni: 0,155 102, azaz a normalizált mantissza A = 0,155 és P = 2 lesz, vagy a szám számítógépes megjelenítésében 0,155E2.

A lebegőpontos számok rögzített formátumúak, és négy (32 bit) vagy nyolc bájt (64 bit) számítógép memóriáját foglalják el. Ha egy szám 32 bitet foglal el a számítógép memóriájában, akkor ez egy szabályos precíziós szám, ha pedig 64 bit, akkor dupla pontosságú szám. Lebegőpontos szám írásakor a rendszer biteket foglal le a mantissza előjelének, a kitevő előjelének, a mantisszának és a kitevőnek a tárolására. A számsorrendhez hozzárendelt számjegyek száma határozza meg a számok variációs tartományát, a mantissza tárolására kiosztott számjegyek száma pedig meghatározza a szám megadásának pontosságát.

A lebegőpontos formátumban bemutatott számokon végzett aritmetikai műveletek (összeadás és kivonás) során a következő eljárás (algoritmus) valósul meg:

1) a számok sorrendje, amelyen az aritmetikai műveleteket végrehajtjuk, igazodik (a kisebb abszolút szám sorrendje egy nagyobb abszolút szám sorrendjére nő, míg a mantissza ugyanennyivel csökken);

2) aritmetikai műveleteket hajtanak végre a számok mantisszán;

3) a kapott eredményt normalizáljuk.

Gyakorlati rész

| Órák tervezése a tanévre (FSES) | § 1.2. Számok ábrázolása számítógépen

6–7. lecke
§ 1.2. Számok ábrázolása számítógépen

Kulcsszavak:

Kisülés
előjel nélküli egész számok ábrázolása
előjeles egész szám ábrázolása
valós számok ábrázolása

1.2.1. Egész számok ábrázolása

A számítógép RAM-ja cellákból áll, amelyek mindegyike a fizikai rendszer, amely bizonyos számú homogén elemből áll. Ezeknek az elemeknek két stabil állapota van, amelyek közül az egyik nullának, a másik pedig egynek felel meg. Minden ilyen elem az egyik bit - egy bináris szám számjegyének - tárolására szolgál. Ezért minden cellaelemet bitnek vagy számjegynek nevezünk (1.2. ábra).

Rizs. 1.2. Memória cella

Az egész számok számítógépes ábrázolására többféle módszert alkalmaznak, amelyek különböznek egymástól a számjegyek számában (az egész számok általában 8, 16, 32 vagy 64 számjegyből állnak), valamint az előjeles számjegy meglétében vagy hiányában. Előjel nélküli ábrázolás csak nem negatív egész számokhoz használható, negatív számok csak előjeles formában.

Az előjel nélküli ábrázolást olyan objektumokhoz használják, mint a cellacímek, különféle számlálók (például a szövegben lévő karakterek száma), valamint a dátumot és időt jelző számok, méretek grafikus képek pixelben stb.

A nem negatív egész szám maximális értéke akkor érhető el, ha a cella minden bitje tartalmaz egyet. N-bites ábrázolás esetén ez egyenlő lesz 2 n -1-gyel. A minimális szám az n bites memóriában tárolt n nullának felel meg, és egyenlő nullával.

A következők az előjel nélküli n-bites egészek maximális értékei:

Egy előjel nélküli egész szám számítógépes ábrázolásához elegendő a számot bináris számrendszerré alakítani, és a kapott eredményt a bal oldalon nullákkal betömni szabványos számjegykapacitásba.

1. példa. Az 53 10 = 110101 2 szám nyolcjegyű ábrázolásban a következőképpen alakul:

Ugyanaz a tizenhat számjegyű 53-as szám a következőképpen lesz írva:

Előjellel ábrázolva a legjelentősebb (bal oldali) számjegy a szám előjeléhez, a többi számjegy magához a számhoz van rendelve. Ha a szám pozitív, akkor 0 kerül az előjelbitbe, ha a szám negatív - 1. Ezt a számábrázolást direkt kódnak nevezzük.

A számítógépekben közvetlen kódokat használnak a pozitív számok tárolására a tárolóeszközökön, hogy pozitív számokkal végezzenek műveleteket.

A Szövetségi Információs és Oktatási Erőforrások Központjának webhelye (http://fcior.edu.ru/) tartalmazza a „Szám és számítógépes kódja” információs modult. Ezzel az erőforrással kaphat További információ a vizsgált témában.

Negatív számokkal végzett műveletek végrehajtásához további kódot használnak, amely a kivonási műveletet összeadásra cseréli. A kiegészítő kód generálására szolgáló algoritmust a Szövetségi Információs és Oktatási Erőforrások Központjának (http://fcior.edu.ru/) webhelyén található „További kód” információs modul segítségével találhatja meg.

1.2.2. Valós számok ábrázolása

Bármely A valós szám felírható exponenciális formában:

Ahol:

m - a szám mantisszája;

p - számsorrend.

Például a 472 LLC LLC szám a következőképpen ábrázolható: 4,72 10 8, 47,2 10 7, 472,0 10 6 stb.

A számok írásának exponenciális formájával találkozhatott számológéppel végzett számítások során, amikor a következő formájú bejegyzéseket kapta válaszként: 4,72E+8.

Itt az „E” jel a decimális számrendszer alapját jelöli, és a következőképpen értelmezhető: „szorozzuk meg tízzel a hatványhoz”.

A fenti példából láthatja, hogy a tizedesvessző helye egy számban változhat.

A konzisztencia érdekében a mantisszát általában megfelelő törtként írják fel, és a tizedesvessző után egy nem nulla számjegy található. Ebben az esetben a 472 LLC LLC szám 0,472 10 9 lesz.

Egy valós szám 32 vagy 64 bitet foglalhat el a számítógép memóriájában. Ebben az esetben bitek vannak lefoglalva a mantissza jel, parancsjel, rendelés és mantissza tárolására.

Példa:

A valós számok megjelenítési tartományát a számsorrend tárolására allokált bitek száma határozza meg, a pontosságot pedig a mantissza tárolására allokált bitek száma határozza meg.

A számsorrend maximális értéke a fenti példában 1111111 2 = 127 10, ezért a szám maximális értéke:

0,11111111111111111111111 10 1111111

Próbáld meg kitalálni, mi ennek az értéknek a decimális megfelelője.

A tudományos és mérnöki problémák megoldásához fontos a valós számok széles skálája. Ugyanakkor meg kell érteni, hogy az ilyen számok feldolgozására szolgáló algoritmusok munkaigényesebbek, mint az egész számokat feldolgozó algoritmusok.

A LEGFONTOSABB

Az egész számok számítógépen történő ábrázolására többféle módszert alkalmaznak, amelyek a számjegyek számában (8, 16, 32 vagy 64) és az előjeles számjegyek meglétében vagy hiányában különböznek egymástól.

Egy előjel nélküli egész szám ábrázolásához bináris számrendszerré kell konvertálni, és a kapott eredményt a bal oldalon nullákkal kell kitölteni szabványos kapacitásig.

Előjellel ábrázolva a legjelentősebb számjegy a szám előjeléhez, a fennmaradó számjegyek pedig magához a számhoz. Ha a szám pozitív, akkor 0 kerül az előjelbitbe, ha a szám negatív, akkor 1. A pozitív számokat közvetlen kódban, a negatív számokat komplementer kódban tárolja a számítógép.

Amikor valós számokat tárolunk a számítógépben, a bitek a számsorrend előjelét, magát a sorrendet, a mantissza és a mantissza jelét tárolják. Ebben az esetben bármely szám a következőképpen írható:

Ahol:

m - a szám mantisszája;
q - a számrendszer alapja;
p - számsorrend.

Kérdések és feladatok

1. Olvassa el a tankönyv elektronikus mellékletében található bekezdéshez tartozó prezentációs anyagokat! Használja ezeket az anyagokat a kérdésekre adott válaszok elkészítésekor és a feladatok elkészítésekor.

2. Hogyan jelennek meg a pozitív és negatív egész számok a számítógép memóriájában?

3. Bármely egész szám tekinthető valós számnak, de nulla tört résszel. Indokolja meg az egész számok számítógépes ábrázolásának speciális módjait.

4. Jelenítse meg a 63 10 számot előjel nélküli 8 bites formátumban.

5. Keresse meg a számok decimális megfelelőit közvetlen kódjaik segítségével, előjeles 8 bites formátumban:

a) 01001100;
b) 00010101.

6. A 443 8, 101010 2, 256 10 számok közül melyik tárolható 8 bites formátumban?

7. Írja fel a következő számokat természetes alakban!

a) 0,3800456 10 2;
b) 0,245 10-3;
c) 1,256900E+5;
d) 9,569120E-3.

8. Írd fel a 2010.0102 10 számot ötnek! különböző utak exponenciális formában.

9. Írja fel a következő számokat exponenciális formában normalizált mantisszával - egy megfelelő törttel, amely a tizedesvessző után nem nulla számjegyet tartalmaz:

a) 217 ​​934 10;
b) 75321 10;
c) 0,00101 10.

10. Rajzoljon egy diagramot, amely összeköti az ebben a bekezdésben tárgyalt alapfogalmakat!

A számítástechnikában a valós számok (az egész számokkal szemben) olyan számok, amelyeknek törtrészük van.

Amikor írják őket A vessző helyett pontot szokás írni. Így például az 5-ös szám egész szám, az 5,1 és 5,0 pedig valós számok.

A meglehetősen széles tartományból (vagyis nagyon kicsi és nagyon nagy) értékeket felvevő számok megjelenítésének kényelme érdekében a számok írási formája a számrendszer alapsorrendje. Például az 1,25 decimális szám ebben a formában a következőképpen ábrázolható:

1.25*10 0 = 0.125*10 1 = 0.0125*10 2 = ... ,
vagy így:
12.5*10 -1 = 125.0*10 -2 = 1250.0*10 -3 = ... .

Ha a „lebegő” pont a mantisszában az első jelentős számjegy előtt található, akkor a mantisszához kiosztott számjegyek fix számával a számjegyek maximális számát rögzítjük, vagyis a szám maximális pontosságát. reprezentáció a gépben. Ebből adódóan:

A valós számoknak ezt a reprezentációját, amely a legelőnyösebb a számítógép számára, ún normalizálva.

A mantisszát és egy q-es szám sorrendjét általában q bázissal írjuk a rendszerbe, magát az alapot pedig tizedes rendszerbe.

Példák normalizált ábrázolásra:

Tizedes rendszer Bináris rendszer

753,15 = 0,75315*103; -101,01 = -0,10101 * 2 11 (11 2 sorrend = 3 10)

0,000034 = -0,34*10 -4 ; -0,000011 = 0,11*2 -100 (sorrend -100 2 = -410)

A valós számokat a különböző számítógéptípusokban eltérően írják fel. Ilyenkor a számítógép általában lehetőséget ad a programozónak, hogy több számformátum közül válassza ki az adott feladathoz legmegfelelőbbet - négy, hat, nyolc vagy tíz bájt felhasználásával.

Példaként íme az IBM-kompatibilis személyi számítógépek által használt valós számformátumok jellemzői:

Valós számformátumok Méret bájtban Az abszolút értékek hozzávetőleges tartománya A jelentős decimális számjegyek száma
Egyetlen 4 10 -45 ... 10 38 7 vagy 8
Igazi 6 10 -39 ... 10 38 11 vagy 12
Kettős 8 10 -324 ... 10 308 15 vagy 16
Fejlett 10 10 -4932 ... 10 4932 19 vagy 20

Ebből a táblázatból látható, hogy a lebegőpontos számok ábrázolási formája lehetővé teszi, hogy nagy pontossággal és nagyon széles tartományból írjunk számokat.

A lebegőpontos számok tárolásakor ezek kiosztásra kerülnek a mantissza, a kitevő, a számjel és a kitevő jele:

Példákkal mutatjuk be, hogyan írunk fel néhány számot normalizált formában négybájtos formátumban hét bittel a sorrend rögzítéséhez.

1. Szám 6,25 10 = 110,01 2 = 0,11001

  • 2 11:

2. Szám -0,125 10 = -0,0012 = -0,1*2 -10 (a negatív sorrend kettős komplementerben van írva):