Buscar

Linguagem de Montagem (Assembler)

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

www.professorferlin.blogspot.com 1
1Prof. Edson Pedro Ferlin Arquitetura de Computadores
Linguagem de Montagem
(Assembler)
Prof. Edson Pedro Ferlin
2
Linguagem de MontagemAssembler
Prof. Edson Pedro Ferlin Arquitetura de Computadores
Linguagens de Programação
•Linguagens de Alto Nível – Pascal, Lisp, Prolog, ...
•Linguagens de Nível Médio – C
•Linguagens de Baixo Nível – Assembler (Assembly)
www.professorferlin.blogspot.com 2
3
Linguagem de MontagemAssembler
Prof. Edson Pedro Ferlin Arquitetura de Computadores
Processo de Compilação
Editor de Texto(ASCII)
.PAS.C .ASM
Compilador Montador
Linker
.OBJ.OBJ
.EXE.COM
Código Fonte
Código Objeto
Código Executável
4
Linguagem de MontagemAssembler
Prof. Edson Pedro Ferlin Arquitetura de Computadores
Compilação
www.professorferlin.blogspot.com 3
5
Linguagem de MontagemAssembler
Prof. Edson Pedro Ferlin Arquitetura de Computadores
Linkedição
6
Linguagem de MontagemAssembler
Prof. Edson Pedro Ferlin Arquitetura de Computadores
Linguagen de Montagem
Linguagem de montagem é essencialmente uma representação simbólica para uma linguagem numérica de máquina.
O que é uma linguagem de montagem?• É uma linguagem em que cada comando (mnemônico) produzexatamente uma instrução de máquina.• É fácil de programar (linguagem de máquina).• O programador tem acesso a todos os recursos e instruções disponíveisna máquina.
www.professorferlin.blogspot.com 4
7
Linguagem de MontagemAssembler
Prof. Edson Pedro Ferlin Arquitetura de Computadores
Formato da Linguagen de Montagem
mov a,#1d ; a recebe 1 decimal
mov b,#2d ; b recebe 2 decimal
Loop: add a,b ; a := a + b
inc b ; incrementa b
sjmp Loop ; Loop infinito
Comentários
Operando(s)
Mnemônico
Label
8
Linguagem de MontagemAssembler
Prof. Edson Pedro Ferlin Arquitetura de Computadores
Processo de Montagem
Montadores de Dois Passos:
•Passo 1 – Criação das tabelas (símbolos e de instruções)
•Passo 2 – Gerar o código objeto e as informações para o linker
Erros – Símbolo indefinido, duplicação de símbolos, operação não válida
www.professorferlin.blogspot.com 5
9
Linguagem de MontagemAssembler
Prof. Edson Pedro Ferlin Arquitetura de Computadores
Módulo Objeto
Identificação
Tabela de Entry Points
(símbolos internos)
Tabela de Referência Externas
(Símbolos externos)
Instruções de Máquina 
e Constantes
Dicionário de Relocação
Fim do Módulo
10
Linguagem de MontagemAssembler
Prof. Edson Pedro Ferlin Arquitetura de Computadores
Ligação e Carga
www.professorferlin.blogspot.com 6
11
Linguagem de MontagemAssembler
Prof. Edson Pedro Ferlin Arquitetura de Computadores
Exemplo de Compilação
PRINTF 
("a");
1011-1010-0100-0001-0000-00001011-0100-0000-00101100-1101-0010-0001
BA 41 00B4 02CD 21
MOV DX,#41hMOV AH, #2hINT 21h
12
Linguagem de MontagemAssembler
Prof. Edson Pedro Ferlin Arquitetura de Computadores
Afinação de Programas
www.professorferlin.blogspot.com 7
13
Linguagem de MontagemAssembler
Prof. Edson Pedro Ferlin Arquitetura de Computadores
Compilador
Sugestões para escolher um Compilador
Fornecidas pela Intel (Capítulo 6 – Suggestions for Choosing a Compiler)
• Important Features for a Compiler
• Compiler Switches Recommendation

Outros materiais