O sistema binário é um sistema de numeração em que todas as quantidades que se representam com base em dois números, com o que se dispõe das cifras: zero e um (0 e 1).
Em computadores digitais trabalham internamente com dois níveis de tensão, pelo que o seu sistema de numeração natural é o sistema binário. Com efeito, em um sistema simples como este é possível simplificar e calcular, com o auxílio da lógica booleana. Em computação, chama-se um dígito binário (0 ou 1) de bit. Um agrupamento de 8 bits corresponde a um byte.
Um agrupamento de 4 bits é chamado de nibble. O sistema binário é base, que permite fazer operações lógicas e aritméticas usando-se apenas dois dígitos ou dois estados (sim e não, falso e verdadeiro, tudo ou nada, 1 ou 0, ligado e desligado).
Toda eletrônica digital, computação e programação está baseada nesse sistema binário e na lógica de Boolean, que permite representar por circuitos eletrônicos digitais (portas lógicas) os números, caracteres, realizar operações lógicas e aritméticas. Os programas de computadores são codificados sob forma binária e armazenados nas mídias (memórias, discos, etc.)
Todo computador possui um conjunto de instruções que seu processador é capaz de executar. Essas instruções, chamadas de código de máquina, são representadas por sequências de bits, normalmente limitadas pelo número de bits do registrador principal da CPU.
As instruções correspondem a seqüencias muito simples de operações, como transferir um dado em memória para a CPU ou somar dois valores e são normalmente interpretadas por micro-código.
Um programa em código de máquina consiste de uma sequência de números que significam uma sequência de instruções a serem executadas. É normal a representação da linguagem de máquina por meio de números (opcodes) constantes e variáveis em sistema binário ou sistema hexadecimal. Alguns computadores também têm seu opcodes representados no sistema octal.
Microprocessadores tem normalmente seus códigos de operação como múltiplos de 2, 8 e 16, pois usam arquiteturas com registradores de 8,16,32,64 ou 128 bits em 2006. Porém, existem máquinas com registradores de tamanho diferente.
Os programas de computador raramente são criados em linguagem de máquina, mas devem ser traduzidos (por compiladores) para serem executados diretamente pelo computador. Existe a opção, em voga atualmente, de não executá-los diretamente, mas sim por meio de um interpretador, esse sim rodando diretamente em código de máquina e previamente compilado.