Home - qdidactic.com
Didactica si proiecte didacticeBani si dezvoltarea cariereiStiinta  si proiecte tehniceIstorie si biografiiSanatate si medicinaDezvoltare personala
referate didacticaScoala trebuie adaptata la copii ... nu copiii la scoala





Biologie Botanica Chimie Didactica Fizica Geografie
Gradinita Literatura Matematica


Matematica


Qdidactic » didactica & scoala » matematica
SISTEME DE NUMERATIE. Adunari/scaderi de numere in complement fata de 2 si fata de 1.



SISTEME DE NUMERATIE. Adunari/scaderi de numere in complement fata de 2 si fata de 1.


SISTEME DE NUMERATIE.

Adunari/scaderi de numere in complement fata de 2 si fata de 1




Pentru numere de forma de n-1 biti se vor folosi reprezentari pe n biti . Bitul de rang bn-1 bs bit de semn unde bs=


Dupa cum am vazut in laboratorul trecut exista trei moduri de reprezentare a numerelor cu semn:

a)     Reprezentarea in marime si semn.

b)     Reprezentarea utilizand codul complementar fata de 1 ( cod invers ).

c)      Reprezentarea utilizand codul complementar fata de 2 ( cod direct ).





Reprezentarea in marime si semn.


Reprezentarea numarului se face dupa regula:



Exemplu:

N= - 1011


Facem mentiunea ca pentru numarul 0 vor exista doua reprezentari:

     



Reprezentarea utilizand codul complementar fata de 1 ( cod invers ).



Cod invers = cod complementar fata de 1.

Se obtine complementand toti bitii numarului initial.


Exemplu:



Reprezentarea utilizand codul complementar fata de 2 ( cod direct ).


Se obtine din codul pentru complementul fata de 1 al numarului initial la care se mai sumeaza un 1.


Exemplu:



Adunarea si scaderea numerelor binare in complement fata de 2 si fata de 1.


Introducem 2 notiuni:

- transport (carry): depasirea capacitatii de reprezentare (transport in afara cifrei semn)

- depasire (overflow): transport in cifra semn


In cazul numerelor fara semn nu poate apare decit cazul depasirii capacitatii, spre deosebire de numerele cu semn cind pot apare ambele situatii. Este evident ca adunarea sau scaderea a doua numere cu acelasi semn trebuie sa conduca la un rezultat avind acelasi semn cu al operanzilor, in caz contrar aparind depasirea (overflow). Deci depasirea (transportul in cifra semn) apare numai in cazul operatiilor cu numere avind acelasi semn.


Operatii in complement fata de 2



Operatiile cu numere binare se fac bit cu bit de la dreapta spre stinga. Scaderea este un caz particular de adunare, conform relatiei:


A - B = A + (-B)


Ca urmare, este suficient pentru realizarea scaderii sa adun la descazut, complementul fata de 2 al scazatorului. Daca rezultatul este negativ, el este obtinut in complement fata de 2 si pentru aflarea rezultatului final se aplica inca o data complementul fata de 2


Observatie:


In calculul complementului fata de 2 al numerelor cu semn, semnul se pastreaza (cifra semn nu intra in complementare) !!


Ex: consideram numere cu semn pe octet: deci un bit de semn, 7 biti de date, numerele maxime fiind -127, respectiv 127.


6 (0)0110+

(0)1001

----------

(0)1110



100+30 = 64h+1eh (0)1100100+

(0)0011110

----------

transport->(0)(1)0000010 --> depasire, rezultat negativ incorect


-33-48=(-21h)+(-30h) (-21h) (1)1011111+

(-30h) (1)1010000

-----------

transport->(1)(1)10101111 --> rezultat negativ, corect, obtinut in complement fata de 2. In final, prin complementare, se obtine: 11010001= -51h


-120-30=(-78h)+(-1eh) (-78h) (1)0001000+

(-1eh) (1)1100010

----------

transport-> (1)(0)1101010 --> depasire, rezultat pozitiv incorect



Observatii:


- intre paranteze am inclus cifra care semnifica transportul si cifra semn a numerelor


Putem stabili 2 metode de detectare a depasirii (overflow):


a) daca consideram cifra semn ca fiind doua cifre binare (00->'+' si 11->'-') putem semnala depasire la adunarea sau scaderea a doua numere cu acelasi semn prin difererentierea celor 2 biti in cifra semn (01 sau 10 semnifica depasire)

b) depasirea apare atunci cind am fie transport in cifra semn si nu am CY, fie cind am CY si nu am transport in cifra semn. putem stabili urmatoarea relatie intre depasire (OV), transport in afara capacitatii (CY) si semn (S): OV = CY _ S = CY XOR S



Avantajele utilizarii codului complementar fata de 2:

- bitii de semn se sumeaza identic;

- rezultatul se obtine printr-o singura operatie;

- se poate substitui scaderea printr-o adunare.



Operatii in complement fata de 1


In acest caz operatiile se fac la fel ca si anterior, insa operanzii sunt exprimati in complement fata de 1.


Adunarea a doua numere negative


A=2n-a -1                    A+B= 2n-(a+b)+2n -1-1

B=2n-b -1

Rezultatul corect este 2n-(a+b)-1, deci se elimina 2n -1. Eliminarea acestui bit este echivalenta cu adunarea transportului (CY) din rengul semnului (2n) la bitul cel mai putin semnificativ.


+7) (0)0101+

(0)0111

-----------

(0)1100 rezultat corect


+8 +9) (0)1000+

(0)1001

-----------

(1)0001 eroare (rezultatul este un numar negativ)


Scaderea in complement fata de 1, poate fi inlocuita printr-o suma intre descazut si codul complementar fata de 1 al scatatorului. Se aduna apoi eventualul transport din rangul semnului la pozitia LSB.


-33-48=(-21h)+(-30h) (-21h) (1)1011110+

(-30h) (1)1001111

-----------

transport->(1)(1)0101101 +

1

----------

(1)0101110 --> rezultat negativ, corect, obtinut in

complement fata de 1. In final, prin complementare, se obtine: (1)1010001= -51h


-120-30=(-78h)+(-1eh) (-78h) (1)0000111+

(-1eh) (1)1100001

----------

transport-> (1)(0)1101000 +

1

----------

(0)1101001 --> depasire, rezultat pozitiv incorect


Toate observatiile anterioare privind detectarea depasirii sunt valabile si aici, dar se observa dezavantajul recircularii transportului.


Avantajele utilizarii codului complementar fata de 1:

a)     Operatiile respecta aceleasi reguli ca si operatiile in complement fata de 2, inclusiv

sesizarea depasirii capacitatii de reprezentare, cu conditia de a efectua corectia rezultatului prin adunarea transportului la ultimul rang LSB.

b)     Sesizarea depasirii capacitatii de reprezentare se poate face si prin sesizarea

momentului cand adunand doua numere de acelasi semn se obtine un rezultat de semn opus.

c)      Scaderea este aceeasi ca si la numerele reprezentate in complement fata de 2.


Dezavantaje:

Necesitatea efectuarii unei operatii in plus (corectia rezultatului).



Contact |- ia legatura cu noi -| contact
Adauga document |- pune-ti documente online -| adauga-document
Termeni & conditii de utilizare |- politica de cookies si de confidentialitate -| termeni
Copyright © |- 2024 - Toate drepturile rezervate -| copyright