Creeaza.com - informatii profesionale despre


Evidentiem nevoile sociale din educatie - Referate profesionale unice
Acasa » referate » informatica
Operatii aritmetice cu numere binare cu semn

Operatii aritmetice cu numere binare cu semn




Operatii aritmetice cu numere binare cu semn

Adunarea

Exista patru cazuri care pot aparea la adunarea numerelor binare cu semn:

Ambele numere pozitive

Numerele au reprezentare in complement fata de 2. Rezultatul trebuie sa aiba acelasi semn cu al operanzilor.

Exemplu:



Numarul pozitiv este mai mare decat numarul negativ

Exemplu:

Transport  1

Transportul de la bitul cel mai semnificativ este descarcat (ignorat).

Numarul negativ este mai mare decat numarul pozitiv

Exemplu:

Suma este negativa deci exprimata in complement fata de 2.

Ambele numere negative

Exemplu:

Transport  1

Transportul de la bitul cel mai semnificativ este descarcat (ignorat). Suma este negativa deci exprimata in complement fata de 2.

Intr-un calculator numerele negative sunt pastrate in complement fata de 2 deci procesul de adunare este foarte simplu. Se aduna cele doua numere si se neglijeaza transportul de la bitul cel mai semnificativ.

Depasirea

Cand se aduna doua numere si numarul de biti necesari pentru reprezentarea rezultatului depaseste numarul de biti din cele doua numere, apare o depasire, care se manifesta printr-un bit de semn incorect. O depasire poate sa apara numai daca ambele numere sunt pozitive sau negative. Exemplu:

Adunare cu eroare:

12510 = 011111012 +

5810 = 001110102

18310

Apare transport spre rangul de semn desi operanzii sunt pozitivi. Suma rezultata pare negativa ceea ce reprezinta o eroare. Pentru efectuarea corecta a operatiei de adunare ar trebui utilizati 8 biti pentru partea de marime, care sa permita reprezentarea de exemplu, a sumei 183.

Tot eroare poate sa apara si la adunarea a doua numere negative:

-2710 = 1001012 +

-2010 = 1011002

-4710

Aici trebuie sa apara transport spre rangul de semn, pentru a rezulta o suma negativa.

Scaderea

Scaderea este un caz special de adunare. De exemplu a scadea 6 din 9 este echivalent cu a aduna (- 6) la 9. De fapt operatia de scadere schimba semnul scazatorului si il aduna la descazut.

Semnul unui numar binar pozitiv sau negativ se schimba daca se inlocuieste cu complementul lui fata de 2.

De aceea pentru efectuarea unei scaderi se procedeaza in felul urmator:

Se calculeaza complementul fata de 2 a scazatorului si se aduna la descazut. Se neglijeaza transportul de la bitul cel mai semnificativ.

Exemple: Sa se efectueze urmatoarele scaderi ale numerelor binare cu semn (pentru usurinta intelegerii se prezinta si echivalentul zecimal al numerelor):

00000111-00000100

00001100-11110111

11100111-00010011

10001000-11100010

Solutii:

00000111 + descazutul (+7)

11111100 complementul fata de 2 a scazatorului (-4)

Transport neglijat diferenta (+3)

00001100 + descazutul (+12)

complementul fata de 2 a scazatorului (+9)

diferenta (+21)

11100111 + descazutul (-25)

complementul fata de 2 a scazatorului (-19)

Transport neglijat diferenta (-44)

10001000 + descazutul (-120)

complementul fata de 2 a scazatorului (+30)

diferenta (-90)

Inmultirea

Intr-o inmultire operanzii se numesc de inmultit, inmultitor iar rezultatul se numeste produs, cum este exemplificat in continuare:

X

De inmultitul

Inmultitorul

Produsul

Majoritatea calculatoarelor efectueaza inmultirea folosind adunarea repetata. Exista doua metode pentru efectuarea inmultirii folosind adunarea, prin adunare directa si prin produse partiale.

In metoda adunarii directe se aduna de inmultitul de un numar de ori egal cu inmultitorul. In exemplul precedent (7x4) se aduna de patru ori de inmultitul: 7 + 7 + 7 + 7 = 28. Dezavantajul acestei metode este faptul ca devine foarte lenta in cazul in care inmultitorul este foarte mare. De exemplu in cazul inmultirii lui 125x346 trebuie sa aduna 125 la el insusi de 346 de ori.

Cand se inmultesc doua numere binare, ambele trebuie sa fie exprimate in forma necomplementata. Metoda adunarii directe este prezentata in exemplul urmator:

01001101 x 00000100

O data

De doua ori

Suma partiala

De trei ori

Suma partiala

De patru ori

Produs

Deoarece bitul de semn al de inmultitului este 0, nu are efect asupra iesirii. Toti bitii din produs sunt biti de marime.

Metoda produselor partiale este probabil cea mai uzuala deoarece este modul in care ne-am obisnuit sa facem o inmultire. De inmultitul se inmulteste cu fiecare cifra din inmultitor incepand cu cel mai putin semnificativ. Rezultatul unei astfel de inmultiri dintre de inmultit si o cifra din inmultitor se numeste produs partial. Fiecare produs partial succesiv se deplaseaza cu o pozitie la stanga si dupa efectuarea tuturor produselor partiale, ele se aduna pentru a obtine produsul final.

Iata un exemplu in zecimal:

125

X

De inmultitul

346

Inmultitorul

750

Primul produs partial (125x6)

500

Al doilea produs partial (125x4)

Al treilea produs partial (125x3)

Produsul final

Semnul produsului depinde de semnul de inmultitului si a inmultitorului in conformitate cu urmatoarele reguli:

Daca semnul este la fel, produsul este pozitiv.

Daca semnele sunt diferite, produsul este negativ.

Principalii pasi pentru realizarea unei inmultiri binare sunt prezentati in continuare:

Se determina daca semnul operanzilor este acelasi sau diferit. Aceasta determina care va fi semnul produsului.

Se aduc toate numerele la forma lor normala (necomplementata). Deoarece majoritatea calculatoarelor pastreaza numerele negative sub forma complement fata de 2, este necesara o operatie de complementare pentru a aduce numarul la forma normala.

Incepand cu cifra cea mai putin semnificativa din inmultitor se calculeaza produsele partiale. Cand cifra este 1 produsul partial este identic cu de inmultitul. Cand este 0 produsul partial este 0. Se deplaseaza fiecare produs partial cu o pozitie la stanga.

Se aduna fiecare produs partial la suma produselor partiale anterioare pentru a obtine produsul final.

Daca in pasul 1 bitul de semn a fost determinat ca fiind negativ produsul final se complementeaza fata de 2, apoi se ataseaza produsului bitul de semn.


Exemplu:

Sa se multiplice urmatoarele numere binare cu semn: 01010011 x 11000101.

Solutie:

Pasul 1. Bitul de semn al de inmultitului este 0 iar al inmultitorului 1 deci bitul de semn al produsului va fi 1 (negativ)

Pasul 2. Se calculeaza complementul fata de 2 al inmultitorului pentru al aduce la forma normala. 11000101 => 00111011

Pasul 3. si 4.Urmeaza procesul de inmultire. De remarcat ca bitii de marime sunt folositi in acesti pasi.

De inmultitul

Inmultitorul

Primul produs partial

Al doilea produs partial

Suma 1 + 2

Al treilea produs partial

Suma

Al patrulea produs partial

Suma

Al cincilea produs partial



Suma

Al saselea produs partial

Suma

Al saptelea produs partial

Produsul final

Pasul 5. Deoarece bitul de semn al produsului este 1 se face complementul fata de 2 al produsului, 1001100100001 => 0110011011111, si se ataseaza bitul de semn:

Impartirea

Operanzii intr-o impartire se numesc deimpartit si impartitor iar rezultatul impartirii se numeste cat. Operatia de impartire in calculatoare se realizeaza folosind scaderea. Din moment ce scaderea se efectueaza cu ajutorul unui sumator rezulta ca si impartirea se poate efectua cu un sumator.

Rezultatul impartirii (catul) arata de cate ori impartitorul se cuprinde in deimpartit. Aceasta inseamna ca impartitorul poate fi scazut din deimpartit de un numar de ori egal cu catul dupa cum este prezentat in exemplul zecimal de mai jos:

Deimpartit

Prima scadere a impartitorului

Primul rest partial

A doua scadere a impartitorului

Al doilea rest partial

A treia scadere a impartitorului

Rest zero

In acest exemplu impartitorul a fost scazut din deimpartit de 3 ori pana ce s-a obtinut rest 0. In consecinta catul este 3.

Semnul catului depinde de semnul celor doi operanzi dupa urmatoarele reguli:

Daca semnul operanzilor este la fel, catul este pozitiv.

Daca semnul operanzilor este diferit, catul este negativ.

Cand se efectueaza o impartire a doua numere binare, ambele numere trebuie sa fie in forma normala (necomplementata). Pasii principali intr-un proces de impartire sunt urmatorii:

Se determina daca semnul operanzilor este diferit sau nu, aceasta va determina semnul rezultatului. Se initializeaza catul la zero.

Se face scaderea impartitorului din deimpartit folosind adunarea in complement fata de 2, pentru a obtine primul rest partial si se aduna un 1 la cat. Daca restul partial este pozitiv se continua cu pasul 3, iar daca este 0 sau negativ impartirea s-a terminat.

Se scade impartitorul din restul partial si se aduna un 1 la cat. Daca rezultatul este pozitiv se continua cu urmatorul rest partial. Daca rezultatul este zero sau negativ impartirea este completa.

Exemplu: Sa se divida 01100100 cu 00011001 (10010 : 2510 = 410)

Solutie:

Pasul 1. Semnul ambelor numere este pozitiv, rezultatul va fi pozitiv. Catul este initial: 00000000.

Pasul 2. Se scade impartitorul din deimpartit folosind adunarea in complement fata de 2 (trebuie tinu minte ca transportul de la bitul cel mai semnificativ se ignora).

Deimpartitul

Complementul fata de 2 a impartitorului

Primul rest partial (pozitiv)

Se aduna un 1 la cat: 00000000 + 00000001 = 00000001.

Pasul 3. Se scade impartitorul din primul rest partial folosind adunarea in complement fata de 2.

Primul rest partial

Complementul fata de 2 a impartitorului

Al doilea rest partial (pozitiv)

Se aduna un 1 la cat: 00000001 + 00000001 = 00000010.

Pasul 4. Se scade impartitorul din al doilea rest partial folosind adunarea in complement fata de 2.

Al doilea rest partial

Complementul fata de 2 a impartitorului

Al treilea rest partial (pozitiv)

Se aduna un 1 la cat: 00000010 + 00000001 = 00000011.

Pasul 5. Se scade impartitorul din al treilea rest partial folosind adunarea in complement fata de 2.

Al treilea rest partial (pozitiv)

Complementul fata de 2 a impartitorului

Rest zero

Se aduna un 1 la cat: 00000011 + 00000001 = 00000100 = (410), rezultat final.






Politica de confidentialitate







creeaza logo.com Copyright © 2024 - Toate drepturile rezervate.
Toate documentele au caracter informativ cu scop educational.


Comentarii literare

ALEXANDRU LAPUSNEANUL COMENTARIUL NUVELEI
Amintiri din copilarie de Ion Creanga comentariu
Baltagul - Mihail Sadoveanu - comentariu
BASMUL POPULAR PRASLEA CEL VOINIC SI MERELE DE AUR - comentariu

Personaje din literatura

Baltagul – caracterizarea personajelor
Caracterizare Alexandru Lapusneanul
Caracterizarea lui Gavilescu
Caracterizarea personajelor negative din basmul

Tehnica si mecanica

Cuplaje - definitii. notatii. exemple. repere istorice.
Actionare macara
Reprezentarea si cotarea filetelor

Economie

Criza financiara forteaza grupurile din industria siderurgica sa-si reduca productia si sa amane investitii
Metode de evaluare bazate pe venituri (metode de evaluare financiare)
Indicatori Macroeconomici

Geografie

Turismul pe terra
Vulcanii Și mediul
Padurile pe terra si industrializarea lemnului



Tipuri de calculatoare
Algoritmi
Sumatoare paralele pe principiul propagarii seriale a transportului
Probleme de optim in retele de transport si distributie
Securitatea informatiilor
APLICATII CU TIPURI DE DATE STRUCTURATE ALGORITMI ELEMENTARI
Clasificari ale sistemelor informatice
ATESTAT INFORMATICA FIRMA DE INCHIRIERI AUTO 'TOP_CARS_RENT'



Termeni si conditii
Contact
Creeaza si tu