Reprezentări ale numerelor cu semn

Reprezentările numerelor cu semn sunt utilizate pentru a rezolva problema reprezentării numerelor întregi negative în binar. Problema pe care o ridică încercarea de a stoca semnul negativ (-) al unui număr binar este că nu mai există stări care să poată fi utilizate pentru a reprezenta atribuirea negativă. Nu este posibil să se folosească doar "oprit" pentru minus și "pornit" pentru plus, deoarece calculatorul nu ar avea cum să știe dacă este vorba de o cifră sau de un semn.

Pentru a depăși această problemă, proiectanții de computere au inventat două metode de stocare a numerelor binare negative: semnul și mărimea și complementul lui 2. Acestea produc reprezentări alternative pentru numerele cu semn.

 

Semne și magnitudini

Semn și mărime funcționează prin schimbarea bitului cel mai semnificativ (MSB - prima cifră) la 1 dacă numărul este negativ și reducerea numărului cu unu, de exemplu:

0000 0010 (2)

va deveni...

1000 0010 (-2)

Această metodă de stocare a numerelor binare negative nu funcționează deoarece:

  • Aritmetica binară nu va funcționa.
  • Trebuie să știm mai întâi ce mecanism de stocare folosește compilatorul unui anumit limbaj.
 

Complementul lui 1

Complementul lui 1 funcționează prin schimbarea lui 1 cu 0 și a lui 0 cu 1, de exemplu:

0000 0010 (2)

va deveni...

1111 1101 (-2)

La fel ca în cazul metodei semn și mărime, acesta este ușor de definit ca număr negativ, deoarece bitul său cel mai semnificativ este 1.

 

Complement de 2

Complementul lui 2 este o modalitate mai dificilă de stocare a negativelor. Există trei pași pentru aceasta:

  1. Găsiți numărul binar pozitiv (de exemplu, 8base 10 = 0000 1000base 2).
  2. Schimbați 1-urile cu 0-uri și 0-urile cu 1-uri (de exemplu, 0000 1000base 2 devine 1111 0111base 2).

Acest lucru este cunoscut sub numele de "răsturnarea biților", sau aplicarea logicii NOT la reprezentarea originală în baza 2.

  1. Adăugați 1 (de exemplu, 1111 0111baza 2 + 1baza 2 = 1111 1000baza 2).

Această metodă este apreciată deoarece:

  • Este ca semnul și magnitudinea; un număr negativ începe cu 1, iar un număr pozitiv începe cu 0.
  • Aritmetica binară va funcționa.
  • Există o singură valoare pentru 0 (0000 0000baza 2).
 

AlegsaOnline.com - 2020 / 2023 - License CC3