Scrie -135 291 470 588 ca binar cu semn în reprezentarea în complement față de doi (2)
Cum face calculatorul scrierea numărului -135 291 470 588(10) din zecimal în binar cu semn în reprezentarea în complement față de doi (2)
Care sunt pașii pentru scrierea numărului
-135 291 470 588 din zecimal în binar cu semn în reprezentarea în complement față de doi (2)?
- Un număr întreg cu semn, scris în baza zece, sau în sistem zecimal, este un număr scris folosind cifrele de la 0 la 9 și semnul, care poate fi pozitiv (+) sau negativ (-). Dacă e pozitiv de obicei semnul nu se scrie. Un număr scris în baza doi, sau în sistem binar, este un număr scris folosind întotdeauna doar cifrele 0 și 1.
1. Începe cu versiunea pozitivă a numărului:
|-135 291 470 588| = 135 291 470 588
2. Împarte numărul în mod repetat la 2:
Ținem minte fiecare rest al împărțirilor.
Ne oprim când obținem un cât egal cu zero.
- împărțire = cât + rest;
- 135 291 470 588 : 2 = 67 645 735 294 + 0;
- 67 645 735 294 : 2 = 33 822 867 647 + 0;
- 33 822 867 647 : 2 = 16 911 433 823 + 1;
- 16 911 433 823 : 2 = 8 455 716 911 + 1;
- 8 455 716 911 : 2 = 4 227 858 455 + 1;
- 4 227 858 455 : 2 = 2 113 929 227 + 1;
- 2 113 929 227 : 2 = 1 056 964 613 + 1;
- 1 056 964 613 : 2 = 528 482 306 + 1;
- 528 482 306 : 2 = 264 241 153 + 0;
- 264 241 153 : 2 = 132 120 576 + 1;
- 132 120 576 : 2 = 66 060 288 + 0;
- 66 060 288 : 2 = 33 030 144 + 0;
- 33 030 144 : 2 = 16 515 072 + 0;
- 16 515 072 : 2 = 8 257 536 + 0;
- 8 257 536 : 2 = 4 128 768 + 0;
- 4 128 768 : 2 = 2 064 384 + 0;
- 2 064 384 : 2 = 1 032 192 + 0;
- 1 032 192 : 2 = 516 096 + 0;
- 516 096 : 2 = 258 048 + 0;
- 258 048 : 2 = 129 024 + 0;
- 129 024 : 2 = 64 512 + 0;
- 64 512 : 2 = 32 256 + 0;
- 32 256 : 2 = 16 128 + 0;
- 16 128 : 2 = 8 064 + 0;
- 8 064 : 2 = 4 032 + 0;
- 4 032 : 2 = 2 016 + 0;
- 2 016 : 2 = 1 008 + 0;
- 1 008 : 2 = 504 + 0;
- 504 : 2 = 252 + 0;
- 252 : 2 = 126 + 0;
- 126 : 2 = 63 + 0;
- 63 : 2 = 31 + 1;
- 31 : 2 = 15 + 1;
- 15 : 2 = 7 + 1;
- 7 : 2 = 3 + 1;
- 3 : 2 = 1 + 1;
- 1 : 2 = 0 + 1;
3. Construiește reprezentarea numărului pozitiv în baza 2:
Luăm fiecare rest al împărțirilor începând din partea de jos a listei construite mai sus.
135 291 470 588(10) = 1 1111 1000 0000 0000 0000 0000 0010 1111 1100(2)
4. Determinăm lungimea în biți a numărului binar cu semn:
Lungimea actuală a numărului în baza 2, în biți: 37.
- Lungimea în biți a unui număr binar cu semn trebuie să fie egală cu o putere a lui 2:
- 21 = 2; 22 = 4; 23 = 8; 24 = 16; 25 = 32; 26 = 64; ...
- Primul bit (cel mai din stânga) indică semnul:
- 0 = număr întreg pozitiv, 1 = număr întreg negativ
Cel mai mic număr care este:
1) o putere a lui 2
2) și e mai mare decât lungimea actuală, 37,
3) astfel încât primul bit (cel mai din stânga) să fie zero
(avem de a face la acest moment cu un număr pozitiv)
=== este: 64.
5. Determină numărul binar pozitiv reprezentat în limbaj calculator, pe 64 biți (8 Octeți):
Dacă e nevoie, completează cu 0 în fața numărului în baza 2, până la lungimea cerută, 64.
135 291 470 588(10) = 0000 0000 0000 0000 0000 0000 0001 1111 1000 0000 0000 0000 0000 0010 1111 1100
6. Obține reprezentarea numărului întreg negativ. Partea I:
- Pentru a scrie numărul întreg negativ pe 64 biți (8 Octeți), ca binar cu semn în reprezentarea în complement față de unu, schimbă toți biții setați pe 0 cu 1 și toți biții setați pe 1 cu 0.
Schimbă biții:
Înlocuiește toți biții setați pe 0 cu 1 și toți biții setați pe 1 cu 0.
!(0000 0000 0000 0000 0000 0000 0001 1111 1000 0000 0000 0000 0000 0010 1111 1100)
= 1111 1111 1111 1111 1111 1111 1110 0000 0111 1111 1111 1111 1111 1101 0000 0011
7. Obține reprezentarea numărului întreg negativ. Partea a II-a:
- Pentru a scrie numărul întreg negativ pe 64 biți (8 Octeți), ca binar cu semn în reprezentarea în complement față de doi, adună 1 la numărul obținut mai sus 1111 1111 1111 1111 1111 1111 1110 0000 0111 1111 1111 1111 1111 1101 0000 0011 (la nr. binar cu semn în reprezentarea în complement față de unu).
La adunarea numerelor binare trecerea peste ordin se face la 2:
- 0 + 0 = 0
- 0 + 1 = 1
- 1 + 1 = 10
- 1 + 10 = 11
- 1 + 11 = 100
Adună 1 la numărul obținut mai sus
(la numărul binar cu semn în reprezentarea în complement față de unu):
-135 291 470 588 =
1111 1111 1111 1111 1111 1111 1110 0000 0111 1111 1111 1111 1111 1101 0000 0011 + 1
Numărul -135 291 470 588(10) scris din zecimal în binar cu semn în reprezentarea în complement față de doi (2):
-135 291 470 588(10) = 1111 1111 1111 1111 1111 1111 1110 0000 0111 1111 1111 1111 1111 1101 0000 0100
Spații au fost folosite pentru a grupa digiți, în binar câte 4, în zecimal câte 3.