F1-12
© J. Kalisz, WAT, 2008
Konwersja liczb z kodu dziesiętnego na
szesnastkowy
Liczba dziesiętna L => liczba szesnastkowa H
H = h
n-1
...h
1
h
0
.h
-1
h
-2
...h
-m
Algorytm konwersji
:
Liczba (część) całkowita
– iteracyjne
dzielenie
przez 16,
dopóki nie otrzyma się wyniku o zerowej części całkowitej
Liczba (część) ułamkowa
– iteracyjne
mnożenie
przez 16,
dopóki nie otrzyma się wyniku o zerowej części ułamkowej
lub liczby m bitów wyniku H
Np. L = 79.73
10
Część całkowita:
79/16 = 4, reszta 15
10
= F
16
= h
0
4/16 = 0, reszta 4 = h
1
Część ułamkowa:
0.73·16 = 11.68
h
-1
= 11
10
= B
16
0.68·16 = 10.88
h
-2
= 10
10
= A
16
0.88·16 = 14.08
h
-3
= 14
10
= E
16
0.08·16 = 1.28
h
-4
= 1
0.28·16 = 4.48
h
-5
= 4
0.48·16 = 7.
68
h
-6
= 7 itd.
H = h
1
h
0
h
-1
h
-2
h
-3
h
-4
h
-5
h
-6
= 4F.BAE147
16
Błąd zaokrąglenia
: 0.68·16
-6
Równoważna liczba dwójkowa
(spacje są zbędne):
B = 100 1111.1011 1010 1110 0001 0100 0111
W Google
: (liczba dziesiętna)
in hex
(Enter)
Np. 15
in hex
(Enter) > 0xF
0x1F in decimal > 31, 0x1f in binary > 0b11111