INSTRUÇÕES DE TRANSFERÊNCIA
|
|
- Natan Borges Barros
- 8 Há anos
- Visualizações:
Transcrição
1 INSTRUÇÕES DE TRANSFERÊNCIA Transferência de dados MOV destino, fonte move fonte para destino (byte, word ou double word) PUSH fonte coloca fonte na pilha (word ou double word) POP destino retira topo da pilha para destino (word ou double word) XCHG op1, op2 troca (exchange) operandos BSWAP r32 inverte a ordem dos bytes 1. Acesso a registros de segmento: MOV, PUSH e POP; 2. Endereçamento imediato para CS e IP: não permitido; 3. Operandos de PUSH e POP: 16 ou 32 bits 4. PUSH: decrementa SP (2 ou 4) e escreve; POP: lê e incrementa SP (2 ou 4) Transferência de flags PUSHF/PUSHFD POPF/POPFD LAHF SAHF Transferência sobre endereços coloca registrador de flags na pilha (16 bits para F ou 32 bits para EF) retira registrador de flags da pilha (16 bits para F e 32 bits para EF) carrega AH com flags (8 bits menos significativos do registrador F) carrega flags com AH (8 bits menos significativos do registrador F) LEA r16/r32, mem carrega endereço efetivo do operando mem para reg (16 ou 32 bits) LDS r16/32, mem carrega endereço de mem para reg (16 ou 32 bits) e DS (16 bits) LES r16/32, mem carrega endereço de mem para reg (16 ou 32 bits) e ES (16 bits) LFS r16/32, mem carrega endereço de mem para reg (16 ou 32 bits) e FS (16 bits) LGS r16/32, mem carrega endereço de mem para reg (16 ou 32 bits) e GS (16 bits) Prof. Sérgio L. Cechin 1 de 12
2 Tradução XLAT converte AL (translate byte) AL [BX+AL]. Entrada e Saída IN acumulador, porta leitura de byte, word ou dobleword para AL, AX ou EAX OUT porta, acumulador transfere byte, word ou doubleword de AL, AX ou EAX para a porta 1. Espaço de endereçamento separado da memória 2. Capacidade para endereços (portas) 3. Formatos possíveis: IN AL, im8 OUT im8, AL IN AL, DX OUT DX, AL IN AX, im8 OUT im8, AX IN AX, DX OUT DX, AX IN EAX, im8 OUT im8, EAX IN EAX, DX OUT DX, EAX INSTRUÇÕES ARITMÉTICAS Com dois operandos ADD destino, fonte soma (destino = destino + fonte) ADC destino, fonte soma com carry (destino = destino + fonte + carry) SUB destino, fonte subtrai fonte do destino (destino = destino fonte) SBB destino, fonte subtrai com borrow (destino = destino fonte borrow) CMP destino, fonte compara destino fonte (sem armazenar o resultado) 1. Registradores de segmento não podem ser operados 2. Os dois operandos devem ter a mesma largura 3. O registrador envolvido determina a largura (8, 16 ou 32) 4. No caso de mem ou imed., declarar explicitamente a largura Prof. Sérgio L. Cechin 2 de 12
3 Com um operando INC destino incrementa de 1 DEC destino decrementa de 1 NEG destino troca sinal (complemento de dois) Multiplicação e Divisão MUL fonte multiplica como inteiro sem sinal IMUL fonte multiplica como inteiro com sinal DIV fonte divide como inteiro sem sinal IDIV fonte divide como inteiro com sinal 1. Um dos operandos está implícito; 2. Multiplicação de 8 bits AX AL x fonte... de 16 bits DX:AX AX x fonte... de 32 bits EDX:EAX EAX x fonte 3. Divisão de 8 bits AL (AH = resto) AL / fonte... de 16 bits AX (DX = resto) DX:AX / fonte... de 32 bits EAX (EDX = resto) EDX:EAX / fonte 4. Outros formatos para IMUL (para >= 486) IMUL reg, imed reg = reg x imed IMUL reg1, reg2, imed reg1 = reg2 x imed IMUL reg, mem, imed reg = mem x imed IMUL reg1, reg2 reg1 = reg1 x reg 2 IMUL reg, mem reg = reg x mem Prof. Sérgio L. Cechin 3 de 12
4 Conversão e Ajuste CBW converte byte para word (AL para AX) CWD converte word para double word (AX para DX:AX) CWDE converte word para double word (AX para EAX) CDQ converte double word para quad word (EAX para EDX:EAX) DAA decimal adjust after addition (sobre AL) DAS decimal adjust after subtraction (sobre AL) AAA ASCII adjust after addition (sobre AL) AAS ASCII adjust after subtraction (sobre AL) AAM ASCII adjust after multiplication (sobre AX) AAD ASCII adjust before division (sobre AX) 1. Usadas em conjunto com as instruções ADD, SUB, MUL e DIV 2. Para ADD, SUB e MUL, aplicar o ajuste após a operação 3. Para DIV, aplicar o ajuste antes da operação 4. AAx, ajustam um BCD por byte; 5. DAx, ajustam dois BCD por byte. Conversão e Ajuste MOVSX destino, fonte move fonte para destino com extensão do sinal (números com sinal) MOVZX destino, fonte move fonte para destino com extensão de zeros (inteiros positivos) 1. Após o Formatos possíveis MOVSX r16, rm8 MOVSX r32, rm8 MOVSX r32, rm16 MOVZX r16, rm8 MOVZX r32, rm8 MOVZX r32, rm16 Prof. Sérgio L. Cechin 4 de 12
5 MANIPULAÇÃO DE BITS Instruções lógicas NOT AND OR XOR TEST Deslocamento destino destino, fonte destino, fonte destino, fonte destino, fonte (AND, sem armazenar resultado) SHR destino, contador shift logical right 0 SAR destino, contador shift arithmetic right SHL destino, contador shift left SAL destino, contador shift left 0 ROR destino, contador rotate right 0 RCR destino, contador rotate with carry right ROL destino, contador rotate left RCL destino, contador rotate with carry left 1. Codificações possíveis operação reg,1 operação reg, CL operação reg, im8 operação mem,1 operação mem, CL operação mem, im8 2. Número de deslocamentos: 0 até 31 (a partir do 286) Prof. Sérgio L. Cechin 5 de 12
6 Operações sobre bits BSF operand1, operand2 Bit Scan Forward BSR operand1, operand2 Bit Scan Reverse BT operand, bit_index Bit Test BTC operand, bit_index Bit Test and Complement BTR operand, bit_index Bit Test and Reset BTS operand, bit_index Bit Test and Set 1. A partir do BSF e BSR procuram pelo primeiro bit em 1 BSF, a partir do LSB BSR, a partir do MSB 3. BT, BTC, BTR e BTS testam o bit indicado (copia p/ ) BT, só testa BTC, testa e inverte BTR, testa e coloca 0 BTS, testa e coloca 1 INSTRUÇÕES DE DESVIO 1. desvios dentro do segmento de código corrente (não altera CS) near jump instrução dentro do segmento; short jump instrução localizada entre 128 e +127 da posição atual 2. desvios para fora do segmento de código corrente (altera o CS) far jump desvio para instrução em outro segmento de código Incondicional JMP destino 1. Formas possíveis: Direto: short IP IP + offset (1 byte) near IP IP + offset (2 ou 4 byte) far CS:IP offset (4 bytes) Indireto near IP (ou EIP) conteúdo de registrador ou de memória far CS:IP (ou CS:EIP) conteúdo de registrador ou de memória Prof. Sérgio L. Cechin 6 de 12
7 Controle de Laço LOOP endereço loop LOOPE endereço loop while equal / zero (enquanto ZF=1) LOOPZ endereço loop while equal / zero (enquanto ZF=1) LOOPNE endereço loop while not equal / not zero (ZF=0) LOOPNZ endereço loop while not equal / not zero (ZF=0) JCXZ endereço jump if CX = 0 JECXZ endereço jump if ECX = 0 1. LOOP e LOOPcc, utilizam o registro CX (ECX) como contador de laço 2. LOOPcc, além do contador, utilizam o ZF para decidir se desviam 3. Os desvios são short (8 bits) Subrotinas CALL endereço RET valor_opcional Interrupções de Software INT tipo interrupção INTO interrupção se overflow IRET retorno de interrupção Prof. Sérgio L. Cechin 7 de 12
8 Desvio condicional JG endereço greater ((SF XOR OF) OR ZF) = 0 JNLE endereço not less nor equal idem JGE endereço greater or equal (SF XOR OF) = 0 JNL endereço not less idem JL endereço less (SF XOR OF) = 1 JNGE endereço not greater nor equal idem JLE endereço less or equal ((SF XOR OF) OR ZF) = 1 JNG endereço not greater idem JO endereço overflow OF = 1 JS endereço sign SF = 1 JNO endereço not overflow OF = 0 JNS endereço not sign SF = 0 JA endereço above ( OR ZF) = 0 JNBE endereço not below nor equal idem JAE endereço above or equal = 0 JNB endereço not below idem JB endereço below = 1 JNAE endereço not above nor equal idem JBE endereço below or equal ( OR ZF) = 1 JNA endereço not above idem JC endereço carry = 1 JE/JZ endereço equal / zero ZF = 1 JP/JPE endereço parity / parity even PF = 1 JNC endereço not carry = 0 JNE/JNZ endereço not equal / not zero ZF = 0 JNP/JPO endereço not parity / parity odd PF = 0 1. Todos os desvios condicionais são relativos 2. Podem ser short (8bits) ou near (16 bits ou 32 bits) 3. Desvios near, somente a partir do 386 Prof. Sérgio L. Cechin 8 de 12
9 MANIPULAÇÃO DE STRINGS Utilização implícita dos seguintes registros: [E]SI índice para string fonte [E]DI índice para string destino ES segmento do string destino [E]CX contador AL/AX/EAX valor de busca (destino p/ LODS, fonte p/ STOS) DF 0 (auto incremento p/ DI, SI), 1 (auto decremento p/ DI, SI) ZF condição de término para busca e comparação Instruções: (s, nas instruções, pode ser substituído por B, W ou D) MOVSs move source string to destination string Move um elemento: DS:SI ES:DI CMPSs compare source string with destination string Compara dois elementos: DS:SI - ES:DI SCASs scan destination string Procura pelo elemento AL (AX ou EAX): AL - ES:DI LODSs load into AL/AX from source string Carrega elemento para AL (AX ou EAX): DS:SI AL STOSs store AL/AX into destination string Armazena elemento de AL (AX ou EAX): ES:DI AL 1. Controle de auto incremento (decremento): flag DF=0 (1) 2. Controle de repetição REP repeat REPE / REPZ repeat while equal / zero REPNE / REPNZ repeat while not equal / not zero Colocadas como prefixo Utiliza ECX para o número de repetições Prof. Sérgio L. Cechin 9 de 12
10 CONTROLE DO PROCESSADOR Instruções sobre flags STC CLC CMC STD CLD STI CLI set carry flag clear carry flag complement carry flag set direction flag clear direction flag set interrupt-enable flag clear interrupt-enable flag Instruções condicionais sobre flags SETcc rm8 set byte on condition (>=386) CMOVcc destino, fonte conditional move (>= Pentium Pro) Detalhes 1. cc todas as condições dos desvios condicionais 2. destino registro (16 ou 32 bits); fonte registro ou memória Instruções de prefixo SEG segreg override default segment register 1. Na linguagem simbólica, a instrução aparece como: MOV AX, ES:[BX] Prof. Sérgio L. Cechin 10 de 12
11 PILHA PILHA Exemplo de Programa SEGMENT STACK DB 32 DUP ( STACK--- ) ENDS CR: EQU 00DH LF: EQU 00AH DADOS SEGMENT MENSAGEM DB Hello World!,CR,LF TAMANHO EQU $-MENSAGEM CONTADOR DB? DADOS ENDS CODIGO SEGMENT ASSUME CS:CODIGO,SS:PILHA,DS:DADOS START: MOV AX, DADOS ; Inicializa segmento de dados MOV DS, AX MOV CONTADOR, 10 ; Loop de operação DE_NOVO: CALL FRASE DEC CONTADOR JNZ DE_NOVO MOV AH, 4CH ; DOS: Termina com código de retorno MOV AL, 0 INT 21H FRASE PROC NEAR MOV AH, 40H ; DOS: Grava em arquivo MOV BX, 0001H ; Saída padrão LEA DX, MENSAGEM MOV CX, TAMANHO INT 21H RET FRASE ENDP CODIGO ENDS END START Prof. Sérgio L. Cechin 11 de 12
12 Short Reference MOV destino, fonte PUSH fonte POP destino LEA r16/r32, mem Lrs r16/r32, mem rs=ds, ES, FS, GS XLAT AL [BX+AL] ADD destino, fonte ADC destino, fonte SUB destino, fonte SBB destino, fonte CMP destino, fonte INC destino DEC destino NEG destino MUL fonte AX AL x fonte; DX:AX AX x fonte; EDX:EAX EAX x fonte IMUL fonte DIV fonte IDIV fonte DAA (decimal-soma) AL DAS (decimal-subtração) AL AAA (ASCII-soma) AL AAS (ASCII-subtração) AL AAM (ASCII-multiplicação) AX AAD (ASCII-divisão) AX Prof. Sérgio L. Cechin 12 de 12
Laboratório de Sistemas Processadores e Periféricos Lista de comandos de Assembly
Laboratório de Sistemas Processadores e Periféricos Lista de comandos de Assembly Gustavo G. Parma Lista dos comandos assembly que serão utilizados ao longo das práticas. 1 Comandos 1. ADD destino, fonte
Leia maisOperadores lógicos (bit a bit)
Operadores lógicos (bit a bit) Instrução AND Instruções: AND OR XOR NOT Os operandos destas instruções podem ser de 8 ou 16 bits 10010011
Leia maisx86 arquitetura e instruções básicas
x86 arquitetura e instruções básicas 1 Família x86 Data CPU Palavra Endereço (bits) 1978 8086, 8088 1982 80186, 80188 1985 80386 1989 80486 1993 Pentium, Pentium MMX 1995 Pentium Pro 1997 Pentium II/III,
Leia maisMicroprocessadores. Família x86 - Programação do i8086
Família x86 - António M. Gonçalves Pinheiro Departamento de Física Covilhã - Portugal pinheiro@ubi.pt Estudo Genérico de Microprocessador Microprocessadores i8086 1. Modelo de Programação; 2. Espaço de
Leia maisProgramação ao nível da máquina. Operações lógicas e aritméticas
Programação ao nível da máquina Operações lógicas e aritméticas Operações lógicas e aritméticas Operações: aritméticas: add, sub, inc, dec, cmp lógicas: and, or, xor, not Realizadas pela ALU (Arithmetic
Leia maisArquitectura de Computadores 3º Teste. Instruções do x86
Arquitectura de Computadores 3º Teste Ano Lectivo: 2009/2010 Data: 19 de Dezembro de 2009 Duração: 2h00 INFORMAÇÕES GERAIS 1. Mantenha na secretária apenas a sua identificação e uma caneta (azul ou preta).
Leia mais04/09/2011. Tipos de Instruções. Dados numéricos. Template. Tipo de instruções. Montagem. Conjunto de Instruções do Pentium (ISA) Instruções Diádicas
Tipos de Instruções Conjunto de Instruções do Pentium (ISA) Prof. Eduardo Tavares eagt@cin.ufpe.br Manipulação de bit Laços e Saltos Subrotina e interrupções Controle Dados numéricos Template Byte (8 bits)
Leia maisArquitectura de Computadores
Arquitectura de Computadores Exemplos de Microprogramação (12.3); Família Intel x86 José Monteiro Licenciatura em Engenharia Informática e de Computadores Departamento de Engenharia Informática (DEI) Instituto
Leia mais8. Instruções de multiplicação e divisão
Cap8.1 8. Instruções de multiplicação e divisão 8.1 Instruções de multiplicação MUL fonte IMUL fonte MUL (multiply) -> usada com números em representação não-sinalizada IMUL (integer multiply) -> usada
Leia mais7. Instruções lógicas, de deslocamento e de rotação
7. Instruções lógicas, de deslocamento e de rotação São instruções que permitem mudar o padrão de bits num byte (8 bits) ou numa palavra (16 bits). Linguagens de alto nível (exceto C) não permitem manipular
Leia maisSoftware de Telecomunicações Tópicos de Assembly86
Software de Telecomunicações Tópicos de Assembly86 Rui Gustavo Crespo IST/DEEC@2005 Software de Telecomunicações Asm86 : 1/69 Pentium arquitectura (1) O Pentium adopta arquitectura CISC reduzido número
Leia maisArquitetura de Computadores. Prof. João Bosco Jr.
Arquitetura de Computadores Prof. João Bosco Jr. Unidade II Aula 1 Nível ISA Posicionado entre a microarquitetura e o SO Define a arquitetura (Conjunto de Instruções) É a interface entre o Software e o
Leia maisMicroprocessador Intel 8086
Pontifícia Universidade Católica do Rio Grande do Sul Microprocessador Intel 8086 Disciplina: Arquitetura de Computadores I Professor: Eduardo Augusto Bezerra Alunos: Fabiano Klein Franklin Mota Amormino
Leia maisPMR5229 Metodologia de projeto. Jun Okamoto Jr.
PMR5229 Metodologia de projeto Jun Okamoto Jr. Definição do Problema A B C Como? (x, y, θ) Robô móvel Definição do Problema Pernas ou Rodas? 15 km/h 110 km/h 300 km/h Pernas Quantas? Definição do Problema
Leia maisOs 3 principais tipos de Instruções (INSTRUTION SET) dos up são:
Linguagem Assembly Os 3 principais tipos de Instruções (INSTRUTION SET) dos up são: INSTRUÇÕES DE TRANSFERÊNCIA DE DADOS - Movem dados entre Registradores, Registradores e Memória e Valores Fixos para
Leia maisInstruções funcionamento em 16 bits. 8B bytes W Mod 000 r/m
Instruções funcionamento em 6 bits 0 a bytes Mov BYTE PTR [BX], 06h 00 0W Mod 000 r/m 0000 00 0 0 0 8A 07 06 3 bytes 00 8B 07 06 00 4 bytes 00 0W Mod 000 r/m 000 00 0000 0000 Mov WORD PTR [BX], 06h Instruções
Leia mais7. A pilha e subrotinas
Cap7.1 7. A pilha e subrotinas 7.1 Organização da Pilha (stack) Stack: estrutura de dados de uma dimensão organizada em algum trecho (segmento) da Memória; o primeiro item adicionado é o último a ser removido
Leia maisA arquitectura IA32. A arquitectura de um processador é caracterizada pelo conjunto de atributos que são visíveis ao programador.
A arquitectura IA32 A arquitectura de um processador é caracterizada pelo conjunto de atributos que são visíveis ao programador. Tamanho da palavra Número de registos visíveis Número de operandos Endereçamento
Leia maisArquitectura de Computadores (ACom)
Arquitectura de Computadores (ACom) MEAer Acetatos das Aulas Teóricas Versão 5.0 - Português Aula N o 15: Título: ; Arquitecturas de processadores em pipeline Sumário: (registos, bits de estado, memória,
Leia maisProfessor: Dr. Rogério Rodrigues de Vargas.
UNIVERSIDADE ESTADUAL DE SANTA CRUZ DEPARTAMENTO DE CIÊNCIAS EXATAS E TECNOLÓGICAS Bacharelado em Ciência da Computação Software Básico Linguagem de Programação Assembly: Uma introdução no Linux/i386 (AT&T)
Leia maisAJProença, Sistemas de Computação, UMinho, 2017/18 1. Componentes (físicos) a analisar: a unidade de processamento / o processador:
Introdução aos Sistemas de Computação (4) Estrutura do tema ISC 1. Representação de informação num computador 2. Organização e estrutura interna dum computador 3. Execução de programas num computador 4.
Leia mais****************************************************************************
**************************************************************************** T U T O R I A L D E L I N G U A G E M A S S E M B L Y --------------- --- ----------------- --------------- Conteúdo: 1.Introdução
Leia maisCPU. CPU Unidade Central de Processamento. Função: leitura, escrita e processamento de dados
CPU CPU Unidade Central de Processamento Função: leitura, escrita e processamento de dados Constituída por: dispositivos que gerem a entrada (leitura) e saída (escrita) de dados; registos (memórias auxiliares)
Leia maisArquitectura de Computadores (ACom)
Arquitectura de Computadores (ACom) MEAer Acetatos das Aulas Teóricas Versão 4.0 - Português Aula N o 16: Título: ; Arquitecturas de processadores em pipeline Sumário: (registos, bits de estado, memória,
Leia maisEEL Microprocessadores
EEL7030 - Microprocessadores 8086 Primeiro (1980) da família do Pentium (80x86). Componente com arquitetura similar (8088) utilizado no primeiro IBM PC. Cada descendente executa código dos antepassados
Leia maisPROJETO LÓGICO DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br
- Aula 3 - O NÍVEL DA ARQUITETURA DO CONJUNTO DAS INSTRUÇÕES (ISA) (Nível Convencional de Máquina) 1. INTRODUÇÃO Este é o nível responsável por fazer a ligação entra a parte de hardware e a parte de software
Leia maisOrganização de Computadores 1
Organização de Computadores 1 5.1 Linguagem de Montagem (Assembly) Prof. Luiz Gustavo A. Martins Sistema Decimal: sistema natural do homem. No assembly um número decimal pode terminar com um d. Ex: 64223
Leia maisAssembly. Prof. Jorge Cavalcanti. Prof. Sérgio Faustino.
F A C A P E FACULDADE DE CIÊNCIAS APLICADAS E SOCIAIS DE PETROLINA CIÊNCIA DA COMPUTAÇÃO Assembly MANUAL DE REFERÊNCIA Prof. Jorge Cavalcanti jorge.cavalcanti@uol.com.br Prof. Sérgio Faustino sergiofaustino@hotmail.com
Leia maisEEL Microprocessadores. Parâmetros e Variáveis Locais 4/5/2010. Capítulo 7 Livro Ziller. Prof. Raimes Moraes GpqCom EEL UFSC
EEL7030 - Microprocessadores Parâmetros e Variáveis Locais Capítulo 7 Livro Ziller Prof. Raimes Moraes GpqCom EEL UFSC Macro-Assembler Subrotina Near MSG1 DB JÁ VOU$' CODIGO SEGMENT INICIO:... AX,DADOS
Leia maisIntrodução à programação em linguagem assembly
Introdução à programação em linguagem assembly Espaço de endereçamento Instruções de acesso à memória Modos de endereçamento Diretivas Tabelas Pilha Rotinas Arquitetura de Computadores Introdução à programação
Leia maisOrganização de Computadores 1
Organização de Computadores 1 5 CONJUNTO DE INSTRUÇÕES Prof. Luiz Gustavo A. Martins Introdução O que é um conjunto de instruções? Coleção completa das instruções que a CPU é capaz de executar (entende).
Leia maisUnidade: Unidade Lógica e Aritmética e Registradores. Unidade I:
Unidade: Unidade Lógica e Aritmética e Registradores Unidade I: 0 Unidade: Unidade Lógica e Aritmética e Registradores UNIDADE LÓGICA E ARITMÉTICA E REGISTRADORES O Processador é um chip com milhares de
Leia maisLABORATÓRIO DE LINGUAGEM DE MONTAGEM INTERRUPÇÕES DO DOS E DA BIOS
LABORATÓRIO DE LINGUAGEM DE MONTAGEM INTERRUPÇÕES DO DOS E DA BIOS Capítulo 15 do livro-texto, págs. 309 a 330 Impressora Scanner Monitor Flop Disk Modem Floppy drive "CPU" HD CD ROM Teclado Mouse Dispositivos
Leia maisLinguagem de Montagem
Linguagem de Montagem Procedimentos e a Pilha Slides baseados em material associado ao livro Introduction to Assembly Language Programming, Sivarama Dandamudi 1 O que é a pilha? A pilha é uma estrutura
Leia maisSoftware de Telecomunicações. Tópicos de Assembly86
Software de Telecomunicações Tópicos de Assembly86 Prof RG Crespo Software de Telecomunicações Assembly86 : 1/79 Lista processadores Intel (1) Processadores IA-16 1978: 8086-29K transistores, 0.33 MIPS
Leia maisConjunto de instruções. O Conjunto de Instruções. Conjunto de instruções. Instruções típicas. Instruções típicas. Instruções típicas
Conjunto de instruções O Conjunto de Instruções ISA Instruction Set Architecture Alguns conceitos... Linguagem máquina Combinação de 0 s e 1 s organizados segundo palavras que são as instruções que o processador
Leia maisEstrutura do tema ISA do IA-32
Análise do Instruction Set Architecture (2) Acesso a operandos no IA-32: sua localização e modos de acesso Estrutura do tema ISA do IA-32 1. Desenvolvimento de programas no IA-32 em Linux 2. Acesso a operandos
Leia maisConjunto de instruções e modos de. aula 4. Profa. Débora Matos
Conjunto de instruções e modos de endereçamento aula 4 Profa. Débora Matos Conjunto de Instruções A = ((B + C) x D + E F)/(G x H) A H denotam posições da memória endereços As arquiteturas possuem as seguintes
Leia maisArquitetura de Computadores. Tipos de Instruções
Arquitetura de Computadores Tipos de Instruções Tipos de instruções Instruções de movimento de dados Operações diádicas Operações monádicas Instruções de comparação e desvio condicional Instruções de chamada
Leia maisOrganização Funcional
Organização Funcional Modelo de Arquitectura de Von Neuman 26 Organização Funcional Modelo de Arquitectura de Von Neuman CPU Unidade Central de processamento (central process unit) Onde tudo se passa ;
Leia maisIntrodução. Programando em Assembly. Primeiro Exemplo (2) Primeiro Exemplo (1) Linguagem Assembly do 8086/8088
Introdução Programando em Assembly (Aula 16) Linguagem Assembly do 8086/8088 Para construirmos os programas em Assembly, devemos estruturar o fonte da seguinte forma (usando TASM como montador) Define
Leia maisINT 5h - Print screen Modo Resolução Caract. INT 10h - Vídeo INT 10h - Vídeo
BIOS Basic Input/Output System BIOS e System Calls Prof. Eduardo Tavares eagt@cin.ufpe.br Primeira instrução a ser executada (0xFFFF0-0xFFFFF) Configuração inicial do sistema Inicialização do boot loader
Leia maisUniversidade de São Paulo
Universidade de São Paulo Organização de Computadores Dr. Jorge Luiz e Silva Cap 8 Subrotinas e Parâmetros Seqüência de instruções repetitivas. Na chamada existe o DESVIO para a rotina No retorno existe
Leia maisCAPÍTULO 3 NÍVEL ISA. 3.1 Introdução ao Nível de Arquitetura do Conjunto de Instruções
CAPÍTULO 3 NÍVEL ISA 3.1 Introdução ao Nível de Arquitetura do Conjunto de Instruções O Nível de Arquitetura do Conjunto de Instruções (ISA - Instruction Set Architecture) é a interface entre software
Leia maisArquitetura de Computadores
Universidade Federal de Santa Catarina Centro Tecnológico Curso de Pós-Graduação em Ciência da Computação Aula 2 Arquitetura do Processador MIPS: características gerais, registradores, formatos de instrução,
Leia maisEstrutura do tema ISA do IA-32
Análise do Instruction Set Architecture (2) Acesso a operandos no IA-32: sua localização e modos de acesso Estrutura do tema ISA do IA-32 1. Desenvolvimento de programas no IA-32 em Linux 2. Acesso a operandos
Leia maisArquitetura de Computadores
Arquitetura de Computadores Prof. Fábio M. Costa Instituto de Informática UFG 1S/2004 ISA: Arquitetura de Conjunto de Instruções Roteiro Introdução Classificação de conjuntos de instruções Endereçamento
Leia maisFluxo de Execução em Assembly
Fluxo de Execução em Assembly A forma natural de execução de um programa é sequencial: CPU busca instruções na memória em endereços sequenciais Instruções de desvio de assembly servem para quebrar a execução
Leia maisLinguagem de Montagem 2. Operações e Operandos
Linguagem de Montagem 2 Operações e Operandos Revisão Para executar uma tarefa qualquer, um computador precisa receber instruções precisas sobre o que fazer Esse conjunto de instruções chamamos de algoritmo
Leia maisA linguagem ASSEMBLY
A linguagem ASSEMBLY Assembly é uma linguagem de baixo nível, chamada freqüentemente de linguagem de montagem É uma linguagem considerada difícil, principalmente porque o programador precisa conhecer a
Leia maisIntrodução à Arquitetura e Linguagem Assembly de Processadores IA-32
Introdução à Arquitetura e Linguagem Assembly de Processadores IA-32 Sistemas da Computação Prof. Rossano Pablo Pinto, Msc. rossano at gmail com 2 semestre 2007 CHIP Ano MHz Transistors Mem 8086 1978 5
Leia maisLaboratório de Sistemas Processadores e Periféricos
Laboratório de Sistemas Processadores e Periféricos Sistema de Interrupções do 8086 Prática 11 Gustavo G. Parma Assunto: sistema de interrupcões do 8086. Interrupções do DOS Objetivos: Apresentação do
Leia mais2 Formalidades referentes ao trabalho
Bacharelado em Ciência da Computação DINF / UFPR Projetos Digitais e Microprocessadores 1 o Semestre de 2006 MICO-v12.r0 07/03/2006 Profs. Luis Allan Künzle e Armando Luiz Nicolini Delgado Atenção: Este
Leia maisConjunto de. Instrução MIPS. Parte II. Instruções MIPS. Instruções MIPS. Instruções MIPS :: Instruções lógicas. :: Instruções lógicas
Faculdade de Ciências Aplicadas e Sociais de Petrolina FACAPE Conjunto de Pae II Transferência de Dados Lógicas Controle Supoe a procedimentos Prof. Sérgio Adaptado dos slides de Sistemas Processadores
Leia maisLinguagem de Montagem
Linguagem de Montagem Organização do PC Slides baseados em material associado ao livro Introduction to Assembly Language Programming, Sivarama Dandamudi 1 Processador Pentium Lançado em 1993 Versão melhorada
Leia maisUnidade 10: A Unidade Lógica Aritmética e as Instruções em Linguagem de Máquina Prof. Daniel Caetano
Arquitetura e Organização de Computadores 1 Unidade 10: A Unidade Lógica Aritmética e as Instruções em Linguagem de Máquina Prof. Daniel Caetano Objetivo: Apresentar as funções o mecanismo de atuação da
Leia maisCriptografia e Segurança das Comunicações
Criptografia e Segurança das Comunicações Tópicos de Assembly86 Assembly86 : 1/87 Introdução (1) Curiosidade, não faz parte da avaliação As linguagens Assembly, desenvolvidas a partir dos anos 50, são
Leia maisSistemas de Computação
Sistemas de Computação Introdução a programação Assembly Haroldo Gambini Santos Universidade Federal de Ouro Preto - UFOP 5 de novembro de 2009 Haroldo Gambini Santos Sistemas de Computação 1/30 Assembly
Leia maisIntrodução a Engenharia Reversa
Introdução a Engenharia Reversa Por Maycon Maia Vitali a.k.a. 0ut0fBound maycon@consysonline.com.br http://outofbound.host.sk Conceito Resumo História da Engenharia Reversa - WWII Engenharia Reversa de
Leia maisSistemas de Computação para Controle e Automação CIC132. Assembly. Assembly. Notas. Décima quarta aula: Introdução a programação Assembly
Sistemas de Computação para Controle e Automação CIC132 Décima quarta aula: Introdução a programação Assembly Haroldo Gambini Santos Universidade Federal de Ouro Preto - UFOP 5 de novembro de 2009 Haroldo
Leia maisIntrodução a Organização de Computadores e Linguagens de Montagem. Ricardo Anido
Introdução a Organização de Computadores e Linguagens de Montagem Ricardo Anido Draft date 15 de Agosto de 2013 Capítulo 3 O processador Faíska Neste capítulo iniciaremos o estudo mais detalhado do repertório
Leia maisO conjunto de ações executadas quando ocorre uma solicitação de interrupção mascarável ( de hardware ).
Diretivas DB (define byte) DW (define word) DUP (duplicate) EQU (constante) ORG (seta o endereço de memória onde vai ter início aquele segmento) SEGMENT (inicia um segmento) ENDS (finaliza um segmento)
Leia maisARQUITETURA DE COMPUTADORES
01001111 01110010 01100111 01100001 01101110 01101001 01111010 01100001 11100111 11100011 01101111 00100000 01100100 01100101 00100000 01000011 01101111 01101101 01110000 01110101 01110100 01100001 01100100
Leia maisMÓDULO. Conjunto de Instruções do 8086/88 Aritméticas, lógicas, deslocamento e rotação M 02
MÓDULO M 02 Conjunto de Instruções do 8086/88 Aritméticas, lógicas, deslocamento e rotação OBJETIVOS Compreender o significado dos bits de estado no registrador de flags do 8086/88; Conhecer as representações
Leia maisConjunto de instruções do CPU. Arquitectura de um computador. Definição das instruções (1) Definição das instruções (2)
Arquitectura de um computador Caracterizada por: Conjunto de instruções do processador (ISA Estrutura interna do processador (que registadores existem, etc Modelo de memória (dimensão endereçável, alcance
Leia maisArchC. Wesley Nunes Gonçalves
Implementação do Processador ARM7 em ArchC Wesley Nunes Gonçalves 23 de novembro de 2007 ARM7 Instruções Implementadas O ARM possui 37 registradores, sendo 31 registradores de propósito geral e 6 registradores
Leia maisArquitectura de Computadores
Arquitectura de Computadores Geração do Código Objecto (10.7 e 10.8) José Monteiro Licenciatura em Engenharia Informática e de Computadores Departamento de Engenharia Informática (DEI) Instituto Superior
Leia maisDisciplina de. Organização de Computadores Digitais
USP - ICMC - SSC SSC 0511 - Sist. Informação - 2o. Semestre 2014 Disciplina de Prof. Fernando Santos Osório Email: fosorio [at] { icmc. usp. br, gmail. com } Página Pessoal: http://www.icmc.usp.br/~fosorio/
Leia maisUniversidade de São Paulo
Universidade de São Paulo Organização de Computadoresres Dr. Jorge Luiz e Silva Cap 3 Estrutura da Unidade de Processamento 8086/8088 14 Registradores.PC Contador de programa.sp Ponteiro de Pilha.SP Índice
Leia maisx86 Assembly Mini-Course
x86 Assembly Mini-Course Part 1 Bruno P. Evangelista bpevangelista@gmail.com Introdução Assembly é uma linguagem de programação de baixo nível em formato mnemonico Ela possibilita trabalhar diretamente
Leia maisULA Sinais de Controle enviados pela UC
Solução - Exercícios Processadores 1- Qual as funções da Unidade Aritmética e Lógica (ULA)? A ULA é o dispositivo da CPU que executa operações tais como: Adição Subtração Multiplicação Divisão Incremento
Leia maisObjetivos Gerais. Arquitetura de Computadores. Arquiteturas estudadas. O Computador Neander
Objetivos Gerais Arquitetura de Computadores Prof. Fábio M. Costa Instituto de Informática UFG 1S/2005 ISA Parte II: Arquiteturas-Exemplo Simuladores e Máquinas Reais Demonstrar os conceitos genéricos
Leia maisSistemas Lógicos II. Aula 10
Sistemas Lógicos II Aula 10 1 2 rbh rbl wbh wbl Arquitectura Corrente + IPC Increment Program Counter Transfer from PC - TPC Transfer from IR - TIRH Transfer from IR - TIRL Transfer from C - TC rch rcl
Leia maisMicroprocessadores Intel. Enfim, a dura realidade (ou: que saudades dos simuladores.)
Microprocessadores Intel Enfim, a dura realidade (ou: que saudades dos simuladores.) Chip ALU reg dado End. Cache Características 8088(6) 16 16 8 (16) 20 - micro de 16 bits 80186 16 16 16 20-8086 & circuitos
Leia maisComputadores de Programação (MAB353)
Computadores de Programação (MAB353) Aula 6: 27 de abril de 2010 1 Recaptulando operações já estudadas Operações lógicas 2 3 Exercícios Referências bibliográficas Recaptulando operações já estudadas Operações
Leia maisARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE LÓGICA ARITMÉTICA E AS INSTRUÇÕES EM LINGUAGEM DE MÁQUINA
ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE LÓGICA ARITMÉTICA E AS INSTRUÇÕES EM LINGUAGEM DE MÁQUINA Prof. Dr. Daniel Caetano 2012-1 Objetivos Conhecer o processador Compreender os registradores
Leia maisProgramando em Assembly
Programando em Assembly (Aula 16) Linguagem Assembly do 8086/8088 Roberta Lima Gomes - LPRM/DI/UFES Sistemas de Programação I Eng. Elétrica 2007/2 Introdução Para construirmos os programas em Assembly,
Leia maisLinguagem de Montagem e Assembly. André Luiz da Costa Carvalho
Linguagem de Montagem e Assembly André Luiz da Costa Carvalho Linguagem de Montagem Todo programa para ser executado precisar ser convertido de linguagem fonte (alto nível) para um programa equivalente
Leia maisProgramação Assembler no PC-IBM e Compatíveis ÍNDICE... 2 PREFÁCIO DA EDIÇÃO ELETRÔNICA INTRODUÇÃO CONCEITOS BÁSICOS...
ÍNDICE ÍNDICE... 2 PREFÁCIO DA EDIÇÃO ELETRÔNICA... 3 1 INTRODUÇÃO... 4 1.1 O PC-IBM E O MICROPROCESSADOR 8088...4 1.2 A FAMÍLIA DE MICROPROCESSADORES 8088/86/188/186/286...4 1.3 O QUE É UM ASSEMBLER...5
Leia maisNeander - características
NEANDER x RAMSES (Ou porque da necessidade de upgrade :-) Texto original: ftp://ftp.inf.ufrgs.br/pub/inf108/ramses-instrucoes.ppt Neander - características Largura de dados e endereços de 8 bits Dados
Leia maisLinguagem de Montagem Funcionamento de CPU e Assembly Rudimentar
Componentes de um Computador (5) Linguagem de Montagem Funcionamento de CPU e Assembly Rudimentar Prof. João Paulo A. Almeida (jpalmeida@inf.ufes.br) 2007/01 - INF02597 Com slides de Roberta Lima Gomes
Leia maisInterface Hardware/Software. Centro de Informática - UFPE Paulo Maciel prmm@cin.ufpe.br
Interface Hardware/Software Centro de Informática - UFPE Paulo Maciel prmm@cin.ufpe.br Interrupção INT 1Ah Ler o Relógio; Atualizar o Relógio; Ler a Data; Atualizar a Data. 2 Interrupção - INT 1Ah Ler
Leia maisConjunto de Instruções (ISA) II
Conjunto de Instruções (ISA) II José Costa Introdução à Arquitetura de Computadores Departamento de Engenharia Informática (DEI) Instituto Superior Técnico 2013-10-18 José Costa (DEI/IST) Conjunto de Instruções
Leia maisArquitectura de Computadores II. Medição de desempenho
Arquitectura de Computadores II LESI - 3º Ano Medição de desempenho João Luís Ferreira Sobral Departamento do Informática Universidade do Minho Abril 2002 1. Introdução A medição de desempenho pretende
Leia maisFuncionamento básico de um computador
Funcionamento básico de um computador Processador Unidade de dados Unidade de controlo Arquitetura de computador básica Linguagem assembly Exemplos Arquitetura de Computadores Funcionamento básico de um
Leia maisData types. In C: char. short. int/long. double/long long AC 2017/2018. Pedro Serra / Sérgio Ferreira
x86 Data types In C: char short int/long double/long long 2 O stack O stack cresce em direção a endereços de memória menores Instruções fundamentais: push, pop 0xFF90 0xA331 0xFF8E 0xFF8C 0xFF8A 0x4712
Leia mais28/3/2011. Família Intel 80x86. Arquitetura dos Processadores Intel 80x86
Arquitetura de Computadores Arquitetura dos Processadores Intel 80x86 Prof. Marcos Quinet Universidade Federal Fluminense UFF Pólo Universitário de Rio das Ostras - PURO Família Intel 80x86 Ao se falar
Leia maisGeração de código. Ivan Ricarte INTRODUÇÃO À COMPILAÇÃO
Geração de código Ivan Ricarte 2008 Sumário Geração de código intermediário Código de três endereços Notação pós-fixa Otimização de código Heurísticas de otimização Geração de código em linguagem simbólica
Leia maisEXEMPLO DE ARQUITETURAS REAIS INTEL 8086 AULA 07 Arquitetura de Computadores Gil Eduardo de Andrade
EXEMPLO DE ARQUITETURAS REAIS INTEL 8086 AULA 07 Arquitetura de Computadores Gil Eduardo de Andrade O conteúdo deste documento é baseado no livro Princípios Básicos de Arquitetura e Organização de Computadores
Leia maisAula 14: Instruções e Seus Tipos
Aula 14: Instruções e Seus Tipos Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) Instruções e Seus Tipos FAC 1 / 35 Conceitos Básicos Diego Passos
Leia mais2 - Processadores. CEFET-RS Curso de Eletrônica. Organização de Computadores. Profs. Roberta Nobre & Sandro Silva
CEFET-RS Curso de Eletrônica 2 - Processadores Profs. Roberta Nobre & Sandro Silva robertacnobre@gmail.com e sandro@cefetrs.tche.br Microprocessador 8086 FX ULA AH AL BH BL CH CL DH DL BP SI DI SP (AX)
Leia maisORGANIZAÇÃO BÁSICA DE COMPUTADORES E LINGUAGEM DE MONTAGEM
Cap1.1 ORGANIZAÇÃO BÁSICA DE COMPUTADORES E LINGUAGEM DE MONTAGEM 1. Conceitos básicos Bit = BInary digit = vale sempre 0 ou 1 elemento básico de informação Byte Word = 8 bits processados em paralelo (ao
Leia maisUniversidade de São Paulo
Conjunto Instruções ARM Universidade de São Paulo Sistemas Embarcados Jorge Luiz e Silva ARM versões. ARM Linguagem Assembly. ARM modelo de programação. ARM organização de memória. ARM operação com dados.
Leia maisProva de Arquitectura de Computadores (21010) Data: 5 de Fevereiro de 2009
Ministério da Ciência, Tecnologia e Ensino Superior Curso:... Prova de Arquitectura de Computadores (21010) Data: 5 de Fevereiro de 2009 Nome:... Nº de Estudante:... B. I. nº... Assinatura do Vigilante:...
Leia maisOrganização e Arquitetura de Computadores I
Organização e Arquitetura de Computadores I Caminho de Dados Slide 1 Sumário Introdução Convenções Lógicas de Projeto Construindo um Caminho de Dados O Controle da ULA Projeto da Unidade de Controle Principal
Leia maisULA- Unidade Lógica Aritmética. Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 60h
ULA- Unidade Lógica Aritmética. Prof. Rômulo Calado Pantaleão Camara Carga Horária: 60h Sumário Unidade Lógica Aritmetrica Registradores Unidade Lógica Operações da ULA Unidade de Ponto Flutuante Representação
Leia maisArquitetura de Computadores. Assembly Miscelâneas. Mário O. de Menezes. http://www.tf.ipen.br/~mario
Arquitetura de Computadores Assembly Miscelâneas Mário O. de Menezes http://www.tf.ipen.br/~mario AC Mário O. de Menezes 1 Lembrando Instruções Lógicas e Shift operam em bits individuais, diferente de
Leia maisProva de Arquitectura de Computadores (21010) Data: 12 de Fevereiro de 2010
Ministério da Ciência, Tecnologia e Ensino Superior Curso:... Prova de Arquitectura de Computadores (21010) Data: 12 de Fevereiro de 2010 Nome:... Nº de Estudante:... B. I. nº... Assinatura do Vigilante:...
Leia maisArquitetura de Um Processador I
Arquitetura de Um Processador I José Costa Introdução à Arquitetura de Computadores Departamento de Engenharia Informática (DEI) Instituto Superior Técnico 2013-11-08 José Costa (DEI/IST) Arquitetura de
Leia maisProva de Arquitectura de Computadores (21010) Data: 5 de Fevereiro de 2009
Ministério da Ciência, Tecnologia e Ensino Superior Curso:... Prova de Arquitectura de Computadores (21010) Data: 5 de Fevereiro de 2009 Nome:... Nº de Estudante:... B. I. nº... Assinatura do Vigilante:...
Leia mais