A programação de montagem costuma ser um ponto de partida crucial quando os programadores de computador estão aprendendo seu ofício. A linguagem assembly (também conhecida como ASM) é uma linguagem de programação para computadores e outros dispositivos e geralmente é considerada uma variante de baixo nível quando comparada a linguagens mais avançadas que oferecem funcionalidade adicional. Depois de escrever o código, um montador o converte em código de máquina (1s e 0s). Embora os aplicativos para programação de assembly tenham se tornado mais limitados devido à crescente complexidade dos processadores, o Assembly continua útil para uma série de propósitos, incluindo escrever código para executáveis autônomos ou drivers de dispositivo.
Passos
Parte 1 de 3: familiarizando-se com a linguagem Assembly
Etapa 1. Leia sobre a linguagem Assembly
Antes de iniciar qualquer tentativa de escrever código, é sempre uma boa ideia entender primeiro a linguagem em si. Existem vários recursos disponíveis, desde livros-texto a guias online.
Etapa 2. Aprenda os termos básicos
Por exemplo, você vai querer saber que um IDE (ambiente de desenvolvimento integrado) fornece uma interface de codificação que lida com coisas como edição, depuração e compilação de texto. Você também pode querer entender melhor como o assembly realmente funciona, como o fato de que "registradores" são o que armazenam os números associados ao código do programa. Uma melhor compreensão da terminologia tornará mais fácil aprender o próprio processo de escrita de código.
Etapa 3. Decida se os montadores são adequados para você
Lembre-se de que há várias linguagens de programação, incluindo algumas que fornecem muito mais funcionalidade do que o assembly. No entanto, ainda há uma variedade de aplicações para as quais a montagem é útil - desde a criação de executáveis autônomos para firmware de telefone e sistemas de controle de ar condicionado até o desenvolvimento de certas instruções específicas do processador.
Etapa 4. Determine qual montador você deseja usar
Montadores como A86, NASM ou GNU geralmente executam funções menos complexas e podem ser pontos de partida apropriados para iniciantes. Cada montador funciona de maneira um pouco diferente, portanto, as instruções subsequentes funcionarão supondo que você esteja usando MASM (Microsoft Macro Assembler) - um montador básico que funciona com sistemas operacionais Windows. Ele usa a linguagem assembly x86 e a sintaxe Intel.
Parte 2 de 3: Baixando e instalando o Assembler e IDE
Etapa 1. Baixe o próprio assembler
Você pode encontrar a versão mais recente do MASM contida no Visual Studio Enterprise 2015 (um IDE abrangente incluindo várias ferramentas), mas a versão original mais básica (MASM 8.0). MASM 8.0 é gratuito para download. Observe que alguns montadores, como o Flat Assembler, podem ser usados em vários sistemas operacionais, incluindo Windows, DOS e Linux. Outros montadores, incluindo Netwide Assembler (NASM) ou GNU Assembler (GAS), funcionarão com sistemas operacionais Mac.
- Para baixar MASM 8.0, simplesmente clique no botão Baixar próximo ao topo da página mencionada nesta etapa.
- Os requisitos do sistema irão variar dependendo do montador selecionado, mas MASM 8.0 requer o Windows 2000 Service Pack 3, Windows Server 2003 ou Windows XP Service Pack 2.
- A instalação do MASM 8.0 também exigirá que você tenha baixado e instalado o Visual C ++ 2005 Express Edition anteriormente.
Etapa 2. Baixe um IDE
Basta realizar uma pesquisa por "download do WinAsm" para localizar e instalar o IDE do WinAsm, que geralmente funciona bem com MASM. Outros IDEs podem ser mais apropriados dependendo de qual linguagem de programação você está usando. Uma alternativa popular é o RadAsm.
Etapa 3. Instale o MASM 8.0
Você pode começar a instalação imediatamente clicando em Executar após o download do programa. Como alternativa, você pode desejar instalá-lo posteriormente; nesse caso, basta clicar em Salvar. Ao clicar em Executar, o MASM 8.0 será instalado em seu diretório “[Visual C ++ Express] bin” e denominado ml.exe.
Etapa 4. Instale seu IDE
Após o download do WinAsm, basta extrair os arquivos e copiá-los para a pasta "c: / arquivos de programas \". Você também pode querer colocar um atalho em sua área de trabalho para facilitar o acesso.
Etapa 5. Configure seu IDE
Primeiro, inicie o programa WinAsm. Se você colocou um atalho em sua área de trabalho, simplesmente clique duas vezes nele. Observe que este processo será diferente se você estiver usando outro assembler ou IDE.
Etapa 6. Integrar WinAsm com MASM 8.0
Comece clicando na guia Ferramentas do WinAsm, selecionando Opções nessa guia e, finalmente, selecionando a guia Arquivos e caminhos. Em seguida, altere as três primeiras entradas (caminhos de referência) para a pasta de instalação do MASM. Quando terminar, clique em OK.
Após ajustar as informações na guia Arquivos e caminhos, as três primeiras entradas devem ser lidas como segue. O caminho binário deve ser C: / Masm32 / Bin; o caminho de inclusão deve ser C: / Masm32 / Include; e o caminho da biblioteca deve ser C: / Masm32 / Bin
Parte 3 de 3: Escrevendo código
Etapa 1. Comece a escrever o código
Comece iniciando o WinAsm e clicando na guia Arquivo. Em seguida, selecione Novos projetos e você verá várias opções. Essas opções incluem Aplicativo de console e EXE padrão. Se você estiver tentando criar um aplicativo baseado em GUI (interface gráfica do usuário), por exemplo, selecione o último.
Etapa 2. Use a estrutura do programa de montagem
Uma estrutura típica pode incluir uma linha que define a arquitetura, uma seção de dados (section.data) incluindo dados inicializados ou constantes, uma seção bss (section.bss) que declara variáveis e uma seção de texto (section.text) na qual você coloca seu código do programa. Essa seção final sempre começa com uma declaração _start global. Cada sequência é conhecida como um bloco de código.
Etapa 3. Compreender os comandos básicos
Existem três tipos de declarações em linguagem assembly: instruções executáveis ou instruções (dizem aos processadores o que fazer por meio do código de operação), diretivas montadoras ou pseudo-ops (descrevem processos de montagem para o montador) e macros (servem como um texto mecanismo de substituição).
Pontas
- Escrever código eficaz em linguagem assembly (ou qualquer outra) geralmente requer um estudo um tanto significativo. Você desejará especialmente aprender a sintaxe necessária para instruções de linguagem assembly e como compilar e vincular um programa assembly.
- Se você tiver alguma dificuldade ao tentar configurar um assembler específico, pode ser aconselhável ingressar em um fórum no qual questões específicas possam ser abordadas.
- Algumas linguagens de programação têm recursos para misturar assembly, como a função ASM ("") em C e C ++. Esta é uma boa maneira de começar.
- Se você estiver interessado em um IDE que funcione com as versões mais recentes do MASM, verifique o Visual MASM em www.visualmasm.com/.