Konwerter binarnego na ósemkowy
System ósemkowy nadal żyje w uprawnieniach plików Unix (chmod 755), starych podręcznikach z epoki PDP i kilku łańcuchach narzędzi dla mikrokontrolerów. Ten konwerter bierze dowolny ciąg binarny, grupuje bity po trzy od prawej i mapuje każdą grupę na cyfrę ósemkową od 0 do 7 — z opcjonalnym zerem wiodącym dla języków, które traktują 0755 jako literał ósemkowy.
Jak konwertować binarny na ósemkowy
-
1
Wpisz wartość binarną
Spacje są usuwane. Dowolna długość jest w porządku; lewa grupa jest automatycznie dopełniana zerami do trzech bitów.
-
2
Grupuj bity trójkami od prawej
`111101100` staje się `111 101 100`. Kierunek grupowania ma znaczenie — zawsze od prawej do lewej.
-
3
Zmapuj każdą trójkę
000 = 0, 001 = 1, 010 = 2, aż do 111 = 7. Każda trójka mapuje się dokładnie na jedną cyfrę ósemkową.
-
4
Odczytaj i skopiuj wynik
Wybierz surowe cyfry (`754`), zapis z zerem wiodącym (`0754`) albo zapis z `0o` dla zgodności z Python 3 i Rust.
Mapowanie trójki bitów na cyfrę ósemkową
| Binarny | Ósemkowy |
|---|---|
| 000 | 0 |
| 001 | 1 |
| 010 | 2 |
| 011 | 3 |
| 100 | 4 |
| 101 | 5 |
| 110 | 6 |
| 111 | 7 |
Przykład: uprawnienia Unix
rwxr-xr-x oznacza, że właściciel ma prawa do odczytu/zapisu/wykonania, a grupa i pozostali mają odczyt/wykonanie. W zapisie binarnym to 111 101 101, co bezpośrednio grupuje się do ósemkowego 755 — dokładnie tej liczby, którą przekazujesz do chmod.
Kiedy ósemkowy jest przydatny
- Uprawnienia plików:
chmod 644,umask 022,stat -c %amówią ósemkowo. - Sekwencje ucieczki:
\100w C to ósemkowy zapis@(64 dziesiętnie). - Stare kody maszynowe: PDP-8, PDP-11 i wczesna dokumentacja DEC podają kody operacji ósemkowo, bo rozmiar słowa był wielokrotnością 3 bitów.
- Czytelność wizualna: grupowanie po trzy bity czyta się szybciej niż zapis binarny, bez pełnego alfabetu szesnastkowego.
Pułapki
- Zero wiodące oznacza ósemkowy w C:
0755to ósemkowe 755 (= dziesiętnie 493), a755to dziesiętne 755. Sprawdź język przed wklejeniem. - JavaScript usunął stary zapis ósemkowy: tryb ścisły odrzuca
0755. Użyj zamiast tego0o755. - Kierunek grupowania: jeśli grupujesz od lewej do prawej, dostaniesz zły wynik dla każdego strumienia bitów, którego długość nie jest wielokrotnością 3.
Najczęściej zadawane pytania
Bo flagi uprawnień układają się w zgrabne grupy po trzy (odczyt, zapis, wykonanie) dla każdej roli (właściciel, grupa, pozostali). Każda trójka mapuje się 1-do-1 na cyfrę ósemkową, więc rwxr-xr-x czyta się jako 755 w jednym kroku.
Dla C, Perla i powłok używaj wiodącego 0. Dla Python 3, Rust i Swift używaj 0o. Dla chmod w wierszu poleceń nie dodawaj niczego na początku.
Liczby ujemne wymagają szerokości bitowej ze znakiem (kod uzupełnień do dwóch). Najpierw podaj szerokość; inaczej konwerter traktuje całe wejście jako bez znaku.
Nie. Konwerter dopełnia lewą grupę zerami do trzech bitów. 1111 staje się 001 111, czyli ósemkowe 17.
Powiązane narzędzia
Formatter JSON
Wklej JSON, aby sformatować go z wcięciem 2 lub 4 spacji, zminifikować do zwartej postaci albo szybko sprawdzić składnię przed skopiowaniem wyniku.
Próbnik kolorów HEX
Wybierz kolor wizualnie i sprawdź wartości HEX, RGB, HSL, HSV oraz CMYK wraz z kontrastem względem bieli i czerni.
Generator losowych liter
Generuj losowe litery A-Z. Wybierz liczbę, wielkie litery, małe litery lub zapis mieszany i użyj wyniku w grach, zadaniach lub lekcjach.
Generator losowych palet kolorów
Twórz losowe palety od 2 do 15 próbek, wybierz styl żywy, pastelowy, stonowany lub ciemny, a następnie skopiuj kody HEX albo zmienne CSS.
Generator losowych kolorów
Wygeneruj od 1 do 50 losowych kolorów HEX z próbkami do podglądu, kopiowania i użycia w CSS, testach lub tworzeniu palet.
Generator palet kolorów
Twórz palety monochromatyczne, analogiczne, komplementarne, triadyczne lub tetradyczne z bazowego koloru HEX i eksportuj gotowe do skopiowania zmienne CSS.