Começando com Assembly
Assembly

Publicado em: 29/06/2016 00:00:00, por IVAN VARGAS

Assembly, quem utiliza isso hoje em dia???
 
Bom, diretamente quase ninguém. Mas indiretamente todo mundo!
 
Como assim? Vou tentar ser mais claro: a única linguagem que os computadores realmente entendem é a linguagem binária, ou seja, 0 (zero) e 1 (um), que significa desligado/ligado, sem corrente/com corrente. Essa é a linguagem que os micro transistores do processador entendem. Um transistor é um componente que possui base, coletor e emissor. Dependendo do caminho percorrido pela corrente elétrica a CPU identifica o sinal como zero ou um.
 
Mas programar utilizando zeros e uns é um tanto inviável. Foi ai que surgiu a linguagem de montagem, ou seja, assembler, que passou a ser chamada de Assembly.
 
Porém, esta linguagem é muito básica, chamada de baixo nível, e realmente é um pouco complicado de se trabalhar com ela se o cara não é um Engenheiro da Computação.
 
Foi dai que surgiram as linguagens de médio nível, como C, e as de alto nível, como C++, etc.
Enfim, não importa qual a linguagem que você utiliza para programar. No fim, tudo será convertido para linguagem de montagem (Assembly) e interpretado por zeros e uns no processador.
 
Conhecendo Assembly temos o poder de compreender como um programa realmente funciona por dentro, e acompanhar seu passeio pelos registradores da CPU.
 
Se a sua intenção é debugar programas, escrever exploits, desenvolver um crack para um software qualquer ou, simplesmente, escovar bits, então não tem como fugir do nosso amigo Assembly.
 
Existem vários compiladores para Assembly, tando em Linux, MS-DOS, quanto Windows.
 
Estou postando aqui um pacote de ferramentas para você começar a programar em Assembly na plataforma do tio Bil Gates. Acredito que é uma boa forma de começar.
 
Futuramente irei postar alguns código gerados nesse ambiente, e falar um pouco do que costumo chamar de "pseudo assembly", ou seja, um conjunto de macros da ferramenta em questão que facilitam, em muito, o desenvolvimento.
 
O pacote contém os seguintes arquivos:
  1. Masm32 - o compilador Assembly (quem realiza o trabalho pesado)
  2. WinAsm - a IDE de desenvolvimento
  3. LEIAME.txt - um txt mostrando como configurar o ambiente
Segue o link: assembly_install.rar (6.0 MB)
 
Aguardem os próximos posts e bons estudos :)


IS5 TECNOLOGIA

São Lourenço do Sul/RS
Telefone: (53)9963-5721
E-mail: contato@is5.com.br
Facebook: fb.com/is5tecnologia
Skype: ivan_is5
GitHub: github.com/isvargas
O QUE FAZEMOS

Automação Comercial
Desenvolvimento de Sistemas
Hospedagem e Desenvolvimento de Sites
Aplicativos Mobile
Consultoria e Projetos Freelancer
Desenvolvido por is5 tecnologia