Linguagem Assembly
Por: Guilherme Galli • 6/6/2016 • Trabalho acadêmico • 5.076 Palavras (21 Páginas) • 579 Visualizações
UNIVERSIDADE SÃO JUDAS TADEU
FACULDADE DE TECNOLOGIA E CIÊNCIAS EXATAS
CIÊNCIA DA COMPUTAÇÃO
INTRODUÇÃO À COMPUTAÇÃO
Linguagem Assembly
Gabriel Rossi RA 201411843
Isabella de Souza RA 201405487
João Pedro Fonte RA 201400475
Jonathan Ruiz RA 201306472
Leonam Almeida RA 201412958
Natalia Cardoso Vicente RA 200902486
Renato F. Cirielli RA 201205144
TURMA - 1BCPN
1º Semestre 2014
Sumário
Resumo 5
Abstract 6
1 História 7
2 Características 7
3 Uso atual 7
4 Montador 8
5 Tipos de Dados 8
6 Registradores 8
6.1 Tipos de Registradores 8
6.1.1 Registradores de Uso Geral 9
6.1.1.1 Acumulador (EAX) 9
6.1.1.2 Base (EBX) 9
6.1.1.3 Contador (ECX) 9
6.1.1.4 Dados (EDX) 9
6.1.2 Registradores de Segmento (Endereçamento) 9
6.1.2.1 Segmento de código (CS) 9
6.1.2.2 Segmento de dados (DS) 9
6.1.2.3 Segmento de pilha (SS) 9
6.1.2.4 Segmentos extra (ES/FS/GS) 9
6.1.3 Registradores Apontadores 10
6.1.3.1 Fonte do índice (SI) 10
6.1.3.2 Destino do índice (DI) 10
6.1.3.3 Ponteiro da base (BP) 10
6.1.3.4 Ponteiro da pilha (SP) 10
6.1.3.5 Ponteiro de instrução (IP) 10
6.1.4 Registradores de estados 10
6.1.4.1 Sinalizador de transporte (CF) 10
6.1.4.2 Sinalizador de paridade (PF) 10
6.1.4.3 Sinalizador de transporte auxiliar (AF) 11
6.1.4.4 Sinalizador zero (ZF) 11
6.1.4.5 Sinalizador de sinal (SF) 11
6.1.4.6 Sinalizador de interrupção (TF) 11
6.1.4.7 Habilitar chamadas de interrupção (IF) 11
6.1.4.8 Sinalizador de direção (DF) 11
6.1.4.9 Sinalizador de estouro (OF) 11
6.1.5 Unidade de ponto flutuante _ 11
6.1.6 Registradores de controle 11
6.1.7 Registradores de debug 12
6.1.8 MMX (MultiMedia eXtension) / (Extensão multimídia) 12
6.1.9 SSE (Streaming SIMD Extensions) / (Extensão de transmissões SIMD) 12
7 Programação 12
7.1 Pilha 12
7.2 Instruções básicas 13
7.2.1 Movimentação de dados 13
7.2.2 Soma 13
7.2.3 Subtração 13
7.2.4 Comparação 13
7.2.5 Jump 13
7.2.5.1 Instruções do comando jump 14
7.3 Exemplos 14
7.3.1 “Hello World!” 14
7.3.2 Estrutura de repetição 15
7.3.3 Desvio condicional 15
7.4 Comparações 15
7.4.1 Vantagens do assembly 15
7.4.2 Desvantagens do assembly 16
7.4.3 Vantagens das linguagens de alto nível 16
7.4.4 Desvantagens das linguagens de alto nível _ 17
7.5 Assembly vs Java - Desvio condicional 17
...