![cover image](https://wikiwandv2-19431.kxcdn.com/_next/image?url=https://upload.wikimedia.org/wikipedia/commons/thumb/f/f3/Motorola_6800_Assembly_Language.png/640px-Motorola_6800_Assembly_Language.png&w=640&q=50)
Linguagem assembly
linguagem de montagem para código de maquina. / De Wikipedia, a enciclopédia encyclopedia
Assembly ou linguagem de montagem é uma notação legível por humanos para o código de máquina que uma arquitetura de computador específica usa, utilizada para programar códigos entendidos por dispositivos computacionais, como microprocessadores e microcontroladores. O código de máquina torna-se legível pela substituição dos valores em bruto por símbolos chamados mnemónicos[1][2].
![Thumb image](http://upload.wikimedia.org/wikipedia/commons/thumb/f/f3/Motorola_6800_Assembly_Language.png/640px-Motorola_6800_Assembly_Language.png)
Por exemplo, enquanto um computador sabe o que a instrução-máquina IA-32 (B0 61
) faz, para os programadores é mais fácil recordar a representação equivalente em instruções mnemónicas MOV AL, 61h
. Tal instrução ordena que o valor hexadecimal 61 (97, em decimal) seja movido para o registrador 'AL'.
Embora muitas pessoas pensem no código de máquina como valores em binário, ele é normalmente representado por valores em hexadecimal.
A tradução do código Assembly para o código de máquina é feita pelo montador ou assembler. Ele converte os mnemónicos em seus respectivos opcodes, calcula os endereços de referências de memória e faz algumas outras operações para gerar o código de máquina que será executado pelo computador.