Kody kolorów RGB
color: #ff8800;color: rgb(255, 136, 0);Każda para cyfr hex to jeden bajt (0–255) dla jednego kanału. ff = 255, 88 = 136, 00 = 0.
Zamieniaj liczby między systemem dwójkowym, ósemkowym, dziesiętnym i szesnastkowym.
Ostatnia aktualizacja
Coddy uczy cię przez pisanie prawdziwego kodu w przeglądarce: interaktywne lekcje, natychmiastowa informacja zwrotna i pomoc AI, gdy utkniesz.
Kalkulator systemów liczbowych bierze liczbę zapisaną w jednym systemie (binarnym, ósemkowym, dziesiętnym lub szesnastkowym) i przepisuje ją na dowolny z pozostałych. Programiści sięgają po niego przy czytaniu masek bitowych, debugowaniu kodów kolorów, dekodowaniu flag w pakietach protokołów, pracy z rejestrami sprzętowymi i zamianie hex na dziesiętny we wszystkim, od CSS przez asembler po kryptografię.
Sama liczba nie zmienia się między systemami, zmienia się tylko jej *zapis*. 255 dziesiętnie to 0xFF szesnastkowo, 0b11111111 binarnie i 0o377 ósemkowo. To cztery różne sposoby zapisania tej samej wartości.
Nowoczesne narzędzia powinny obsługiwać duże liczby bez utraty precyzji. Zwykły parseInt w JavaScripcie po cichu zaokrągla wszystko powyżej 2⁵³, co powoduje subtelne błędy przy 64-bitowych wartościach rejestrów, identyfikatorach i znacznikach czasu. Solidny konwerter korzysta pod spodem z BigInt, więc nawet 256-bitowa wartość hex przechodzi konwersję w obie strony bez strat.
0xCAFE to binarnie 1100 1010 1111 1110, a w hex łatwiej to ogarnąć wzrokiem.123n).Wybierz binarny, ósemkowy, dziesiętny lub szesnastkowy, zależnie od tego, jaką liczbę masz.
Hex przyjmuje zarówno ff, jak i 0xff. Binarny przyjmuje zarówno 1010, jak i 0b1010. Konwerter automatycznie usuwa prefiks.
Wszystkie cztery zapisy tej samej liczby pojawiają się od razu. Kliknij dowolny, żeby go skopiować.
Grupuj liczby binarne po 4 bity (1100 1010 1111 1110), a hex po 2 znaki (CA FE). Przydaje się do analizy pól bitowych i zrzutów pamięci.
Popularne wartości we wszystkich czterech systemach. BigInt i gramatyka literałów liczbowych w JavaScripcie opisują składnię używaną poniżej.
| Dziesiętny | Binarny | Ósemkowy | Hex |
|---|---|---|---|
| 0 | 0 | 0 | 0 |
| 1 | 1 | 1 | 1 |
| 8 | 1000 | 10 | 8 |
| 10 | 1010 | 12 | A |
| 16 | 10000 | 20 | 10 |
| 32 | 100000 | 40 | 20 |
| 64 | 1000000 | 100 | 40 |
| 100 | 1100100 | 144 | 64 |
| 128 | 10000000 | 200 | 80 |
| 255 | 11111111 | 377 | FF |
| 256 | 100000000 | 400 | 100 |
| 1024 | 10000000000 | 2000 | 400 |
| 65535 | 1111111111111111 | 177777 | FFFF |
color: #ff8800;color: rgb(255, 136, 0);Każda para cyfr hex to jeden bajt (0–255) dla jednego kanału. ff = 255, 88 = 136, 00 = 0.
5
0b101
Bit 0 (odczyt) jest ustawiony, bit 2 (wykonanie) jest ustawiony, bit 1 (zapis) nie. Uprawnienia to więc odczyt + wykonanie.
Tryby plików w Uniksie (chmod), flagi funkcji i pakiety protokołów kodują wiele wartości logicznych jako bity w jednej liczbie całkowitej. Widok binarny sprawia, że to widać.
0xFFFFFFFFFFFFFFFF
18446744073709551615
To maksymalna 64-bitowa liczba całkowita bez znaku. Zwykły parseInt w JavaScripcie straciłby precyzję, a BigInt radzi sobie z nią bez problemu.
0x10 i 10 wyglądają podobnie, ale to 16 i 10, dlatego w kodzie zawsze dodawaj prefiks systemu.parseInt(big, 16) w JavaScripcie dla wartości większych niż 2⁵³. Zamiast tego użyj BigInt('0x' + hex).0xF zapisane jako bajt to 0x0F, a nie 0xF0: zera wiodące mają znaczenie w polach o stałej szerokości.0xFFFF_FFFF to 4294967295 bez znaku, ale -1 ze znakiem (kod uzupełnień do dwóch).1010: 1·8 + 0·4 + 1·2 + 0·1 = 10. Możesz też wkleić ją do kalkulatora systemów liczbowych i od razu dostać wynik.255 ÷ 16 = 15 reszta 15 → FF.#ff8800), adresach pamięci, zrzutach plików, adresach MAC, hashach i większości systemów niskopoziomowych.0755) i niektórych literałach liczbowych w językach z rodziny C.