Professional Documents
Culture Documents
2020 Curs 5 IA Teodorescu Rodica-Mihaela
2020 Curs 5 IA Teodorescu Rodica-Mihaela
CURSUL 5
Exemplu:
Se presupune că se folosesc 2 octeți (16 biți) pentru reprezentarea numerelor reale, din
care bitul de rang 15 va fi folosit pentru semn, 6 biți vor fi folosiți pentru reprezentarea părții
întregi și 9 biți pentru reprezentarea părții fracționare.
Rang biți:
15 14 9 80
⏞⏞
S Partea întreagă ⏞
Partea fracționară
Numărul 19.270751953125 are reprezentarea binară 10011.010001010101.
Reprezentarea acestui număr va fi:
0⏞ ⏞
0 1 0 01 1 ⏞
0 1 0 0 0 10 1 0
Numărul negativ -19.270751953125 are reprezentarea binară ca și cea a numărului
pozitiv, cu deosebirea că bitul de semn este 1:
S Parteaîntreagă Parteafracționară
1⏞ ⏞
0 10 0 1 1 ⏞
0 1 00 0 1 0 1 0
În schimb, 243.270751953125 are reprezentarea binară 11110011.010001010101 și
partea întreagă a numărului este mai mare decât valoarea maximă reprezentabilă pe cei 6 biți
alocați părții întregi. Astfel, acest număr se va reprezenta sub forma:
1
Informatica Aplicată – Note de curs –CURSUL 5| Autor: Teodorescu Rodica-Mihaela
0⏞ ⏞
1 1 00 1 1 ⏞
0 1 0 0 0 10 1 0
producându-se o așa-numită depășire, adică pierzându-se 2 biți, cei mai semnificativi,
numărul reprezentat fiind de fapt 51.270751953125.
S⏟ n−1 ⋯ ⋯ ⋯ ⋯ a0 ,⏟ a
a⏟ ⏟ −1 ⋯ ⋯ ⋯ ⋯ a−m
↑ ↑ ↑⏟ ↑
cifră binară n cifre binare pentru virgula m cifrebinare pentru
pentru semn partea întreagăa partea fracționară a
numărului numărului
Observație: Se consideră că partea întreagă se reprezintă prin n cifre binare, iar partea
fracționară prin m cifre binare:
dacă se obține reprezentarea numerelor subunitare;
dacă se obține reprezentarea numerelor întregi.
Exemple:
2
Informatica Aplicată – Note de curs –CURSUL 5| Autor: Teodorescu Rodica-Mihaela
Exemple:
1. Să se calculeze , având și .
2. Să se calculeze , având și .
40 (10) CD 0 010 1000(2 )
¿
3
Informatica Aplicată – Note de curs –CURSUL 5| Autor: Teodorescu Rodica-Mihaela
Deoarece în acest caz rezultă transport de la bitul cifrei mai semnificative a mărimii,
rezultatul este incorect (rezultatul însumării celor două numere nu poate fi reprezentat
utilizând doar șapte cifre binare).
Verificând rezultatul, se obține:
3. Să se calculeze , având și .
−25( 10) CD 1001 1001(2)
¿
−30( 10) CD 1001 1110(2 )
¿
N 1 CD 1 0011001(2 )+ ¿ −25(10)+ ¿
¿
N2 CD 1 0011110( 2) −30(10)
¿
_______________________ ______
N 1 + N 2 CD 1 00110111(2 ) −55(10)
¿
4. Să se calculeze , având și .
−75( 10) CD 1 100 1011(2)
¿
−80( 10) CD 1101 0000(2 )
¿
Rezultatul este incorect deoarece apare transport de la bitul cifrei mai semnificative a
mărimii.
Verificând rezultatul, se obține:
4
Informatica Aplicată – Note de curs –CURSUL 5| Autor: Teodorescu Rodica-Mihaela
Exemplu:
5
Informatica Aplicată – Note de curs –CURSUL 5| Autor: Teodorescu Rodica-Mihaela
apare necesar ca transportul de la cifra de semn să fie adunat la cifra cea mai puțin
semnificativă:
Exemple:
1. Să se calculeze , având și .
30(10) CD 00011110(2) 14(10) CD 0000 1110(2)
¿ ¿
−30(10) CI 1110 0001(2) −14(10) CI 1111 0001(2)
¿ ¿
N 1 CI 1110 0001( 2) +
¿
6
Informatica Aplicată – Note de curs –CURSUL 5| Autor: Teodorescu Rodica-Mihaela
N 2 CI 11110001(2 )
¿
_________________
1 11010010(2) +¿
1
_______________
CI
N 1 + N 2 1 1101 0011(2)
¿
Verificând:
2. Să se calculeze , având și .
81(10) CD 01010001(2 ) 72(10) CD 0100 1000(2)
¿ ¿
CI
−81(10 ) 1010 1110(2) −72(10) CI 1011 0111(2)
¿ ¿
N 1 CI 1010 1110( 2) +
¿
CI
N 2 10110111(2 )
¿
_______________
N 1 + N 2 CI 1 0110 0101(2)
¿
Rezultatul este pozitiv sau negativ, după valorile absolute ale numerelor și .
Exemple:
1. Să se calculeze , având și .
7
Informatica Aplicată – Note de curs –CURSUL 5| Autor: Teodorescu Rodica-Mihaela
N 1 CI 01011011(2 ) +
¿
CI
N 2 11101011(2 )
¿
_______________
1 0100 0110(2 )+¿
1
_______________
CI
N 1 + N 2 1 0100 0111(2)
¿
Verificând:
2. Să se calculeze , având și .
91(10) CD 01011011(2) 20(10) CD 00010100(2)
¿ ¿
−91(10) CI 1010 0100(2 ) CI
20(10) 0001 0100(2 )
¿ ¿
8
Informatica Aplicată – Note de curs –CURSUL 5| Autor: Teodorescu Rodica-Mihaela
Observație: Adunarea în cod invers operează asupra tuturor cifrelor binare, inclusiv
asupra cifrei de semn.
unde:
Exemplu:
9
Informatica Aplicată – Note de curs –CURSUL 5| Autor: Teodorescu Rodica-Mihaela
−14(10) CI
¿
1111 0001(2) + ¿
1
____________________
−14(10) CC 1 111 0010(2)
¿
cifre binare nemodificate
↓
14(10) CD 0000
¿ ⏟
⏞
11 10
↑
cifrele binare care se vor modifica 0 → 1 și1 → 0
Fie și :
unde prin , am notat reprezentările în cod direct ale valorilor absolute pentru
numărul , respectiv .
Exemplu:
10
Informatica Aplicată – Note de curs –CURSUL 5| Autor: Teodorescu Rodica-Mihaela
3. Să se calculeze , având și .
|N 1|CD
¿
0000 1110(2) N 1 CC 1111 0010(2 )
¿
|N 2|CD
¿
0100 1000(2) N 2 CC 1011 1000(2)
¿
N 1 CC 1111 0010(2 )+ ¿
¿
N2 CC 1011 1000(2 )
¿
__________________________
N 1 + N 2 CC 1⏟ 10101010
¿
se
ignoră (2)
Observație: Dacă în urma însumării a două numere cu același semn, rezultatul are
semn contrar acesta este eronat (valoarea rezultatului nu se poate încadra pe numărul de
biți utilizați).
Fie și .
Reprezentarea lui este aceeași în cod direct, cod invers și cod complementar.
Exemple:
1. Să se calculeze , având și .
|N 1|CD
¿
0010 0001(2) N 1 CC 00100001(2)
¿
|N 2|CD
¿
0001 0111(2 ) N 2 CC 1110 1001(2)
¿
11
Informatica Aplicată – Note de curs –CURSUL 5| Autor: Teodorescu Rodica-Mihaela
N 1 CC 00100001( 2) +¿
¿
N2 CC 1110 1001(2 )
¿
__________________________
N 1 + N 2 CC 1⏟ 00001010
¿
se
ignoră (2)
Pentru verificarea rezultatului se va calcula:
N 1 + N 2 CC 0000 1010(2)=1 ∙2 +1 ∙2 =10(10), deci rezultatul este corect.
3 1
¿
2. Să se calculeze , având și .
|N 1|CD
¿
0010 0001(2) N 1 CC 1101 1111(2)
¿
|N 2|CD
¿
0000 0011(2) N 2 CC 00000011(2)
¿
N 1 CC 1101 1111(2) +¿
¿
N2 CC 00000011( 2)
¿
_________________
N1+ N2 CC 1110 0010(2)
¿
Verificarea rezultatului indică un rezultat corect:
12
Informatica Aplicată – Note de curs –CURSUL 5| Autor: Teodorescu Rodica-Mihaela
13