Creeaza.com - informatii profesionale despre


Cunostinta va deschide lumea intelepciunii - Referate profesionale unice
Acasa » scoala » matematica
Conversia la o locatie de alte dimensiuni

Conversia la o locatie de alte dimensiuni


Conversia la o locatie de alte dimensiuni

Pana acum am presupus ca operanzii au lungimi fixe, asa cum pretind regulile de derulare a operatiilor. Dar ce-i de facut atunci cand, spre exemplu, trebuie sa se converteasca un cod complementar pe 8 biti la unul pe 16 biti? Sau daca trebuie sa reducem un numar reprezentat fara semn pe 16 biti la unul similar pe 8 biti?

In fapt este vorba de patru operatii:

Extensie cu semn a unui cod complementar intr-o locatie mai mare.

Extensie cu zero a unui numar fara semn intr-o locatie mai mare.

Contractie cu semn a unui cod complementar intr-o locatie mai mica.

Contractie de zero a unui numar fara semn intr-o locatie mai mica.

Regulile de conversie sunt foarte simple. Extensia cu semn inseamna ca in spatiul suplimentar toti bitii vor avea ca valoare valoarea bitului de semn al reprezentarii care se converteste. Extensia cu zero inseamna ca in spatiul suplimentar toti bitii vor avea valoarea zero. Tabelul urmator prezinta cateva exemple cu ambele extensii. In fiecare celula a tabelului pe primul rand este scrisa configuratia in hexazecimal, iar pe urmatoarele configuratia binara:

8 biti:

16 biti:

extensie cu semn

32 biti:

extensie cu semn

16 biti:

extensie cu zero

32 biti:

extensie cu zero

FF80

FFFFFF80

9A

FF9A

FFFFFF9A

009A

0000009A

7F



007F

0000007F

007F

0000007F

FFFF8088

Operatiile de contractie nu se pot executa intotdeauna. Spre exemplu, intr-o locatie pe 16 biti exista numarul -448 in baza 10, care in cod complementar se reprezinta FE40. Dorim sa efectuam o contractie la 8 biti. Eliminand pur si simplu primul octet se obtine 40, adica numarul 64 in baza 10! Avem, evident, o situatie de depasire. Cu alte cuvinte, contractiile (conversii prin ingustare) se pot executa numai daca NU se provoaca pierderea de informatie.

Pentru contractia cu semn, contractia se poate face numai daca toti bitii care se elimina trebuie sa coincida cu bitul de semn, adica cu primul bit care ramane. Pentru contractia fara semn, trebuie ca toti bitii care se elimina sa fie zero. Tabelul urmator prezinta cateva exemple.

16 biti:

8 biti: contractie cu semn

8 biti: contractie cu zero

FF80

Depasire!

Se pierd 8 biti 1

FF9A

9A

Depasire!

Se pierd 8 biti 1

FE40

Depasire!

Se schimba bitul de semn

Depasire!

Se pierd 8 biti 1

Depasire!

Se schimba bitul de semn

Depasire!

Se pierd 8 biti 1

Depasire!

Se schimba bitul de semn





Politica de confidentialitate


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