Wykład 4: Liczby heksadecymalne.Operowanie liczbami dwójkowymi dla przeciętnych zjadaczy chleba jak i dla "tych co są w temacie" wraz z rozwojem
technologii informatycznych stało się bardzo uciążliwe. Już w latach 90 ubiegłego stulecia programiści zaczęli ułatwiać sobie życie.
Zauważono, że trzycyfrowe liczby dwójkowe mają wartości od 0 do 7, a to są cyfry używane przez system ósemkowy. I zamiast pisać
liczbę dwójkową: 11111111 można napisać 377 (ósemkową). System ósemkowy, krótko zagościł u programistów,
bo okazało się że zamiast 3 cyfr dwójkowych można wziąć 4 cyfry dwójkowe (a to jest akurat połowa bajtu).
System ósemkowy utrzymał się w systemie LINUX do zapisu uprawnień do plików i folderów.
Czterocyfrowa liczba dwójkowa przeniesie wartości od 0 do 15, a to odpowiada systemowi szesnastkowemu (heksadecymalnemu).
Problem w tym, że w alfabecie łacińskim wykorzystano do zapisu liczb cyfry arabskie, a tych jest tylko 10
(bo tyle potrzeba do zapisu liczby w systemie dziesiątkowym). Dlatego przyjęto na potrzeby zapisu cyfr
hexadecymalnych od 10 do 15 jedno-znakowe cyfry, którymi są początkowe litery alfabetu łacińskiego.
I tak cyfrę 10 oznaczono literą A, 11 - B, 12 - C, 13 - D, 14 - E i 15 - F.
i tak jeden bajt przyjmuje wartości od 0 ..255 dziesiętnie; od 0 ... 377 ósemkowo i od 0 .. FF szesnastkowo.
Zamiana liczb dziesiętnych na hexa korzysta z tego samego algorytmu co na system dwójkowy.
I tu ciekawostka: osoba, która ma 18 lat zapisanych w systemie heksadecymalnym faktycznie ma 24 lata (dziesiętnie).
Wykorzystanie liczb szesnastkowych np do zapisu koloru w standardzie RGB:
np. kolor biały to #FFFFFF (znak # oznacza zapis szesnastkowy liczby), a czarny
#000000.
(Pierwsze dwie cyfry hexa odpowiadają za ilość koloru czerwonego (R), dwie następne za kolor zielony (G), a ostanie dwie za kolor niebieski (

).
Praca domowa:
Proszę zamienić liczbę 128567 na liczbę szesnastkową i podać jaką wartość dziesietną ma liczba #25AB.