Reprezentarea numerelor în computer. Reprezentarea numerelor întregi și a numerelor reale în memoria calculatorului

Oricine și-a gândit vreodată viața pentru a deveni o persoană "IT" sau un administrator de sistem și pur și simplu pentru a conecta soarta cu hardware-ul computerului,

cunoașterea modului în care reprezentarea numerelor în memoria calculatorului, absolut necesar. La urma urmei, aceasta este baza unor limbi de programare de nivel scăzut, cum ar fi Assembler. Prin urmare, astăzi vom lua în considerare reprezentarea numerelor în computer și plasarea lor în celulele de memorie.
reprezentarea numerelor într-un calculator

Sistem de numere

Dacă citiți acest articol, atunci, cel mai probabil, știți deja despre acest lucru, dar merită repetat. Toate datele din calculatorul personal sunt stocate în binar sistem numeric. Aceasta înseamnă că orice număr trebuie prezentat în forma corespunzătoare, adică constând în zerouri și altele.

Pentru a traduce numerele zecimale obișnuite pentru noi, la un computer ușor de înțeles, trebuie să folosim algoritmul descris mai jos. Există și calculatoare specializate.

Deci, pentru a traduce un număr într-un sistem de numere binare, trebuie să luăm valoarea aleasă de noi și să o împărțim cu 2. După aceea vom obține rezultatul și restul (0 sau 1). Rezultati din nou impartiti 2 si amintiti restul. Această procedură trebuie repetată până când rezultatul este de asemenea 0 sau 1. Apoi scrieți valoarea finală și reziduurile în ordinea inversă, așa cum le-am primit.

Acesta este modul în care numerele sunt reprezentate în computer. Orice număr este scris în formă binară și apoi ocupă o locație de memorie.

reprezentarea numerelor reale într-un calculator

memorie

După cum trebuie să știți deja, unitatea minimă de informații este de 1 biți. După cum am văzut deja, reprezentarea numerelor în computer are loc în format binar. Astfel, fiecare bit de memorie va fi ocupat de o singură valoare - 1 sau 0.

Pentru stocare numere mari celulele sunt utilizate. Fiecare astfel de unitate conține până la 8 biți de informații. Prin urmare, putem concluziona că valoarea minimă în fiecare segment de memorie poate fi de 1 byte sau poate fi un număr binar de opt cifre.

întreg

În cele din urmă, am ajuns la locația directă a datelor din computer. Așa cum sa spus deja, mai întâi procesorul transmite informațiile într-un format binar și doar atunci îl plasează în memorie.

Vom începe cu cea mai simplă versiune, care este reprezentarea numerelor întregi în computer. Memoria PC alocă acest proces unui număr ridicol de celule - doar unul. Astfel, maximul într-un slot poate fi de la 0 la 11111111. Să traducem numărul maxim în forma obișnuită a înregistrării.
X = 1 × 27 + 1 × 26 + 1 × 25 + 1 × 24 + 1 × 23 + 1 × 22 + 1 × 21 + 1 × 20 = 1 × 28 - 1 = 255.

Acum vedem că într-o celulă de memorie valoarea poate varia de la 0 la 255. Totuși, aceasta se aplică numai pentru numerele întregi care nu sunt negative. Dacă calculatorul trebuie să scrie o valoare negativă, totul va merge puțin diferit.

reprezentarea numerelor în memoria calculatorului

Numere negative

Acum, să vedem cum sunt reprezentate numerele în computer, dacă sunt negative. Pentru a plasa o valoare mai mică decât zero, sunt alocate două celule de memorie sau 16 biți de informații. În acest caz, 15 merge sub numărul însuși, iar primul bit (extrem de stâng) este dat sub semnul corespunzător.

Dacă cifra este negativă, se scrie "1", dacă este pozitivă, apoi "0". Din motive de simplitate a amintirii, putem face o analogie: dacă există un semn, atunci setați 1, dacă nu este, atunci nimic (0).

Restul de 15 biți de informații sunt atribuite unui număr. Similar cu cazul precedent, ei pot pune un maxim de cincisprezece unități. Este de remarcat faptul că înregistrarea numerelor negative și pozitive este semnificativ diferită una de cealaltă.

Pentru a plasa o valoare în cele 2 celule de memorie mai mari decât zero sau egale cu ea, se folosește așa-numitul cod direct. Această operație se efectuează în același mod în care a fost descris și maximul A = 32766, dacă folosim sistemul numeric zecimal. Vreau doar să observ că în acest caz, "0" se referă la pozitiv.

reprezentarea numerelor întregi într-un calculator

exemple

Reprezentarea numerelor întregi în memoria calculatorului nu este o sarcină atât de dificilă. Deși este ceva mai complicat, dacă are un înțeles negativ. Pentru a scrie un număr mai mic decât zero, se utilizează un cod suplimentar.

Pentru a obține acest lucru, aparatul efectuează o serie de operații auxiliare.

  1. Mai întâi, modulul de număr negativ este scris în notație binară. Adică, computerul își amintește o valoare similară, dar pozitivă.
  2. Apoi, fiecare bit de memorie este inversat. Pentru a face acest lucru, toate unitățile sunt înlocuite cu zerouri și invers.
  3. Adăugați "1" la rezultat. Acesta va fi codul suplimentar.

Iată un exemplu ilustrativ. Să presupunem că avem un număr X = -131. Mai întâi primim modulul | X | = 131. Apoi îl traducem într-un sistem binar și îl scriem în 16 celule. Obținem X = 0000000010000011. După inversare, X = 1111111101111100. Adăugăm "1" la acesta și obțineți codul invers X = 1111111101111101. Pentru a scrie pe o locație de memorie pe 16 biți, numărul minim este X = - (215) = - 32767.

Lungi întregi



După cum puteți vedea, reprezentarea numerelor reale într-un computer nu este atât de dificilă. Cu toate acestea, acest interval poate să nu fie suficient pentru majoritatea operațiunilor. Prin urmare, pentru a putea găzdui numere mari, computerul alocă din memorie 4 celule sau 32 de biți.

Procesul înregistrării nu diferă de cel prezentat mai sus. Așa că dăm doar gama de numere care pot fi stocate într-un anumit tip.

Xmax= 2 147 483 647.

Xmin= - 2 147 483 648.

reprezentarea numerelor întregi în memoria calculatorului

Aceste valori sunt, în majoritatea cazurilor, suficiente pentru înregistrarea și efectuarea operațiilor cu date.

Reprezentarea numerelor reale într-un calculator are avantaje și dezavantaje. Pe de o parte, această tehnică facilitează efectuarea operațiunilor între valori întregi, ceea ce accelerează semnificativ activitatea procesorului. Pe de altă parte, acest interval nu este suficient pentru a rezolva majoritatea problemelor legate de economie, fizică, aritmetică și alte științe. Prin urmare, acum vom lua în considerare următoarea metodă pentru superuniverse.

Punct mobil

Acesta este ultimul lucru pe care trebuie să știți despre reprezentarea numerelor pe un computer. Deoarece la înregistrarea fracțiunilor există o problemă de determinare a poziției virgulei în ele, se utilizează o formă exponențială pentru a plasa astfel de cifre în computer.

Orice număr poate fi reprezentat în următoarea formă: X = m * pn. Unde m este mantisa unui număr, p este baza sistemului numeric și n este ordinea numărului.

Pentru a standardiza înregistrarea numerelor cu puncte plutitoare, se utilizează următoarea condiție, conform căreia modulul mantisă trebuie să fie mai mare sau egal cu 1 / n și mai mic de 1.

Să presupunem că ni se dă un număr de 666.66. Să-l aducem într-o formă exponențială. Se pare că X = 0.666666 * 103. P = 10 și n = 3.

Valorile în virgulă mobilă sunt de obicei alocate 4 sau 8 octeți (32 sau 64 de biți). În primul caz, acest lucru se numește numărul de acuratețe ordinară, iar în al doilea caz se numește dublă precizie.

Dintre cei 4 octeți alocate pentru stocarea numerelor, 1 (8 biți) indicate mai jos pe datele de procedură și semnul ei, și 3 octeți (24 biți) pentru stocarea mantisa lasă amprenta și pe aceleași principii ca și pentru valorile întregi sale. Știind asta, putem face calcule simple.

Valoarea maximă a n = 11111112= 12710. Pe baza acesteia, putem obține dimensiunea maximă a unui număr care poate fi stocat în memoria calculatorului. X = 2127. Acum putem calcula mantisa maximă posibilă. Va fi 223 - 1 ge- 223 = 2(10 × 2,3) 1000 Ge2.3 = 10(3 x 2,3) 10 Ge7. Ca rezultat, am obținut o valoare aproximativă.

Dacă acum combinăm ambele calcule, obținem o valoare care poate fi scrisă fără pierderea a 4 octeți de memorie. Va fi egal cu X = 1,701411 * 1038. Numerele rămase au fost eliminate, deoarece această precizie permite această metodă de înregistrare.

reprezentarea numerelor întregi și a numerelor reale într-un calculator

Precizie dublă

Deoarece toate calculele au fost descrise și explicate în paragraful anterior, aici vom spune totul pe scurt. Pentru numerele cu dublă precizie, de obicei 11 biți sunt alocate pentru comandă și semn, precum și 53 de biți pentru mantisă.

Π = 11111111112= 102310.

M = 252 -1 = 2(10 * 5,2) = 10005.2 = 1015.6. Ne întoarcem la partea mai mare și obținem numărul maxim X = 21023 cu o precizie de "m".

Sperăm că informațiile cu privire la reprezentarea numerelor întregi și a numerelor reale în calculator, ne-am furnizat, este util să vă în formare și va fi un pic mai clar decât ceea ce este de obicei scris în manuale.

Distribuiți pe rețelele sociale:

înrudit
Upgrade PC: cum să măriți memoria RAMUpgrade PC: cum să măriți memoria RAM
Memorie externă a computeruluiMemorie externă a computerului
Sistemul de numere este un tabel ternar. Cum se traduce într-un sistem de numere ternareSistemul de numere este un tabel ternar. Cum se traduce într-un sistem de numere ternare
Numerologie. Semnificația numerelor și interacțiunea lorNumerologie. Semnificația numerelor și interacțiunea lor
Cum de a crește RAM-ul computerului.Cum de a crește RAM-ul computerului.
Pentru ce este sistemul de numere hexazecimale?Pentru ce este sistemul de numere hexazecimale?
Poveste adevărată despre apariția numerelorPoveste adevărată despre apariția numerelor
Cum funcționează calculatorul și ce include acesta?Cum funcționează calculatorul și ce include acesta?
Rotunjirea numerelor în programarea WEBRotunjirea numerelor în programarea WEB
Sistemul numărului zecimal: baza, exemple și traducerea în alte sisteme numericeSistemul numărului zecimal: baza, exemple și traducerea în alte sisteme numerice
» » Reprezentarea numerelor în computer. Reprezentarea numerelor întregi și a numerelor reale în memoria calculatorului