Cap5
ASSEMBLER E SIMULADOR
CAPíTULO V
ASSEMBLER E SIMULADOR
5.1. CONCEITOS DO AVMAC51 E DO AVLINK
O AVMAC 8051 é um assembler (realocável), com recursos de macros para a família do
MCS-51. O AVMAC51 recebe como entrada um arquivo com instruções em assemby e procede da seguinte forma:
•
Envia o arquivo a um pré-processador para validar as macros e as diretivas para assemblagem condicional. •
O pré-processador produz um segundo arquivo que é enviado ao assembler propriamente dito.
•
O assembler produz um arquivo objeto e um arquivo com a listagem do código-fonte.
•
O objeto produzido pelo assembler é enviado (pelo usuário) ao linker, o qual produz um arquivo absoluto em formato .HEX.
ARQ.ASM
PRÉPROCESADOR
ARQ.MXP
ASSEMBLER
ARQ.PRN
ARQ.OBJ
LINKER
ARQ.HEX
Figura 5.1. Fluxograma para utilização do assembler e linker.
Para ativar o assembler usa-se o comando que está ilustrado na figura 5.2.
AVMAC51
ARQUIVO
Nome do arquivo a ser assemblado.
Primeiro procura o ARQUIVO e se
OPÇÕES
Opções da linha de comando não o encontra, busca o ARQUIVO.ASM
Figura 5.2. Linha de comando para a ativação do assembler.
O linker é usado da forma ilustrada na figura 5.3.
MICROCONTROLADORES (MCS-51)
5 - 1
CAPÍTULO V
ASSEMBLER E SIMULADOR
AVLINK
ARQ =
ARQ1 ARQ2
ARQ3 ...
Nome do arquivo que
Lista de arquivos objeto
recebe os códigos linkados
Figura 5.3. Linha de comando para a ativação do linker.
Por default, os arquivos absolutos serão feitos em formato INTEL HEX.
Um programa em linguagem assembly consiste de uma seqüência de "sentenças", cada uma ocupando uma linha do arquivo. Cada sentença pode ter até 4 campos. Os campos são separados por espaços e tabulações.
Label
Operação
Operando
Comentário
Existem sentenças de 2 tipos:
•
Instruções
→ do conjunto de instruções do microcontrolador
•
Pseudo-instruções → que orientam o assembler.
LABEL: é um identificador que opcionalmente pode ser seguido por : (dois pontos). Ao usá-lo, é definido como um