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.