Definição de Assembly

Por Carlos E. Morimoto. Há .

O Assembly foi provavelmente a primeira linguagem de programação da história, surgida na década de 50, época em que os computadores ainda usavam válvulas. A idéia do Assembly é usar um comando em substituição a cada instrução de máquina.

No Assembly, cada uma destas instruções equivale a uma instrução do processador. Ao invés de usar instruções como 10101011, você pode usar outras bem mais fáceis de entender e de memorizar, como add, div, mul, and, or, not, etc. Você também pode criar variáveis, que são pequenos espaços na memória RAM reservados para guardar algum tipo de informação, que o programa precisará mais tarde. Você pode usar aquelas instruções que citei para lidar com elas. Por exemplo, a instrução "add" faz com que o processador some duas variáveis; "add x, y" por exemplo, soma os valores de x e y.

Apesar de ser exaustivamente trabalhoso, você pode perfeitamente desenvolver pequenos programas em Assembly. Para isso só vai precisar de um compilador e bastante paciência para aprender. Você pode baixar um gratuito em http://www.web-sites.co.uk/nasm. Nesta mesma página você vai encontrar alguns manuais que podem ajudar bastante.

O compilador transforma o código escrito em Assembly em linguagem de máquina, que finalmente poderá ser entendida pelo processador. Existem também os decompiladores, que fazem o trabalho inverso, de transformar um programa já compilado em código Assembly. Este recurso é chamado de engenharia reversa. É assim que conseguem crackear programas, quebrar códigos de proteção (como o do DVD), etc. Claro que para isso, é preciso alguém que conheça muito de Assembly e que tenha disposição para ficar estudando o código até encontrar o que procura.

Por causa desta característica de permitir trabalhar diretamente com as instruções do processador, o Assembly é uma linguagem de baixo nível. Existem também linguagens de alto nível, como C++ ou Pascal, onde é possível usar várias funções já prontas ou mesmo ferramentas visuais, como o Kdeveloper ou o Kylix, que são ainda mais fáceis.

Em se tratando de programação, o fato de uma linguagem ser "de baixo nível", não significa que ela é ruim, mas apenas que ela manipula diretamente as instruções e endereços de memória e, por isso, é mais trabalhosa e voltada para o desenvolvimento de aplicativos otimizados.

Veja também
Console portátil apenas para jogar Pinball? Um designer imaginou como seria
Console portátil apenas para jogar Pinball? Um designer imaginou como seria
Games
Dois relógios G-Shock inspirados em League of Legends chegam ao Brasil; saiba o preço
Dois relógios G-Shock inspirados em League of Legends chegam ao Brasil; saiba o preço
Notícias
Preço dos HDs seguirá aumentando, IA tem relação com isso
Preço dos HDs seguirá aumentando, IA tem relação com isso
Hardware
Usuário cria Steam Deck caseiro usando um Ryzen 5 5600G
Usuário cria Steam Deck caseiro usando um Ryzen 5 5600G
Games
O seu está na lista? Celulares Galaxy que receberão a One UI 6.1
O seu está na lista? Celulares Galaxy que receberão a One UI 6.1
Mobile
PlayStation Portal ganha data de lançamento e preços oficiais no Brasil
PlayStation Portal ganha data de lançamento e preços oficiais no Brasil
Games
true