Półbajt (ang. half-byte) a. tetrada (ang. tetrade) a. nibble (ang. nibble, nybble, nyble) – połowa bajtu[1]. W polskiej literaturze nazwy angielskie są równie często używane jak polskie.

Przy najczęściej spotykanym bajcie ośmiobitowym (oktecie) półbajt ma długość 4 bitów[1], czyli może przybierać jedną z 16 różnych wartości. Pozwala to na zapisanie pojedynczej cyfry z szesnastkowego systemu liczbowego, co przedstawia poniższa tabela.

0hex = 0dec = 0oct 0 0 0 0
1hex = 1dec = 1oct 0 0 0 1
2hex = 2dec = 2oct 0 0 1 0
3hex = 3dec = 3oct 0 0 1 1
4hex = 4dec = 4oct 0 1 0 0
5hex = 5dec = 5oct 0 1 0 1
6hex = 6dec = 6oct 0 1 1 0
7hex = 7dec = 7oct 0 1 1 1
8hex = 8dec = 10oct 1 0 0 0
9hex = 9dec = 11oct 1 0 0 1
Ahex = 10dec = 12oct 1 0 1 0
Bhex = 11dec = 13oct 1 0 1 1
Chex = 12dec = 14oct 1 1 0 0
Dhex = 13dec = 15oct 1 1 0 1
Ehex = 14dec = 16oct 1 1 1 0
Fhex = 15dec = 17oct 1 1 1 1

Z tej własności wynika również, że półbajt umożliwia przechowywanie jednej cyfry dziesiętnej, co jest wykorzystywane w systemie kodowania liczb BCD, stosowanym szeroko w księgowości i bankowości.

W każdym bajcie można wyróżnić dwa półbajty, które nazywane są starszym i młodszym (odp. bity 4–7 oraz 0–3, bez względu na kolejność bajtów). W języku C wydzielenie obu półbajtów można wykonać następująco:

starszy = (bajt >> 4) & 0b1111;
mlodszy = bajt & 0b1111;

Przypisy edytuj

Bibliografia edytuj