Binární kalkulačka – sčítání, odčítání a binární operace
Provádějte binární aritmetiku – sčítání, odčítání, násobení a dělení. Okamžité výsledky s podrobným krokovým řešením. Bezplatná online kalkulačka.
Binární číselný systém: Jak počítače počítají
Binární číselný systém (základ 2) používá pouze dvě číslice — 0 a 1 — nazývané bity (binární číslice). Každý počítač, smartphone a digitální zařízení uvnitř uchovává a zpracovává všechny informace v binárním formátu, protože elektrické obvody spolehlivě zobrazení dvě různé stavy: vysokou napětí (1) a nízké napětí (0).
Každá pozice v binárním čísle reprezentuje mocninu 2, rostoucí od pravého doleva:
| Pozice | 2⁷ | 2⁶ | 2⁵ | 2⁴ | 2³ | 2² | 2¹ | 2⁰ |
|---|---|---|---|---|---|---|---|---|
| Hodnota | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
Převod binárního čísla na desetinné číslo: Vynásobte každý bit jeho hodnotou pozice a součtem všech výsledků.
Úvod: 10110101₂ = 1×128 + 0×64 + 1×32 + 1×16 + 0×8 + 1×4 + 0×2 + 1×1 = 128 + 32 + 16 + 4 + 1 = 181
Převod desetinného čísla na binární číslo: Opakováním dělitelnost 2, zaznamenáte zbytek na každém kroku, pak čtení zbyteků od spodu nahoru.
Úvod: Převést 181 na binární číslo:
- 181 ÷ 2 = 90 zbytek 1
- 90 ÷ 2 = 45 zbytek 0
- 45 ÷ 2 = 22 zbytek 1
- 22 ÷ 2 = 11 zbytek 0
- 11 ÷ 2 = 5 zbytek 1
- 5 ÷ 2 = 2 zbytek 1
- 2 ÷ 2 = 1 zbytek 0
- 1 ÷ 2 = 0 zbytek 1
Čtení zbyteků od spodu nahoru: 10110101₂ ✓
Binární aritmetika: Sčítání, odčítání a násobení
Binární aritmetika sleduje stejná pravidla jako desetinná, ale přenosy nastávají při 2 místo 10.
Pravidla binárního sčítání: 0+0=0, 0+1=1, 1+0=1, 1+1=10 (přenos 1), 1+1+1=11 (přenos 1)
Úvod: 1011₂ + 1101₂ (11 + 13 = 24)
1011 + 1101 ------ 11000
Práce od pravého doleva: 1+1=10 (zapsat 0, přenos 1); 1+0+1=10 (zapsat 0, přenos 1); 0+1+1=10 (zapsat 0, přenos 1); 1+1+1=11 (zapsat 1, přenos 1); konečný přenos zapisuje 1. Výsledek: 11000₂ = 24 ✓
Dvě komplementy (binární odčítání): Počítače zpracovávají záporná čísla a odčítání pomocí dvou komplementů. K nalezení dvou komplementu čísla: otočte všechny bity, pak přidejte 1.
Úvod: −13 v 8-bitovém dvoukomplementu: +13 = 00001101₂ → otočení všech bitů → 11110010₂ → přidejte 1 → 11110011₂
To umožňuje odčítání být provedeno jako sčítání: 20 − 13 = 20 + (−13).
Binární násobení je elegantní: každý částečný produkt je buď 0 (násobení 0) nebo číslo samo (násobení 1), posunuté doleva. Úvod: 1011₂ × 101₂ (11 × 5 = 55):
1011
× 101
-----
1011 (1011 × 1)
0000 (1011 × 0, posunuto)
1011 (1011 × 1, posunuto dvakrát)
-------
110111₂ = 55 ✓
Binární v počítačové technice: Bity, bajty a velikosti dat
Porozumění binárním jednotkám je pro každého pracujícího s počítači, úložištěm nebo rychlostmi sítě důležité:
| Unit | Velikost | Maximální hodnota (nezáporná) | Obvyklé použití |
|---|---|---|---|
| Bite | 1 binární číslice | 1 | Logická vlajka, jediná binární hodnota |
| Nibble | 4 bity | 15 (hex: F) | Jedna hexadecimální číslice |
| Bajt | 8 bity | 255 | Jedna znak (ASCII), kanál barvy |
| Slovo | 16 bity | 65 535 | Staré 16-bitové systémy, Unicode základní |
| Double Word (DWORD) | 32 bity | 4 294 967 295 | 32-bitové celočíselné hodnoty, adresy IPv4 |
| Quad Word (QWORD) | 64 bity | 18 446 744 073 709 551 615 | Moderní celočíselné hodnoty, ukazatele, časové razítko |
Barvy: Webové barvy používají 24-bitový RGB (8 bitů na kanál). #FF5733 = R:255, G:87, B:51. Každý 8-bitový kanál může reprezentovat 256 odstínů (0–255). Celkový počet možných barev: 256³ = 16 777 216 (přibližně 16,7 milionu).
Práva k souborům v Unix/Linux: rwxr-xr-- = 111 101 100 v binárním formátu = 7, 5, 4 v oktalovém formátu = chmod 754. Každá skupina po 3 bitech reprezentuje práva čtení (r=4), zápis (w=2) a spuštění (x=1) pro majitele, skupinu a ostatní.
Bitové operace a jejich aplikace
Bitové operace manipulují jednotlivými bitovými místy v celých číslech. Jsou zásadní pro nízkoúrovňový programování, kryptografii, síťové programování a kódování s vysokou výkonností.
| Operace | Symbol | Chování | Praktický příklad |
|---|---|---|---|
| AND | & | 1, pokud jsou obě bity 1 | 1010 & 1100 = 1000 |
| OR | | | 1, pokud je alespoň jeden bit 1 | 1010 | 1100 = 1110 |
| XOR | ^ | 1, pokud jsou bity různé | 1010 ^ 1100 = 0110 |
| NOT | ~ | Odrazování všech bitů | ~1010 = 0101 |
| Left Shift | << | Posunutí bitů doleva (×2 za posunutí) | 1011 << 1 = 10110 (×2) |
| Right Shift | >> | Posunutí bitů doprava (÷2 za posunutí) | 1011 >> 1 = 0101 (÷2) |
Praktické použití:
- Bitová maskování: Zkontrolujte, zda je určitý bit nastaven:
if (flags & 0b0100) { ... }— zkontroluje, zda je bit 2 nastaven. - Nastavení bitem:
flags = flags | 0b0100— nastaví bit 2 na 1 bez ohledu na aktuální hodnotu. - Odstranění bitem:
flags = flags & ~0b0100— odstraní bit 2. - Rychlé násobení/převod dělením dvěma:
n << 3= n × 8;n >> 2= n ÷ 4. Bitové posuny jsou CPU-úrovňové operace, které jsou výrazně rychlejší než násobení. - Overeven/nerovné:
if (n & 1) { /* nerovné */ }— poslední bit každé nerovné čísla je vždy 1.
Srovnání číselných systémů: Binární, Oktal, Desítkový, Hexadecimální
Informatická věda používá čtyři číselné systémy, každý vhodný pro jiný kontext:
| Systém | základ | Čísla | Obvyklé použití |
|---|---|---|---|
| Binární (základ 2) | 2 | 0, 1 | Operace CPU, úložiště, logika |
| Oktal (základ 8) | 8 | 0–7 | Unixová oprávnění souborů, starší systémy |
| Desítkový (základ 10) | 10 | 0–9 | Číslování pro lidi |
| Hexadecimální (základ 16) | 16 | 0–9, A–F | Adresy paměti, kódy barev, strojový kód |
Rychlá konverze: binární ↔ hexadecimální (4 binární místa = 1 hexadecimální místo):
| Binární | Hexadecimální | Desítkový | Binární | Hexadecimální | Desítkový |
|---|---|---|---|---|---|
| 0000 | 0 | 0 | 1000 | 8 | 8 |
| 0001 | 1 | 1 | 1001 | 9 | 9 |
| 0010 | 2 | 2 | 1010 | A | 10 |
| 0011 | 3 | 3 | 1011 | B | 11 |
| 0100 | 4 | 4 | 1100 | C | 12 |
| 0101 | 5 | 5 | 1101 | D | 13 |
| 0110 | 6 | 6 | 1110 | E | 14 |
| 0111 | 7 | 7 | 1111 | F | 15 |
Tato 4-bitová skupina činí hexadecimální systém velmi užitečným pro kompaktní zápis binárních dat: 32-bitové číslo 11001010 00111111 10110101 00001100 je mnohem snazší psát jako CA3FB50C.
Binární v síťovém prostředí: IP adresy a podsítě
Porozumění binárnímu je pro síťové inženýrství zásadní, protože IP adresy jsou založeny na 32-bitových binárních číslech a podsítě — proces rozdělení sítí — zcela závisí na binárních operacích.
IP adresa jako 192.168.1.100 je čtení pro lidi pro 32-bitové binární číslo:
11000000.10101000.00000001.01100100
Podsítě určuje, která část adresy identifikuje síť a která identifikuje hostitele. Maska 255.255.255.0 v binárním tvaru je:
11111111.11111111.11111111.00000000
Bitový AND adresy IP a podsítě dává síťovou adresu:
| Component | Desítkový | Binární |
|---|---|---|
| IP Address | 192.168.1.100 | 11000000.10101000.00000001.01100100 |
| Podsítě | 255.255.255.0 | 11111111.11111111.11111111.00000000 |
| Síť (AND) | 192.168.1.0 | 11000000.10101000.00000001.00000000 |
Notace CIDR (například /24) říká, kolik předních 1-bitů je v podsíťové maskě. Masku /24 má 24 jedniček následovaných 8 nulami, což umožňuje 2⁸ − 2 = 254 použitelných adres hostitelů na podsíť. Masku /16 umožňuje 65 534 hostitelů. Síťoví inženýři používají binární matematiku denně pro plánování podsítí, výpočet adres rozpoznávání a diagnostiku směrování.
Binar v kryptografii a zabezpečování
Moderní algoritmy šifrování fungují zcela na úrovni binární, manipulují jednotlivými bitovými hodnotami kombinací operací XOR, posunutí bitů a substituce. Porozumění binárnímu systému je bránou k porozumění, jak funguje digitální bezpečnost.
XOR šifrování (základ moderních šifer): XOR má jedinečnou vlastnost — aplikací dvakrát stejnou klíčem se vrátí původní hodnota: A ⊕ K ⊕ K = A. To činí XOR základem proudových šifer a jednorázových šifer.
Úvod: šifrování bajtu 01001101 (písmeno 'M' v ASCII) klíčem 10110010:
- Plaintext: 01001101
- Klíč: 10110010
- XOR (šifrování): 11111111
- XOR znovu s stejným klíčem (dešifrování): 01001101 = 'M' ✓
Velikost klíčů v moderních šifrách: AES-128 používá 128-bitový klíč, což znamená, že existuje 2¹²⁸ ≈ 3,4 × 10³⁸ možných klíčů — více než počet atomů v pozorovatelném vesmíru. AES-256 používá 256-bitové klíče s 2²⁵⁶ možnými hodnotami. I nejrychlejší superpočítače nemohou bruteforce těchto prostorů klíčů. Každé další bity zdvojnásobuje hledací prostor, proto velikost klíče má v kryptografii exponenciální význam.
Hash funkce jako SHA-256 produkuje 256-bitový (32-bajtový) binární výstup z libovolného vstupu. I jediná změna bitu v vstupu produkuje zcela jiný hash — vlastnost nazývaná „avalanche efekt“, která činí hashe užitečnými pro ověřování integrity dat, ukládání hesel a podporu blockchainové technologie.
Binar a kvantové počítače: Klasické počítače používají binární bity (0 nebo 1), zatímco kvantové počítače používají kvantové bity, které mohou existovat ve superpozičním stavu obou stavů současně. Klasický 256-bitový klíč má 2²⁵⁶ možných hodnot, které musí být zkontrolovány postupně; kvantový počítač spuštěný algoritmem Grovera by mohl prohledat tento prostor v √(2²⁵⁶) = 2¹²⁸ operacích. To je proč se vyvíjí postkvantová kryptografie — aby se vytvořily binární šifrovací schémata, která zůstávají bezpečná i proti kvantovým útočníkům.
Nejčastější dotazy
Proč počítače používají binární systém místo desetinný?
Elektronické obvody jsou nejspolehlivější s pouze dvěma odlišnými stavem: zapnuto (vysoká napětí ≈ 1) a vypnuto (nízké napětí ≈ 0). Zástup desetinných stavů by vyžadoval mnohem přesnější ovládání napětí a byl by daleko více náchylný na elektrické rušení. Binární jednoduchost umožňuje miliardám tranzistorů fungovat spolehlivě s miliardami operací za sekundu.
Co je největší číslo, které může byte zahrnovat?
Byte (8 bitů) může zahrnovat 2⁸ = 256 různých hodnot. Pro nezáporné celočíselné hodnoty: 0 až 255. Pro záporné celočíselné hodnoty (dvojné komplementum): -128 až 127. Největší nezáporný byte v binárním tvaru je 11111111₂ = 255; v hexadecimální notaci je to FF.
Jak převést záporné číslo na binární?
Použijte dvojné komplementum: (1) Převést kladnou verzi na binární, (2) Zkopírujte všechny bity (0→1, 1→0), (3) Přidejte 1. Příkladem je záporné číslo -13 v osmibitovém: +13 = 00001101₂, zkopírujte bity = 11110010₂, přidejte 1 = 11110011₂. Tímto způsobem uchovávají moderní počítače záporné celočíselné hodnoty.
Co je rozdíl mezi binárním a hexadecimálním systémem?
Oba jsou pozicní číselné systémy používány v počítačích. Binární (základ 2) používá pouze 0 a 1 — přirozený jazyk počítačů. Hexadecimální (základ 16) používá 0–9 a A–F jako kompaktní zástup pro binární — každých 4 binárních číslic odpovídá přesně 1 hexadecimální číslici. Hexadecimální je používán pro adresy paměti, barvy (#RRGGBB) a strojový kód, protože je kompaktnější a čitelnější než čistý binární.
Co jsou bitové operace používány pro?
Bitové operace (AND, OR, XOR, NOT, posuny) manipulují jednotlivými bity v celých číslech. Obvyklé použití: bitové příznaky a oprávnění (Unix chmod), kontrola sudých/nerovných (n & 1), rychlé násobení/podílování o mocniny 2 (posuny bitů), algoritmy šifrování, hashovací funkce, CRC detekce chyb, síťové podsítě masky a vývoj hry (kompaktní ukládání stavu v jediném celém čísle).
Co je binární desetinný a proč 0,1 + 0,2 ≠ 0,3 v programování?
Největší část moderních počítačů používá IEEE 754 binární desetinný, který zástup desetinné čísla v binárním tvaru. Stejně jako 1/3 = 0,3333... nelze zástupit přesně v desetinném tvaru, 1/10 nelze zástupit přesně v binárním tvaru (je to nekonečné binární frakce). To způsobuje malé chyby při zaokrouhlování: v většině jazyků je 0,1 + 0,2 = 0,30000000000000004. Použijte celočíselné aritmetiky (pracujte v centech, ne v dolarech) nebo knihovny pro desetinné čísla pro přesné finanční výpočty.
Jak je binární používán v úložišti a velikost souborů?
Úložiště se měří v bytech (8 bitů), kilobytech (1 024 byte), megabytech (1 024 KB), gigabytech (1 024 MB) atd. Pozor: výrobci pevných disků používají SI předpony (1 KB = 1 000 byte), zatímco operační systémy používají binární předpony (1 KiB = 1 024 byte), což způsobuje zjevný „chybný prostor“ rozpor mezi tím, co koupíte a tím, co vidíte. 1 TB disku se zobrazí ~ 931 GiB v Windows, protože 1 000 000 000 000 ÷ 1 073 741 824 ≈ 931.
Co je binární kódovaný desetinný (BCD)?
BCD kóduje každý desetinný znak jako 4-bitový binární blok: 0 = 0000, 1 = 0001, ..., 9 = 1001. Takže desetinné číslo 93 v BCD je 1001 0011. BCD se používá v finančních systémech (odstraňuje chyby při převodu desetinných čísel), digitálních hodinách a displejích (7-segmentové displeje dekódují BCD přímo) a starších mainframe systémech. Je méně efektivní než čistý binární, ale eliminuje chyby při převodu desetinných čísel v kritických aplikacích.