FormacijaFakulteti i univerziteti

Što je broj u pokretnom zarezu?

Oblik predstavljanja stvarnih (ili stvarnih) brojeva, gde su pohranjeni kao mantisa i eksponenta, su brojevi sa plutajućim tačkama (možda tačka, kao što je uobičajeno u englesko-govornim zemljama). Uprkos tome, broj se dobija sa fiksnom relativnom tačnošću i različitim apsolutom. Predstavljanje koje se najčešće koristi odobrava se standardom IEEE 754. Matematičke operacije, u kojima se koriste brojevi sa plutajućim tačkama, implementiraju se u računarskim sistemima - i hardverom i softverom.

Tačka ili zarez

U detaljnoj listi Decimalnog separatora naznačene su zemlje na engleskom i engleskom govornom jeziku, gde se u brojevima evidentira da je frakcijski deo odvojen od celog dela tačkom, te se stoga terminologija ovih zemalja naziva plutajuća tačka - "plutajuća tačka". U Ruskoj Federaciji, frakcioni deo celine tradicionalno je odvojen zapovjedom, zbog čega istorijski priznat termin "brojevi sa plutajućim tačkama" označava ovaj pojam. Ipak, i danas iu tehničkoj dokumentaciji iu literaturi na ruskom jeziku obe ove varijante su prilično prihvatljive.

Termin "brojevi sa plutajućim tačkama" dolazi od činjenice da pozicijska reprezentacija broja predstavlja zarez (običnog decimalnog ili binarnog - računara) koji se može uklapati bilo gdje između brojeva stringa. Ova karakteristika se mora posebno razmatrati. To znači da se predstavljanje brojeva sa plutajućim tačkama može smatrati računarskom implementacijom eksponencijalnog unosa broja. Prednost korištenja ovakvog predstavljanja nad predstavljanjem formata sa fiksnom zarezom i cijelim brojem jeste da raspon vrijednosti raste znatno, dok relativna tačnost ostaje nepromijenjena.

Primjer:

Ako je zareza u broju fiksirana, onda je možete zapisati u samo jednom formatu. Na primjer, dati su šest bitova celog broja i dva bita u frakcionom dijelu. Ovo se može učiniti samo na ovaj način: 123456,78. Format brojeva sa plutajućim tačkama pruža potpun opseg za izražavanje. Na primjer, date su osam bita. Varijante snimka mogu biti sve dok programer ne mora da napravi dvocifreno dodatno polje, gde će zapisati eksponate, koji su obično 10, od 0 do 16, a ukupan broj će biti deset: 8 + 2.

Neke opcije za pisanje koje dozvoljavaju format brojeva sa plutajućim tačkama: 12345678000000000000; 0.0000012345678; 123,45678; 1,2345678 i tako dalje. Ovaj format ima čak i jedinicu za mjerenje brzine! Umesto toga, brzina računarskog sistema, koja određuje brzinu kojom računar obavlja operacije, gdje postoji predstavljanje brojeva sa plutajućim tačkama. Ovo se mjeri u smislu FLOPS (operacije sa plutajućim tačkama u sekundi, što znači kao broj operacija u sekundi sa brojevima sa plutajućim tačkama). Ova jedinica je glavna u merenju brzine računarskog sistema.

Struktura

Da bi napisao broj u formatu sa plutajućim tačkama, potrebno je na sledeći način, poštujući sekvencu potrebnih delova, jer je ovaj unos eksponencijalan, gdje su stvarni brojevi predstavljeni kao mantisa i redosled. Ovo je neophodno za predstavljanje prevelikih i premalih brojeva, mnogo je zgodnije da ih pročitate. Obavezni delovi: snimljeni broj (N), mantisa (M), znak reda (p) i red (n). Poslednja dva karaktera karakterišu broj. Prema tome, N = M. N str . Dakle, brojevi su napisani plivajućim zarezom. Primeri će biti raznovrsni.

1. Potrebno je zapisati broj jedan milion kako ne bi zbunili nule. 1000000 je normalni unos, aritmetički. Računar izgleda ovako: 1.0 . 10 6 . To jest, deset u šestom stepenu - tri karaktera, što odgovara čak šest nula. Na taj način se pojavljuje brojevi sa fiksnim i plutajućim tačkama, gde možete odmah otkriti razlike u pravopisu.

2. Takav težak broj od 1435000000 (jedna milijarda i četiri stotine trideset hiljada) se jednostavno može zapisati: 1,435 . 10 9 , samo. Slično tome, možete napisati bilo koji broj sa znakom minus. Ovde se brojevi fiksne i plutajuće tačke razlikuju jedni od drugih.

Ali to su veliki brojevi, kako se baviti malim? Da, previše je lako.

3. Na primer, kako odrediti milioniti? 0.000001 = 1.0 . 10 -6 . Značajno olakšati pisanje broja i njegovo čitanje.

4. I još teže? Pet stotina i četrdeset šest milijardi: 0.000000546 = 546 . 10 -9 . Evo. " Opseg reprezentacije brojeva sa plutajućim tačkama je veoma širok.

Obrazac

Oblik broja može biti normalan ili normalizovan. Normalno - uvek primećuje preciznost brojeva sa plutajućim tačkama. Treba napomenuti da je mantisa u ovom obliku, bez uzimanja u obzir znaka, na pola kroz interval: 0 1, pa 0 ⩽ a <1. Broj ne gubi tačnost u normalnom obliku. Nedostatak normalnog oblika broja jeste to što se mnogi brojevi mogu pisati na različite načine, to jest, dvosmislen. Primjer drugog zapisa istog broja: 0.0001 = 0, 000001 . 10 2 = 0.00001 . 10 1 = 0,0001 . 10 0 = 0,001 . 10 -1 = 0,01 . 10 -2 , tako da i dalje možete puno. Zato se u informatičkoj nauci koristi još jedan normalizovan oblik zapisa, pri čemu mantisa decimalnih brojeva uzima vrijednost od jedne (uključujući) i do deset (ne uključujuće), a na isti način mantisa binarnog broja vrijedi od jedne (uključujući) do dvije (ne Inclusive).

Dakle, 1 ≤ a <10. To su binarni brojevi sa plutajućim tačkama, a ovaj oblik pisanja uništava bilo koji broj (osim nule) jedinstveno. Ali postoji i nedostatak - nemogućnost u ovom obliku je nula. Dakle, kompjuterska nauka obezbeđuje korištenje posebne karakteristike (bit) od broja 0. Cjeloviti dio broja (najviša cifra) mantisa u binarnom broju osim nule u normalizovanom obliku je 1 (implicitna jedinica). Ovaj zapis koristi standard IEEE 754. Sistemi numeracije, gdje je osnova veća od dva (ternary, quaternary i drugi sistemi), ova svojstva nisu nabavljena.

Pravi brojevi

Brojevi sa plutajućim tačkama sa plutajućim tačkama obično su jedini način, jer to nije jedini, već vrlo zgodan način predstavljanja stvarnog broja, kakav je bio kompromis između opsega vrednosti i preciznosti. Ovo je analog od eksponencijalnog zapisa upravo izvršenog na računaru. Broj sa plutajućim tačkom je skup pojedinačnih bitova odvojenih znakom, redom (eksponentom) i mantisom (mantis). Najčešći IEEE 754 format je broj sa plutajućom tačkom kao skup bitova koji kodiraju jedan dio mantise, drugi deo je snaga, a jedan znak označava broj znakova: nula je ako je pozitivna, jedinica ako je broj negativan. Celokupna porudžbina je napisana kao cijeli broj (kod sa smicom), a mantisa je u normalizovanoj formi, njen frakcijski dio je u binarnom sistemu.

Svaki znak je jedan bit, što označava znak za potpuno plutajuće tačke. Mantisa i red su celi brojevi, oni su kombinovani sa znakom i prikazuju brojeve sa plutajućim tačkama. Nalog se može nazvati eksponentom ili eksponatom. Nisu svi realni brojevi mogli biti predstavljeni na računaru u njihovom tačnom značenju, dok ostatak predstavljaju približne vrijednosti. Mnogo jednostavnija varijanta je predstavljanje stvarnog broja sa fiksnom tačkom, gdje se stvarni i svi dijelovi čuvaju odvojeno. Najverovatnije, na taj način da ceo deo uvek bude raspodijeljen X bita, i frakcija - Y bita. Ali procesorska arhitektura ne poznaje ovaj metod, i stoga se daje prednost broju sa plutajućim tačkama.

Dodatak

Dodavanje brojeva sa plutajućim tačkama je prilično jednostavno. U vezi sa standardom IEEE 754, jedinstvena preciznost broja ima ogroman broj bitova, pa je bolje ići direktno na primere, a bolje je uzeti najmanju zastupljenost broja sa plutajućim tačkama. Na primjer, dva broja - X i Y.

Varijabilni Sign Izlagač Mantissa
X 0 1001 110
Y 0 0111 000

Koraci su:

A) Brojevi moraju biti predstavljeni u normalizovanom obliku. Očigledno je da se pojavljuje skrivena jedinica. X = 1.110 . 2 2 i Y = 1.000 . 2 0 .

B) Proces dodavanja može se nastaviti samo jednakom eksponatima, a za to je potrebno prenijeti vrijednost Y. To će odgovarati vrijednosti normalizovanog broja, iako će u stvari biti denormalizovano.

Izračunajte razliku eksponata stepena 2 - 0 = 2. Sada pomerite mantisu da nadoknadite ove promene, odnosno dodajte 2 eksponatu druge sume, čime pomerate zapovinu skrivene jedinice na dvije tačke na lijevo. To daje 0.0100 . 2 2 . Ovo će biti ekvivalentno prethodnoj vrednosti Y, to jest već Y '.

C) Sada moramo da savijemo mantice broja X i prilagođenih Y.

1,110 + 0,01 = 10,0

Eksponent je i dalje jednak prikazanom indikatoru X, što je jednako 2.

D) Količina primljena u prethodnoj fazi pomerila je jedinicu normalizacije, tako da je potrebno da premestite eksponenta i ponovite sumiranje. 10.0 sa dva bita levo od zareza, sada se broj mora normalizovati, tj. Pomeriti zarez u levo za jednu tačku i povećati eksponenciju za 1. Ovo se ispostavilo da je 1.000 . 2 3 .

E) Vreme je pretvaranje broja plutajuće tačke u jedan-bajtni sistem.

Iznos Sign Izlagač Mantissa
X + Y 0 1010 000

Zaključak

Kao što vidite, dodavanje takvih brojeva nije previše teško, ništa što zapeta ne plaća. Ako, naravno, ne uzimamo u obzir smanjenje broja sa manjim eksponentom na veći broj (u primjeru koji je bio Y do X), kao i restauracija statusa quo, odnosno izdavanja kompenzacije - kretanje zareza lijevo od mantise. Kada je dodatak već napravljen, to je vrlo moguće i još jedna poteškoća - renormalizacija i bitna skraćenost, ako njihov broj ne odgovara formatu broja koji će ga predstaviti.

Množenje

Binarni sistem nudi dva načina razmnožavanja brojeva sa plutajućim tačkama. Ovaj zadatak se može izvršiti množenjem, koji počinje sa najmanje značajnim bitovima i koji počinje sa najvišim ciframa u množitelju. Oba slučaja sadrže niz operacija, uzastopno sabiraju privatne radove. Ove dodatne operacije kontrolišu bitovi multiplikatora. Stoga, ako postoji jedna u jednoj od cifara multiplikatora, onda se zbir parcijalnih proizvoda povećava pomnožen sa odgovarajućim smjenama. A ako se nulta multiplikuje u množitelju, onda multiplikacija nije dodata.

Ako se napravi umnožavanje samo dva broja, onda brojke proizvoda u njegovoj količini ne mogu premašiti broj cifara sadržanih u faktorima više od dva puta, a za velike brojeve to je vrlo, vrlo mnogo. Ako se nekoliko brojeva pomnoži, onda postoji opasnost da uređaj ne postavi na ekran. Zbog toga je broj cifara bilo kog digitalnog automata u potpunosti konačan, što nas tera da se maksimalno ograničimo na broj cifara totalizatora. A ako je broj cifara ograničen, greška neizbežno ulazi u rad. Ako je obim izračunavanja velik, onda se greške nadimaju, a kao rezultat, ukupna greška u velikoj meri se povećava. Ovde je jedini način da se zaokruže rezultati množenja, onda će se greška proizvoda ispasti naizmenično. Kada se izvrši operacija množenja, moguće je ići izvan mreže cifara, ali samo sa strane nižeg reda, pošto je ograničenje nametnuto brojevima koji su predstavljeni u podpičnom obliku fiksirane.

Neka objašnjenja

Bolje je prvo da počnemo. Najčešći način predstavljanja broja jeste niz cifara kao cijeli broj, pri čemu se zarez mora značiti na samom kraju. Ovaj niz može biti od bilo koje dužine, a zarez je na najkorisnijem mestu za njega, razdvajajući ceo broj sa delimičnog dela. Format predstavljanja sistema sa fiksnim tačkama neizbežno postavlja određene uslove za lokaciju zareza. Eksponencijalna oznaka koristi standardnu normalizovanu reprezentaciju brojeva. Ovo je aqn {\ displaystyle aq ^ {n}} aq n . Ovde {\ displaystyle a} a , a ova čipka se naziva mantisa. Upravo o ovome rečeno je da 0 ⩽ a n je ceo broj, pokazatelj, a q {/ displaystyle q} q je takođe celobroj, što je osnova datog broja sistema (iu slovu je obično 10). Mantisa će ostaviti zarez nakon prve cifre, što nije ništa, ali se dodaje na stvarnu vrednost broja.

Broj sa plutajućim tačkom je vrlo sličan standardnom standardnom notaciji za brojeve, samo se eksponat i mantisa evidentiraju zasebno. Ovo je takođe u normalizovanom formatu - sa fiksnom zarezom, koja krasi prvu značajnu cifru. Jednostavno plutajuće zareze uglavnom se koriste u računaru, odnosno u elektronskoj zastupljenosti, gdje sistem nije decimalni, već binarni, gdje se čak i mantisa denormalizuje sa zarezom - sada je to pre prve cifre, pa prije i nakon nje, gdje ceo deo U principu, to ne može biti. Na primjer, naš izvorni decimalni sistem će dati svoj devet binarnom sistemu za privremeno korištenje. I ona će je napisati tako sa plutajućim tačkom mantisa poput ovoga: +1001000 ... 0, i +0 ... 0100 na to. Međutim, decimalni sistem ne može proizvesti takve složene proračune što je više moguće u binarnom obliku, koristeći formu sa plutajućim tačkama.

Duga aritmetika

U elektronskim računarima postoje ugrađeni softverski paketi, gde je programirana memorijska veličina za mantisu i eksponent, ograničena samo na veličinu memorije računara. Ovako izgleda duga aritmetika, to jest jednostavna operacija na brojevima koje računar vrši. Sve je to isto - oduzimanje i dodavanje, podela i množenje, elementarne funkcije i erekcija do korena. Ali samo su brojevi potpuno različiti, njihova dubina bitova može znatno premašiti dužinu računarske riječi. Implementacija takvih operacija nije hardverski, već softver, ali osnovni hardver se široko koristi u radu sa numerički mnogo nižim porudžbenicima. Postoji i aritmetika, gde je dužina brojeva ograničena isključivo na količinu memorije - proizvoljna precizna aritmetika. Duga aritmetika se koristi u mnogim oblastima.

1. Da bi se kompilovao kod (procesori, nisko-bitni mikrokontroleri - 10 bitova i 8-bitni bitni registri, ovo očigledno nije dovoljno za obradu informacija pomoću Analogno-digitalnog, pa stoga ne radi bez dugačke aritmetike.

2. Također je dug aritmetika se koristi za kriptografiju, gdje je potrebno kako bi se osigurala točnost rezultat stepenovanje ili množenja do 10,309. Integer aritmetika se koristi modulo m - veliki prirodni broj, i nije nužno jednostavno.

3. Softver za finansijere i matematičara, takođe, nije bez dugo aritmetike, jer je jedini način da se provjeriti rezultate proračuna na papiru - uz pomoć računala, osiguravajući visoku preciznost brojeva. Floating point mogu uključivati bilo koji broj dugih pražnjenja. Ali proračuni inženjering i rad naučnika zahtijevaju programa proračuna intervencije vrlo često, jer je vrlo teško napraviti unos podataka bez pravljenja grešaka. oni su obično mnogo obimniji nego zaokruživanja rezultata.

Fight sa greškama

Kada je broj operacija u kojoj je s pomičnim zarezom, to je vrlo teško procijeniti točnost rezultata. još nije izmislio zadovoljenje svih matematičku teoriju koja bi pomoći u rješavanju ovog problema. Ali cijeli broj pogreške ocijeniti lako. Mogućnost da se oslobodimo nepreciznosti na površini - samo koristiti samo broj fiksnih tačke. Na primjer, finansijski program izgrađena na ovom principu. Međutim, postoje jednostavniji: potreban broj znamenki nakon decimalne točke je poznat unaprijed.

Druge aplikacije nisu ograničene na, jer ne možete raditi s bilo vrlo malo ili vrlo velikom broju. Dakle, kada radite uvijek uzima u obzir da mogu postojati nepreciznosti, i zato što je izvođenje rezultata potrebno je krug. Osim toga, automatsko zaokruživanje je često nedostatak akcije, a samim tim i Obračunska jedinica je posebno definisana. Vrlo opasno u tom pogledu, operacija usporedbu. Postoji čak i procijeniti iznos budućih grešaka je izuzetno teško.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 bs.delachieve.com. Theme powered by WordPress.