Aldeia Numaboa
Um portal diferente em Português do Brasil
Informática da Aldeia

Tutoriais
Home Informática Tutoriais MASM Cap. II - Nossa primeira aplicação

Na Aldeia

Há 105 visitantes online

2796 registros
0 hoje
6 nesta semana
4 neste mês

Boas vindas: delilah

Estatística

Artigos: 847
Artigos lidos: 3918861
Arquivados: 41
Downloads: 416
Baixados: 161778
Glossário: 1198
Bibliografia: 24
JoomlaWatch Stats 1.2.7 by Matej Koval

Visitas de onde?

88,3%Brasil Brasil
9,2%Portugal Portugal
0,8%EUA EUA
0,2%Espanha Espanha
0,1%Alemanha Alemanha

Visitantes

Hoje: 409
Ontem: 1940
Esta semana: 2349
Semana passada: 12942
Este mês: 2349
Mês passado: 52379
Total: 123634

Registro/Login

Para fazer login ou registrar-se

Usuários registrados têm algumas regalias!

Sex

14

Dez

2007


07:52

Cap. II - Nossa primeira aplicação PDF Imprimir Indique esta página
Avaliação: / 1
PiorMelhor 
Tutoriais - MASM + RadASM
Escrito por vovó Vicki   


Índice do Artigo
Cap. II - Nossa primeira aplicação
Explicando o vídeo
Variáveis e Modelo
Outros exemplos
Exercícios
Todas as páginas

Nível intermediário

Masm32+RadASM

Capítulo II - Nossa primeira aplicação

Escrito por: ^A|An M0r3N0^

Conselheiro: RedH@wk

Tradução: ~Uglinho~


O presente texto foi escrito para fins educacionais e de pesquisa e é de livre distribuição contanto que se preserve o conteúdo e os direitos do autor.

A estrutura dos nossos programas

Para criar um programa em MASM32 deve-se seguir uma estrutura que o nosso compilador possa entender. Por exemplo:

.386 
.model flat, stdcall 
option casemap:none 
 
include    windows.inc 
include    kernel32.inc 
includelib kernel32.lib 
 
.data 
 
.code 
Prog001: 
 
invoke ExitProcess,0 
 
end Prog001

Com este código já criamos um programa que nosso compilador pode entender e assim criar nossa aplicação. Agora explicarei para que serve cada uma destas seções do código:

  • .386 - Esta diretiva serve para estabelecer o tipo de processador e as instruções com as quais irá trabalhar. Neste caso é um 80386.
  • .model flat, stdcall - Aqui estabelecemos o modelo de memória requerido para nossos programas de 32 bits.
  • option casemap:none - Esta opção torna possível a diferenciação de maiúsculas e minúsculas, por exemplo: "Z" é diferente de "z".
  • Include e Includelib - O MASM32 inclui arquivos e bibliotecas para manejar um grande número de funções que existem no Windows. Estas funções são conhecidas como API, como por exemplo a API ExitProcess que está em nosso código.

    O include se utiliza para adicionar arquivos com extensão .inc e .asm
    O includelib se utiliza para adicionar bibliotecas com extensão .lib

    O MASM32 também inclui o arquivo window.inc onde encontramos um grande número de constantes e estruturas usadas pelas funções do Windows (API).
  • .data - Existem dois tipos de informação, a informação inicializada e a não inicializada (.data?)
    1. Informação Inicializada (.data) - Nesta seção declaramos os dados que conhecemos, como os quais nosso programa se inicia. Por exemplo:
      .data
      EtiquetaTipo de variávelDados inicializados
      Msg_Textodb"BEM VINDO AO CURSO MASM + RADASM",0
      Valor_1dd7
    2. Informação Não Inicializada (.data?) - Nesta Seção declaramos os dados que não conhecemos ou que vamos escrever quando o programa for executado. Normalmente a utilizamos para armazenar dados, por exemplo:
      .data?
      EtiquetaTipo de variávelDados inicializados
      Bufferdb128 dup (?)
      Valor_2dd?
  • .code - Depois das seções de dados, devemos indicar ao MASM32 onde começa o código do programa e também onde termina. Para isto colocamos uma etiqueta, por exemplo Prog001, seguida de ":", para indicar que abaixo começa o código do nosso programa e, ao terminar o código do programa, se escreve end mais a etiqueta que declaramos, ficando desta maneira: end Prog001

Programando no RadASM

Ao nosso código acima implementaremos uma nova função para que mostre uma janela que nos dê as boas vindas. Para isto abriremos o RadAsm.exe e começaremos a programar como mostra o video:

Vídeo 1
Prog001.exe

Para assistir ao vídeo, faça o download de prog001.exe.



Última atualização ( Sáb, 26.04.2008 17:09 )
 

Topo

Topo