Skip to main content
🔬 Advanced

Kalkulator binarny

Wykonaj dodawanie, odejmowanie, mnożenie i dzielenie w układzie binarnym. Konwertuj pomiędzy układem binarnym i dziesiętnym. Darmowy kalkulator matematyczny. Uzyskaj natychmiastowe wyniki teraz.

Binarny system liczbowy: jak liczą komputery

Każdy komputer, smartfon i urządzenie cyfrowe wewnętrznie przechowuje i przetwarza wszystkie informacje w formie binarnej, ponieważ obwody elektryczne mogą wiarygodnie reprezentować dwa odrębne stany: wysokie napięcie (1) i niskie napięcie (0).

Każda pozycja w liczbie binarnej reprezentuje potęgę 2, rosnącą od prawej do lewej:

Pozycja2⁷2⁶2⁵2⁴2⁰
Wartość1286432168421

Przetłumaczenie z liczby binarnej na liczbę dziesiętną:Pomnóż każdy bit przez jego wartość miejscową i sumuj wszystkie wyniki.

Przykład:101101012= 1x128 + 0x64 + 1x32 + 1x16 + 0x8 + 1x4 + 0x2 + 1x1 = 128 + 32 + 16 + 4 + 1 =181

Konwersja z liczby dziesiętnej na liczbę binarną:Wielokrotnie dzielić przez 2, rejestrując resztę na każdym kroku, a następnie odczytywać resztę od dołu do góry.

Przykład: Przekształcenie 181 na liczbę binarną:

Przeczytaj resztę od dołu do góry:101101012

Arytmetyka binarna: dodawanie, odejmowanie i mnożenie

Arytmetyka binarna podąża za tymi samymi zasadami co dziesiętna, ale przeniesienia zdarzają się przy 2 zamiast 10.

Zasady dodawania binarnego:0+0=0, 0+1=1, 1+0=1, 1+1=10 (przeprowadzenie 1), 1+1+1=11 (przeprowadzenie 1)

Przykład: 10112 + 11012 (11 + 13 = 24)

1011 + 1101 ------ 11000

Praca od prawej do lewej: 1+1=10 (napisać 0, przenieść 1); 1+0+1=10 (napisać 0, przenieść 1); 0+1+1=10 (napisać 0, przenieść 1); 1+1+1=11 (napisać 1, przenieść 1); ostateczny przenieść pisze 1. Wynik: 110002 = 24

Komplement dwóch (oddzielenie binarne):Komputery obsługują liczby ujemne i odejmowanie za pomocą reprezentacji uzupełnienia dwóch. Aby znaleźć uzupełnienie dwóch liczb: odwróć wszystkie bity, a następnie dodaj 1.

Przykład: -13 w 8-bitowym uzupełnieniu dwóch: +13 = 000011012 -> odwróć wszystkie bity -> 111100102 -> dodaj 1 ->111100112

Pozwala to na wykonanie odejmowania jako dodawania: 20 - 13 = 20 + (-13).

Mnożenie binarnejest eleganckie: każdy produkt częściowy to 0 (pomnożenie przez 0) lub sama liczba (pomnożenie przez 1), przesunięta w lewo.

1011 x 101 ----- 1011 (1011 x 1) 0000 (1011 x 0, przesunięte) 1011 (1011 x 1, przesunięte dwa razy) ------- 1101112 = 55 

Binarność w obliczeniach: Bity, bajty i rozmiary danych

Zrozumienie jednostek binarnych jest niezbędne dla każdego, kto pracuje z komputerami, pamięcią lub prędkościami sieci:

JednostkaRozmiarMaksymalna wartość (niepodpisana)Powszechne zastosowanie
Trochę.1 cyfra binarna1Flaga boolejska, pojedyncza wartość binarna
Przygryźć4 bity15 (hex: F)Jedna cyfra sześćdziesiątkowa
Bajt8 bitówDziałaniaJeden znak (ASCII), kanał kolorowy
Słowo.16 bitów65535Stare systemy 16-bitowe, oparte na Unicode
Podwójne słowo (DWORD)32 bitów4 294 967 29532-bitowe liczby całkowite, adresy IPv4
Quad Word (QWORD)64 bitów18 446 744 073 709 551 615Nowoczesne liczby całkowite, wskaźniki, znaczniki czasu

Wartości koloru:Kolory internetowe używają 24-bitowego RGB (8 bitów na kanał). #FF5733 = R:255, G:87, B:51. Każdy 8-bitowy kanał może reprezentować 256 odcieni (0 - 255).16 777 216(około 16,7 mln).

Uprawnienia do plików w systemie Unix/Linux:Każdy zestaw 3 bitów reprezentuje uprawnienia do czytania (r=4), pisania (w=2) i wykonywania (x=1) dla właściciela, grupy i innych.

Operacje bitwise i ich zastosowania

Operacje bitwise manipulują pojedynczymi bitami w obrębie liczb całkowitych.

DziałanieSymbolZachowaniePrzykład
I&1 jeśli oba bity są równe 11010 i 1100 = 1000
OR|1 jeśli każdy bit jest równy 11010. 1100 to 1110.
XOR^1 jeśli bity są różne1010 ^ 1100 = 0110
Nie~Odwróć wszystkie bity~1010 = 0101
Lewa przesunięcie<<Bity przesunięcia w lewo (x2 na każde przesunięcie)1011 << 1 = 10110 (x2)
Przesunięcie w prawo>>Bity przesunięcia w prawo (÷2 na każde przesunięcie)1011 >> 1 = 0101 (÷2)

Praktyczne zastosowania:

Porównanie systemów liczbowych: binarny, oktalny, dziesiętny, sześćdziesiątny

Informatyka wykorzystuje cztery systemy liczbowe, z których każdy nadaje się do różnych kontekstów:

SystemPodstawaLiczbyPowszechne zastosowanie
Binarny (podstawa-2)20, 1Operacje procesora, pamięć, logika
Oktal (podstawa-8)80 - 7Uprawnienia do plików Unix, starsze systemy
Liczba dziesiętna (podstawa 10)100 - 9Liczby czytelne dla człowieka
Hexadecimalny (podstawa 16)160 - 9, A - FAdresy pamięci, kody kolorowe, kod maszyny

Szybkie przekształcenie: binarny <-> hex(4 cyfry binarne = 1 cyfra sześciokątna):

BinarnyHex .Liczba dziesiętnaBinarnyHex .Liczba dziesiętna
0000 (cztery)001000 złotych88
000111100199
0010221010A10
0011331011 r.B11
0100 i 0100441100 mld złC12
0101551101 r.D13
0110661110 r.E14
0111771111 r.F15

To 4-bitowe grupowanie sprawia, że hex jest niezwykle przydatny jako kompaktowa notacja dla danych binarnych: 32-bitowa wartość11001010 00111111 10110101 00001100znacznie łatwiej jest zapisać jakoCA3FB50C.

Binary w sieci: adresy IP i maski podsieci

Zrozumienie systemu binarnego jest niezbędne dla inżynierii sieci, ponieważ adresy IPv4 są zasadniczo 32-bitowymi liczbami binarnymi, a podsieci - proces dzielenia sieci - opiera się całkowicie na operacjach binarnych.

Adres IPv4 jak192.168.1.100jest znakiem czytelnym dla człowieka dla 32-bitowej wartości binarnej:

11000000.10101000.00000001.01100100

A maska podsieciokreśla, która część adresu identyfikuje sieć, a która identyfikuje host. Maska 255.255.255.0 w systemie binarnym to:

11111111.11111111.11111111.00000000

Bitowy AND adresu IP i maski podsieci daje adres sieci:

SkładnikLiczba dziesiętnaBinarny
Adres IP192.168.1.10011000000.10101000.00000001.01100100
Maska podsieci255.255.255.0111111111111111111111111111111
Sieć (I)192.168.1.011000000.10101000.00000001.00000000

Opis CIDR (np. /24) określa liczbę 1-bitów wiodących w masce podsieci. Maska /24 ma 24 jedynki, po których następuje 8 zer, co pozwala na 28 - 2 = 254 użyteczne adresy hosta na podsieć. Maska /16 pozwala na 65 534 hosta. Inżynierowie sieci codziennie używają binarnej matematyki umysłowej do planowania podsieci, obliczania adresów transmisji i rozwiązywania problemów z routingiem.

Binarność w kryptografii i bezpieczeństwie

Nowoczesne algorytmy szyfrowania działają wyłącznie na poziomie binarnym, manipulując poszczególnymi bitami poprzez kombinacje XOR, przesunięcia bitów i operacje substytucyjne.

szyfrowanie XOR (podstawa współczesnych szyfrów):XOR ma unikalną właściwość - zastosowanie go dwa razy z tym samym kluczem zwraca pierwotną wartość: A K K = A. To sprawia, że XOR jest podstawą szyfrów strumieniowych i jednorazowych podkładek.

Przykład: szyfrowanie bajt 01001101 (litera "M" w ASCII) kluczem 10110010:

Rozmiary klucza w nowoczesnym szyfrowaniu:AES-128 używa klucza 128-bitowego, co oznacza, że istnieje 2128 ~ 3.4 x 1038 możliwych kluczy - więcej niż liczba atomów we wszechświecie obserwowalnym. AES-256 używa kluczy 256-bitowych z 2256 możliwościami. Nawet najszybsze superkomputery nie mogą brutalnie zmusić tych przestrzeni klucza. Każdy dodatkowy bit podwaja przestrzeń wyszukiwania, dlatego długość klucza ma znaczenie w kryptografii.

Funkcje hashowe takie jak SHA-256 wytwarzają 256-bitowy (32-bajt) wyjście binarne z dowolnego wejścia. Nawet pojedyncza zmiana w wejściu wytwarza zupełnie inny hasz - właściwość zwana "efektem lawinowym", która sprawia, że hasze są przydatne do weryfikacji integralności danych, przechowywania haseł i zasilania technologii blockchain.

Komputery binarne i kwantowe:Podczas gdy klasyczne komputery używają bitów binarnych (0 lub 1), komputery kwantowe używają kubitów, które mogą istnieć w superpozycji obu stanów jednocześnie. Klasyczny klucz 256-bitowy ma 2256 możliwych wartości, które muszą być sprawdzane sekwencyjnie; komputer kwantowy uruchamiający algorytm Grovera mógłby przeszukać tę przestrzeń w √(2256) = 2128 operacjach.

Często zadawane pytania

Dlaczego komputery używają liczb binarnych zamiast dziesiętnych?

Obwody elektroniczne są najbardziej niezawodne z zaledwie dwoma odrębnymi stanami: włączony (wysokie napięcie ~ 1) i wyłączony (niskie napięcie ~ 0).

Jaka jest największa liczba, którą może pomieścić bajt?

Bajt (8 bitów) może reprezentować 28 = 256 różnych wartości. Dla niepodpisanych liczb całkowitych: od 0 do 255. Dla podpisanych liczb całkowitych (komplement dwóch): od -128 do 127. Maksymalna wartość niepodpisanych bajtów w systemie binarnym to 111111112 = 255; w hex jest to FF.

Jak przekształcić ujemną liczbę w liczbę binarną?

Użyj uzupełnienia dwóch: (1) Przekształć wersję dodatnią w binarną, (2) Odwróć wszystkie bity (0->1, 1->0), (3) Dodaj 1. Przykład: -13 w 8-bitowym: +13 = 000011012, odwróć bity = 111100102, dodaj 1 = 111100112. W ten sposób wszystkie nowoczesne komputery przechowują liczby całkowite ujemne.

Jaka jest różnica między systemem binarnym a hexadecimalnym?

Oba są pozycyjnymi systemami liczbowymi używanymi w obliczeniach. Binary (base-2) używa tylko 0 i 1 - rodzimego języka komputerów. Hexadecimal (base-16) używa 0 - 9 i A - F jako kompaktowej notacji binarnej - każde 4 cyfry binarne odpowiadają dokładnie 1 cyfrze hex. Hex jest używany do adresów pamięci, kodów kolorów (#RRGGBB) i kodu maszynowego, ponieważ jest bardziej kompaktowy i czytelny niż surowy kod binarny.

Do czego służą operacje bitowe?

Operacje bitwise (AND, OR, XOR, NOT, shifts) manipulują pojedynczymi bitami w obrębie liczb całkowitych. Powszechne zastosowania: flagi i uprawnienia bitów (Unix chmod), sprawdzenie parzystych / nieparzystych (n & 1), szybkie mnożenie / dzielenie przez potęgi 2 (przesunięcie bitów), algorytmy szyfrowania, funkcje hashowe, wykrywanie błędów CRC, maski podsieci sieciowej i rozwój gier (kompaktowe przechowywanie stanu w pojedynczej liczbie całkowitej).

Czym jest binarny punkt zmienny i dlaczego 0.1 + 0.2 ≠ 0.3 w programowaniu?

Większość nowoczesnych komputerów używa IEEE 754 binary floating point, który reprezentuje ułamki dziesiętne w formacie binarnym. Tak jak 1/3 = 0,3333... nie może być dokładnie przedstawiona w formacie dziesiętnym, 1/10 nie może być dokładnie przedstawiona w formacie binarnym (jest to nieskończenie powtarzająca się ułamek binarny). To powoduje drobne błędy zaokrąglania: w większości języków, 0,1 + 0,2 = 0,30000000000000004.

Jak używa się kodu binarnego do przechowywania danych i rozmiarów plików?

Przechowywanie jest mierzone w bajtach (8 bitów), kilobitach (1.024 bajtów), megabajtach (1.024 KB), gigabajtach (1.024 MB) itp. Uwaga: producenci dysków twardych używają prefiksów SI (1 KB = 1.000 bajtów), podczas gdy systemy operacyjne używają prefiksów binarnych (1 KiB = 1.024 bajtów), powodując widoczną rozbieżność "brakującej przestrzeni" przy zakupie pamięci masowej.

Czym jest BCD (binary-coded decimal)?

BCD koduje każdą cyfrę dziesiętną jako 4-bitową grupę binarną: 0=0000, 1=0001, ..., 9=1001.