CATEGORII DOCUMENTE |
Reprezentarea interna a numerelor intregi
Un numar binar este o colectie de cifre binare ponderate fiecare cu o putere a lui 2. Bitul corespunzator ponderii celei mai mari, situat cel mai in stanga, se numeste MSB (Most Significand Bit) iar cel corespunzator ponderii celei mai mici, situat cel mai in dreapta, se numeste LSB (Less Significand Bit). In cazul reprezentarii binare a numerelor naturale, reprezentarea externa (cea perceputa de operatorul uman) si cea interna (cea prelucrata de procesorul calculatorului) sunt asemanatoare. Cum pentru operatorul uman operatorii '+' sau '-' semnifica faptul ca un numar este pozitiv sau negativ, este necesara o conventie pentru reprezentarea interna a numerelor intregi negative.
Aceasta conventie prevede folosirea MSB pentru reprezentarea semnului numerelor intregi. Daca numarul este pozitiv, se adauga in pozitia MSB bitul de semn '0', iar daca numarul este negativ se utilizeaza in pozitia MSB bitul de semn '1'. Mai mult, numerele negative se reprezinta in asa numitul complement fata de 2.
Reprezentarea numerelor intregi negative in complement fata de 2
Aceasta forma de reprezentare a numerelor negative necesita parcurgerea urmatorilor pasi:
pas1. Se reprezinta modulul numarului negativ, folosind bit de semn (egal cu 0, evident)
pas2. Se complementeaza toti bitii numarului astfel obtinut. Complementarea inseamna transformarea bitului 0 in bitul 1 si a bitului 1 in bitul 0.
pas3. Numarul astfel obtinut se aduna cu 1.
De exemplu, sa reprezentam numarul -37.
pas1. |-37| = 37
pas2. 0100101---->1011010
pas3. 1011010 + 1 = 1011011 => -3710 = 10110112
Evident, MSB este bitul de semn si este egal cu 1.
La o prima vedere, este posibil sa credem ca prin utilizarea complementului fata de 2 putem pierde semnificatia numarului negativ. Pentru a vedea ce numar negativ este reprezentat, putem repeta procedeul de mai sus si obtinem reprezentarea numarului pozitiv dat de modulul sau.
O modalitate mai simpla este alocarea ponderii corespunzatoare bitului de semn dar pe care o consideram ca reprezinta un numar negativ. Astfel:
10110112 = -1x26 + 1x24 + 1x23 + 1x21 + 1x20 = -64 + 27 = -37
Politica de confidentialitate | Termeni si conditii de utilizare |
Vizualizari: 1675
Importanta:
Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved