Sistema Binário
A única linguagem numérica que um circuito elétrico entende de verdade
O sistema binário é a base 2: só existem dois símbolos, 0 e 1. Parece limitado, mas é exatamente essa simplicidade que faz dele a linguagem nativa de qualquer computador.
Valor posicional em base 2
Assim como no decimal cada posição vale uma potência de 10, no binário cada posição vale uma potência de 2: 128, 64, 32, 16, 8, 4, 2, 1.
128×0 + 64×1 + 32×0 + 16×0 + 8×0 + 4×0 + 2×1 + 1×0 = 66
Ou seja, 01000010 em binário é o mesmo valor que 66 em decimal. Cada posição binária costuma ser chamada de bit — e um grupo de 8 bits é chamado de byte.
Experimente
Use o simulador abaixo para converter qualquer caractere, número decimal ou hexadecimal em binário — clique nas lâmpadas para alternar cada bit e veja o valor mudar em tempo real.
Caractere: "A" | DEC: 65 | HEX: 0x41 | BIN: 01000001
Bits (do mais ao menos significativo)
128×0 + 64×1 + 32×0 + 16×0 + 8×0 + 4×0 + 2×0 + 1×1 = 65
Entrada
Digite uma tecla, ou edite os campos decimal/hexadecimal, ou clique em uma lâmpada para alternar o bit.
Tabela de referência ASCII
| Char | Dec | Hex | Bin |
|---|---|---|---|
| ' ' | 32 | 0x20 | 00100000 |
| ! | 33 | 0x21 | 00100001 |
| " | 34 | 0x22 | 00100010 |
| # | 35 | 0x23 | 00100011 |
| $ | 36 | 0x24 | 00100100 |
| % | 37 | 0x25 | 00100101 |
| & | 38 | 0x26 | 00100110 |
| ' | 39 | 0x27 | 00100111 |
| ( | 40 | 0x28 | 00101000 |
| ) | 41 | 0x29 | 00101001 |
| * | 42 | 0x2A | 00101010 |
| + | 43 | 0x2B | 00101011 |
| , | 44 | 0x2C | 00101100 |
| - | 45 | 0x2D | 00101101 |
| . | 46 | 0x2E | 00101110 |
| / | 47 | 0x2F | 00101111 |
| 0 | 48 | 0x30 | 00110000 |
| 1 | 49 | 0x31 | 00110001 |
| 2 | 50 | 0x32 | 00110010 |
| 3 | 51 | 0x33 | 00110011 |
| 4 | 52 | 0x34 | 00110100 |
| 5 | 53 | 0x35 | 00110101 |
| 6 | 54 | 0x36 | 00110110 |
| 7 | 55 | 0x37 | 00110111 |
| 8 | 56 | 0x38 | 00111000 |
| 9 | 57 | 0x39 | 00111001 |
| : | 58 | 0x3A | 00111010 |
| ; | 59 | 0x3B | 00111011 |
| < | 60 | 0x3C | 00111100 |
| = | 61 | 0x3D | 00111101 |
| > | 62 | 0x3E | 00111110 |
| ? | 63 | 0x3F | 00111111 |
| @ | 64 | 0x40 | 01000000 |
| A | 65 | 0x41 | 01000001 |
| B | 66 | 0x42 | 01000010 |
| C | 67 | 0x43 | 01000011 |
| D | 68 | 0x44 | 01000100 |
| E | 69 | 0x45 | 01000101 |
| F | 70 | 0x46 | 01000110 |
| G | 71 | 0x47 | 01000111 |
| H | 72 | 0x48 | 01001000 |
| I | 73 | 0x49 | 01001001 |
| J | 74 | 0x4A | 01001010 |
| K | 75 | 0x4B | 01001011 |
| L | 76 | 0x4C | 01001100 |
| M | 77 | 0x4D | 01001101 |
| N | 78 | 0x4E | 01001110 |
| O | 79 | 0x4F | 01001111 |
| P | 80 | 0x50 | 01010000 |
| Q | 81 | 0x51 | 01010001 |
| R | 82 | 0x52 | 01010010 |
| S | 83 | 0x53 | 01010011 |
| T | 84 | 0x54 | 01010100 |
| U | 85 | 0x55 | 01010101 |
| V | 86 | 0x56 | 01010110 |
| W | 87 | 0x57 | 01010111 |
| X | 88 | 0x58 | 01011000 |
| Y | 89 | 0x59 | 01011001 |
| Z | 90 | 0x5A | 01011010 |
| [ | 91 | 0x5B | 01011011 |
| \ | 92 | 0x5C | 01011100 |
| ] | 93 | 0x5D | 01011101 |
| ^ | 94 | 0x5E | 01011110 |
| _ | 95 | 0x5F | 01011111 |
| ` | 96 | 0x60 | 01100000 |
| a | 97 | 0x61 | 01100001 |
| b | 98 | 0x62 | 01100010 |
| c | 99 | 0x63 | 01100011 |
| d | 100 | 0x64 | 01100100 |
| e | 101 | 0x65 | 01100101 |
| f | 102 | 0x66 | 01100110 |
| g | 103 | 0x67 | 01100111 |
| h | 104 | 0x68 | 01101000 |
| i | 105 | 0x69 | 01101001 |
| j | 106 | 0x6A | 01101010 |
| k | 107 | 0x6B | 01101011 |
| l | 108 | 0x6C | 01101100 |
| m | 109 | 0x6D | 01101101 |
| n | 110 | 0x6E | 01101110 |
| o | 111 | 0x6F | 01101111 |
| p | 112 | 0x70 | 01110000 |
| q | 113 | 0x71 | 01110001 |
| r | 114 | 0x72 | 01110010 |
| s | 115 | 0x73 | 01110011 |
| t | 116 | 0x74 | 01110100 |
| u | 117 | 0x75 | 01110101 |
| v | 118 | 0x76 | 01110110 |
| w | 119 | 0x77 | 01110111 |
| x | 120 | 0x78 | 01111000 |
| y | 121 | 0x79 | 01111001 |
| z | 122 | 0x7A | 01111010 |
| { | 123 | 0x7B | 01111011 |
| | | 124 | 0x7C | 01111100 |
| } | 125 | 0x7D | 01111101 |
| ~ | 126 | 0x7E | 01111110 |
Um número, infinitas representações
O valor 66 não muda dependendo de como você escreve ele — só a representação muda. É o mesmo princípio que você vai ver no octal e no hexadecimal: bases diferentes, usadas por conveniência em contextos diferentes, mas sempre representando a mesma quantidade.
Por que o computador usa binário?
Dentro de um computador existem bilhões de transistores — minúsculos interruptores elétricos. Um interruptor só tem dois estados possíveis: ligado ou desligado. É muito mais simples e confiável construir um circuito que distingue apenas "tem corrente" ou "não tem corrente" do que um que precisasse reconhecer 10 níveis diferentes de voltagem para representar os dígitos do decimal. Convencionou-se então: desligado = 0, ligado = 1.
Veja Computação Ternária — uma alternativa de base 3 que chegou a ser construída em escala, e por que o binário venceu de qualquer forma.