Kod z przesunięciem

Kod z przesunięciem (kod z obciążeniem, kod spolaryzowany, kod bias, excess-N[potrzebny przypis]) – sposób zapisu liczb. Opiera się na idei przyporządkowania każdej liczbie (najczęściej całkowitej) pewnej liczby nieujemnej, poprzez dodanie do zamienianej liczby pewnej wartości System koduje liczbę jako zero, jej następnik jako 1 itd., można go więc rozumieć jako funkcję liniową gdzie to zapis liczby z przesunięciem, to dane wejściowe, zaś to wartość przesunięcia.

Przykład[edytuj | edytuj kod]

Dla liczb zapisywanych dziesiętnie z przesunięciem 5 poszczególne zapisy oznaczają liczbę z drugiej kolumny:

 0    -5  1    -4  2    -3  3    -2  4    -1  5     0  6     1  7     2  8     3  9     4 10     5 

W typowych zastosowaniach w informatyce, przy zapisie liczb w systemie binarnym łatwo jest wyznaczyć wartość optymalnego przesunięcia tak, by umożliwione było kodowanie liczb z możliwie najszerszego symetrycznego względem zera zakresu liczb. Przykładowo, zwykły zapis binarny na 4 bitach umożliwia zapis liczb z przedziału domkniętego od 0 do 15, przyjęło się więc używać przesunięcie równe 7. Przykład zapisu liczb z takiego zakresu:

-7   0000 -6   0001 -5   0010 ...  ... -1   0110  0   0111  1   1000 ...  ...  5   1100  6   1101  7   1110  8   1111 

Dla przesunięcia równego na bitach można zakodować liczby z przedziału domkniętego od do

Zastosowanie[edytuj | edytuj kod]

Zapis z przesunięciem jest najczęściej wykorzystywany do zapisu części wykładniczej liczb zmiennoprzecinkowych, na przykład w standardzie IEEE 754.

Zobacz też[edytuj | edytuj kod]