O código binário em si não é instruções diretamente. É a * representação * das instruções. As instruções são codificadas como sequências de dígitos binários (0s e 1s) de que a unidade de processamento central (CPU) do computador pode entender e executar. Essas seqüências correspondem ao código da máquina
ou
Instruções da máquina .
Pense assim:
*
Instruções legíveis por humanos: Você pode escrever um programa em um idioma como Python ou C ++. Estes são compreensíveis pelos humanos.
*
Linguagem de montagem: Esta é uma linguagem de baixo nível que usa mnemônicos (abreviações curtas) para representar as instruções da máquina. É um passo mais perto do entendimento do computador.
*
Código da máquina (binário): O idioma da montagem é então traduzido (montado) em código da máquina - rastreamentos de 0s e 1s. Este é o único idioma que a CPU entende diretamente. Cada instrução, como adicionar dois números ou saltar a uma parte diferente do programa, possui um código binário específico atribuído a ele. Este código é determinado pela arquitetura da CPU (por exemplo, x86, braço).
Por exemplo, uma instrução de adição simples pode ser assim em diferentes representações:
* Montagem
(exemplo, pode variar dependendo da arquitetura): `Adicione ax, bx` (adicione o conteúdo do registro BX para registrar o AX)
*
Código da máquina (binário, exemplo, varia muito baseado na arquitetura): `00000000 00001011 00000000 00000001` (este é um exemplo * completamente fabricado * para fins ilustrativos. O código real da máquina é muito mais complexo e específico da arquitetura.)
O código binário específico para uma instrução depende muito da arquitetura da CPU e do conjunto de instruções. Diferentes CPUs têm diferentes conjuntos de instruções, o que significa que eles entendem diferentes códigos binários. Não existe um código binário universal para uma determinada instrução.