Szesnastkowy system liczbowy
System heksadecymalny (szesnastkowy) – system liczbowy, w którym podstawą jest liczba 16. Każda z liczb heksadecymalnych posiada swój odpowiednik dziesiętny. Często stosowany w informatyce i telekomunikacji. Używany do adresowania pamięci, zapisywania adresów sieciowych czy kolorów RGB.
Spis treści
System szesnastkowy (heksadecymalny)
System szesnastkowy jest jednym z najczęściej używanych w informatyce systemów. Jest używany przede wszystkim w adresowaniu pamięci aplikacji. Za jego pomocą zapisywane są adresy IP, adres MAC kart sieciowych, a także kodowane są w nim kolory RGB. Na prawdę warto umieć szybko go przeliczać.
Jest on wbudowany w kalkulator Windows, dzięki czemu łatwo możemy przeliczać liczby pomiędzy różnymi systemami liczbowymi.
Kod programu w C++ (HEX na dziesiętny)
Konwersję najłatwiej przeprowadzić z użyciem cyfry strtol z biblioteki cstdlib. Przykładowy kod:
#include <iostream>
#include <cstdlib>
#include <string>
using namespace std;
int hex2dec (string heksadecymalna)
{
int dziesietna = strtol(heksadecymalna.c_str(), NULL, 16);
return dziesietna;
}
int main()
{
string liczba;
cout << "Podaj liczbe heksadecymalna:" << endl;
cin >> liczba;
cout << hex2dec(liczba) << endl;
system ("pause >nul");
return 0;
}
Kod programu w C++ (dziesiętny na HEX)
Konwersję najłatwiej przeprowadzić za pomocą funkcji itoa z biblioteki cstdlib. Przykładowy kod:
#include <iostream>
#include <cstdlib>
#include <string>
using namespace std;
string dec2hex (int dziesietna)
{
char heksadecymalna[255];
itoa(dziesietna, heksadecymalna, 16);
return (string)heksadecymalna;
}
int main()
{
int liczba;
cout << "Podaj liczbe dziesietna:" << endl;
cin >> liczba;
cout << dec2hex(liczba) << endl;
system ("pause >nul");
return 0;
}