Assembly
LABORATÓRIO 1 DE AOC
Relatório apresentado à disciplina
Arquitetura
e
Organização
de
Computadores do curso de engenharia eletrônica da UTFPR, ministrada pelo professor Antônio Gortan.
CURITIBA
SETEMBRO DE 2013
Perguntas:
1) Quais as opções de assembler necessárias ao ML para criar arquivos objeto que sejam linkáveis para Windows32 bits? Explique o que significa cada uma.
/c: Assemblar arquivos sem fazer o link. É utilizado para a criação de um .obj para fazer a “linkagem” posteriormente. Afeta todos os arquivos enviados ao ML.
/coff: Faz com que os arquivos .obj sejam compatíveis com os arquivos .obj do formato padrão COFF (Common Object File Format) da Microsoft.
/Fl: Cria arquivos de lista no formato .lst.
/Fm: Cria arquivos de mapa com símbolos do linkador no formato .map.
2) Quais as opções mínimas necessárias para o linkador de 32 bits para gerar arquivos executáveis para Windows32 bits (GUI e CONSOLE)? Explique o significado de cada uma.
As opções mínimas necessárias para o linkador de 32 bits para gerar arquivos executáveis para Windows 32 bits (CONSOLE e GUI) foram definidas em LFLAGS,
LFLAGSW e LFLAGSC, e são elas:
/ENTRY: Especifica uma função de entrada como endereço de entrada para um arquivo .exe ou .dll, no caso meuMain.
/RELEASE: Inclui um Checksum (Soma de Verificação, auxilia na verificação da integridade do arquivo) no executável gerado.
/DEBUG: Tem como objetivo incluir informações de debug no executável gerado. /SUBSYSTEM: Especifica o ambiente para o executável. Utiliza-se o parâmetro WINDOWS para GUI e CONSOLE para console.
3) Quais foram as diretivas simplificadas de assemblagem utilizadas? Essas diretivas criaram quais segmentos, com quais nomes? Explique como você descobriu o nome dos segmentos criados.
.386P: Define máquina 386 modo protegido.
.model FLAT: Diretiva utilizada para definir o modelo de memória a ser utilizado, no caso FLAT. No