EEL Microprocessadores. Parâmetros e Variáveis Locais 4/5/2010. Capítulo 7 Livro Ziller. Prof. Raimes Moraes GpqCom EEL UFSC
|
|
- Manoela Camelo
- 5 Há anos
- Visualizações:
Transcrição
1 EEL 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 DS,AX LEA DX,MSG1 CALL SHOW ; INICIALIZACAO DE DS ; APONTA PARA O TEXTO Macro-Assembler Subrotina Far MSG1 DB JÁ FUI$' CODIGO SEGMENT INICIO:... AX,DADOS DS,AX LEA DX,MSG1 CALL FAR PTR SHOW CODIGO ENDS ; INICIALIZACAO DE DS ; APONTA PARA O TEXTO SHOW PROC NEAR AH,09H INT 21H SHOW ENDP CODIGO ENDS ; SERVICO DO DOS ; EXECUTA FUNCAO DO DOS P/ MSG1 ; ORNA AO PROGRAMA PRINCIPAL ROTINA SEGMENT SHOW PROC FAR AH,09H ; SERVICO DO DOS INT 21H ; EXECUTA FUNCAO DO DOS P/ MSG1 ; ORNA AO PROGRAMA PRINCIPAL SHOW ENDP ROTINA ENDS Passagem de Parâmetros para Subrotinas Método 1 Via Registrador: Exemplo acima. Offset da mensagem passado via registrador DX Método 2 Via Variáveis Globais Método 3 Via Pilha Subrotina Near: Passagem de Parâmetro Via Variável Global MSG1 DB JÁ VOLTO$ PARM1 DW? CODIGO SEGMENT INICIO:... AX,DADOS DS,AX LEA PARM1,MSG1 CALL SHOW ; INICIALIZACAO DE DS ; APONTA PARA O TEXTO SHOW PROC NEAR DX, PARM1 AH,09H ; SERVICO DO DOS INT 21H ; EXECUTA FUNCAO DO DOS P/ MSG1 ; ORNA AO PROGRAMA PRINCIPAL SHOW ENDP CODIGO ENDS 1
2 Subrotina Near: Passagem de Parâmetro Via Pilha - 1 Antes: SS = 1760H; SP = 0400H; AX,PARM1 AX,PARM2 CALL SHOW 1780:01B0: Pilha :03FAH B0H IP LSB 1760:03FBH 01H IP MSB Subrotina Near: Passagem de Parâmetro Via Pilha - 2 Pilha 1760:03F8H BP LSB 1760:03F9H BP MSB 1760:03FAH B0H IP LSB 1760:03FBH 01H IP MSB BX,[BP+4] ; obtém PARM2 CX,[BP+6] ; obtém PARM1... POP BP Subrotina Near: Passagem de Parâmetro Via Pilha - 3 Antes: SS = 1760H; SP = 0400H AX,PARM1 AX,PARM2 CALL SHOW ; SP = 03FCH 1780:01B0 ADD SP,4 ; SP = 0400H Pilha 1760:03FAH B0H IP LSB 1760:03FBH 01H IP MSB Subrotina FAR: Passagem de Parâmetro Via Pilha -1 Antes: SS = 1760H; SP = 0400H; AX,PARM1 AX,PARM2 CALL FAR PTR SHOW ; SP = 03FCH 1780:01B0 : ADD SP,4 ; SP = 0400H Pilha 1760:03F8H B0H IP LSB 1760:03F9H 01H IP MSB 1760:03FAH 80H CS LSB 1760:03FBH 17H CS MSB Subrotina FAR: Passagem de Parâmetro Via Pilha - 2 Subrotina FAR: Passagem de Parâmetro Via Pilha - 3 Pilha 1760:03F6H BP LSB 1760:03F7H BP MSB 1760:03F8H B0H IP LSB 1760:03F9H 01H IP MSB 1760:03FAH 80H CS LSB 1760:03FBH 17H CS MSB 1760:03FCH 60H PARM 2 LSB 1760:03FDH PARM 2 MSB 1760:03FEH PARM 1 LSB 1760:03FFH PARM 1 MSB BX,[BP+6] ; obtém PARM2 CX,[BP+8] ; obtém PARM1... POP BP 2
3 Comparação do modo de Passagem de Parâmetros para Subrotinas Via Registrador: Nro de registradores pode ser inferior a nro. de parâmetros; Difícil de estabelecer convenção sobre ordem de passagem dos parâmetros; Maior complexidade da documentação. Via Variáveis Globais: Menor velocidade que via registrador; Difícil de estabelecer convenção sobre ordem de passagem dos parâmetros; Maior complexidade da documentação. Via Pilha Menor velocidade que via registrador; Facilita aninhamento de subrotinas. Variáveis Locais Caso seja necessária a utilização de variável por subrotina para informar, por exemplo, o número de caracteres de mensagem apresentado no vídeo para o programa principal, tem-se como opções de guardar o dado em: Registrador (há registrador disponível?); Posição de memória reservada durante toda a execução do programa para esta finalidade; Posição de memória da pilha que poderá ser utilizada para outras rotinas. Subrotina NEAR: Criação de Variável Local SUB SP,2... Pilha 1760:03F6H VARIÁVEL LOCAL MSB 1760:03F7H VARIÁVEL LOCAL MSB 1760:03F8H BP LSB 1760:03F9H BP MSB 1760:03FAH IP LSB 1760:03FBH IP MSB Variáveis Locais Variável local do exemplo acima é acessada via BP-2 O endereço seria o mesmo para subrotina FAR; Variável local é acessada por deslocamento negativo em relação a BP. Parâmetro é acessado por deslocamento positivo em relação a BP. Para recuperar o valor de BP colocado na pilha, espaço da variável local é removido antes: ADD POP SP,2 BP Subrotina NEAR: Uso de Variável Local Retorno em AX SUB SP,2 WORD PTR [BP-2],00 BX,[BP+4] ; obtém OFFSET MENSAGEM VOLTA: CMP BYTE PTR [BX], $ JZ FIM INC WORD PTR [BP-2] INC BX JMP VOLTA FIM: AH,09 DX,[BP+4] INT 21H AX,[BP-2] ADD SP,2 POP BP Manipulação de Strings Capítulo 9 Livro Ziller 3
4 Manipulação de Strings Função Mnemônicos Argumentos Cópia S/SB/SW Origem, Destino O 8086 conta com conjunto de instruções para manipular cadeia de caracteres ou tabelas, permitindo: Comparação CMPS/CMPSB/CMPSW Origem, Destino Copiar dados de uma região de memória para outra; Comparar conteúdo de diferentes regiões de memória (tabelas ou cadeia de caracteres); Varrer memória para buscar dado igual ou diferente à referência; Leitura consecutiva de dados da memória; Preenchimento de posições consecutivas da memória. Varredura SCAS/SCASB/SCASW Destino Leitura LODS/LODSB/LODSW Origem Preenchimento STOS / STOSB /STOSW Destino Origem: DS:[SI] Destino: ES:[DI] Instrução STOS Preenchimento de memória Antes: ES = 1760H; DI = 0400H; STD LOOP : STOSW DEC JNZ CX,4 AX,0216h CX LOOP Objetivo REP 1760:03FAH 1760:03FBH 1760:03FCH 1760:03FDH 1760:03FEH 1760:03FFH 1760:0401H STD STOSW CX,4 AX,0216h DF Flags de Controle Direcão (forward/backward) Usado em Instruções de manipulação de strings => DF = 0 => Incrementa SI ou DI STD => DF = 1 => Decrementa SI ou DI Prefixos de Repetição Instrução LODS Leitura de memória Códigos alocados antes das instruções de manipulação de instruções para causar sua repetição até condição de parada. Objetivo: COPIAR de 1 para 2 Prefixo REP REPE/REPZ REPNE/REPNZ Condição de Parada CX=0 CX=0 ou ZF=0 CX=0 ou ZF=1 Comparação :03FAH 1760:03FBH 1760:03FCH 1760:03FDH 1760:03FEH 1760:03FFH 1760:0401H :04FAH 1600:04FBH 1600:04FCH 1600:04FDH 1600:04FEH 1660:04FFH 1600:0400H 1600:0501H 4
5 Cópia de Dados 1 Instrução LODS BX, 1760H DS,BX SI,03FAH ;DS=1760; SI=03FAH Controle de Loop AX,1600H ES,AX DI,04FAH ;ES=1600; DI=04FAH CX,4 ; incrementa SI e/ou DI VOLTA: LODSW ; lê de DS:SI STOSW ; escreve em ES:DI LOOP VOLTA :03FAH 1760:03FBH 1760:03FCH 1760:03FDH 1760:03FEH 1760:03FFH Instrução S Cópia de memória 1760:0401H Objetivo: COPIAR de 1 para :04FAH 1600:04FBH 1600:04FCH 1600:04FDH 1600:04FEH 1660:04FFH 1600:0400H 1600:0501H Cópia de Dados 2 - SW BX, 1760H DS,BX SI,03FAH ;DS=1760; SI=03FAH AX,1600H ES,AX DI,04FAH ;ES=1600; DI=04FAH CX,4 ; incrementa SI e/ou DI REP SW ; lê de DS:SI --- escreve em ES:DI Cópia de Dados 3 - SB BX, 1760H DS,BX SI,03FAH ;DS=1760; SI=03FAH AX,1600H ES,AX DI,04FAH ;ES=1600; DI=04FAH CX,8 ; incrementa SI e/ou DI REP SB ; lê de DS:SI --- escreve em ES:DI Instrução S OBSERVAÇÕES SB equivale a S BYTE PTR ES:[DI],[SI] SW equivale a S WORD PTR ES:[DI],[SI] Caso se queira transferir dentro de um mesmo segmento, uma opção seria: S BYTE PTR DS:[DI],[SI] REP S ( e outras instruçoes que manipulam strings) são suspensas para atendimento de interrupções. Retomadas a partir do CX na qual pararam. 5
6 TAB1 DB 'MICROCONTROLADORES' TAB2 DB 'MICROPROCESSADORES'... INICIO: AX,DADOS DS,AX ; INICIALIZACAO DE DS ES,AX ; INICIALIZACAO DE ES LEA SI,TAB1 LEA DI,TAB2 BL,00 VOLTA: VAI: CX,17 CMPSB JZ VAI INC BL LOOP VOLTA AH,BL COMPARAÇÃO DE DADOS CMPSB TAB1 DB 'MICROCONTROLADORES' MSG1 DB 'POSICAO DO CARACTER T = ' MSG2 DB '0 $' INICIO: AX,DADOS DS,AX ; INICIALIZACAO DE DS ES,AX ; INICIALIZACAO DE ES LEA DI,TAB1 AL,'T' CX,17 VOLTA: REPNE SCASB JZ FIMCMP AH,'E' JMP ERRO FIMCMP: AX,DI ADD AL,30H VARREDURA DE DADOS SCASB Testes de Flags Testes de Números com Sinal 6
EEL 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 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 maisLaborató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 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 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 maisSistemas de Microprocessadores I Lista de exercícios (questões de provas de semestre anteriores)
Sistemas de Microprocessadores I Lista de exercícios (questões de provas de semestre anteriores) 1 - Fazendo uma comparação entre a arquitetura proposta por Von Neumann e a arquitetura de um microcomputador
Leia maisTópicos: 1 - Modos de endereçamento do Pilha e instruções de Pilha. 3 - Instruções que usam pilha: - instrução CALL - instrução RET
Tópicos: 1 - Modos de endereçamento do 8051 2 - Pilha e instruções de Pilha 3 - Instruções que usam pilha: - instrução CALL - instrução RET 4 - Interrupção 1 - Modos de Endereçamento do 8051 Os modos de
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 maisRelatório MC404 - Trabalho 2 - Prof. Rodolfo
Relatório MC404 - Trabalho 2 - Prof. Rodolfo Gustavo Sverzut Barbieri, Ivens Prates Telles Alves Grupo: Gustavo Sverzut Barbieri RA: 008849 Ivens Prates Telles Alves RA: 008908 1 O Projeto O segundo projeto
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 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 maisASSEMBLER PARA IBM-PC
Assembler 8086/8088 1 ASSEMBLER PARA IBM-PC Prof, PhD Assembler 8086/8088 2 SUMÁRIO 1 MOVIMENTAÇÃO DE DADOS 3 MOV MOVIMENTACAO DE DADOS 3 XCHG TROCA DE DADOS ENTRE REGISTRADOR OU MEMORIA 5 LEA OBTEM 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 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 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 maisNo. de bits. O primeiro IBM PC foi construído com o 8088 (versão de 8 bits do 8086).
Cap2.1 2. Arquitetura do microprocessador 8086 2.1 A família Intel iapx86 (ou 80X86) Processador Co-proc. Ano de introdução No. de bits No. de transistores Velocidade (MHz) 4004-1971 4 2.205-8008 - 1972
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 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 maisArquitetura do 8086/8088
Arquitetura do 8086/8088 Walter Fetter Lages w.fetter@ieee.org Universidade Federal do Rio Grande do Sul Escola de Engenharia Departamento de Engenharia Elétrica Copyright (c) Walter Fetter Lages p.1 Introdução
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 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 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 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 maisOTermo Assembly significa montagem, ou seja, linguagem
Linguagem Assembly Roteiro N o 01 Fundação Universidade Federal de Rondônia, Núcleo de Ciência e Tecnologia, Departamento de Engenharia - DEE Curso de Bacharelado em Engenharia Elétrica - Disciplina de
Leia maisRelatório MC404 - Trabalho 3 - Prof. Rodolfo
Relatório MC404 - Trabalho 3 - Prof. Rodolfo Gustavo Sverzut Barbieri, Ivens Prates Telles Alves Grupo: Gustavo Sverzut Barbieri RA: 008849 Ivens Prates Telles Alves RA: 008908 1 O Projeto O terceiro trabalho
Leia maisRegistradores. Os processadores possuem espaços específicos onde são guardados valores, os chamados registradores.
Os processadores possuem espaços específicos onde são guardados valores, os chamados registradores. Esses espaços são parecidos com variáveis de uma linguagem de programação de alto nível, onde se guarda
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 maisMicroprocessadores. Organização de Memória
Microprocessadores Organização de Memória Prof. Clayrton Henrique rev. 01 fev. 2016 Roteiro Introdução; RAM Interna; Parte de Dados; Parte de SFR; Registradores; Assembly; Referências... 2 Introdução RAM
Leia maisASSEMBLER. Autor: Rodrigo Ferreira Markus Vinicius Home Page
ASSEMBLER Os programas que usamos no nosso dia-a-dia e aqueles que criaremos estarão em algum lugar da área disponível para o usuário, isto é, entre o endereço 00500h e 9ffffh. É difícil precisar exatamente
Leia maisSistemas de Computação. Seção Notas. Endereçamento de Memória. Notas. Oitava Aula. Haroldo Gambini Santos. 3 de setembro de 2009.
Sistemas de Computação Oitava Aula Haroldo Gambini Santos Universidade Federal de Ouro Preto - UFOP 3 de setembro de 2009 Haroldo Gambini Santos Sistemas de Computação 1/12 Seção 1 Endereçamento de Memória
Leia maisAnderson L. S. Moreira
Aula 12 Assembly - Apresentação Anderson L. S. Moreira anderson.moreira@recife.ifpe.edu.br http://dase.ifpe.edu.br/~alsm Anderson Moreira Arquitetura de Computadores 1 O que fazer com essa apresentação
Leia maisSistema Gráfico VGA. Sistema Gráfico VGA
Sistema Gráfico VGA Rotinas Vídeo VGA: Modo Texto (03h) Procedure SetMode(M:Byte);Far;Assembler; Solução. (Nota serve para modo gráfico) Procedure ClearTextScreen(Atr:Byte);Far;Assembler; Solução Procedure
Leia maisMICROPROCESSADORES E MICROCONTROLADORES PROVA 1
MICROPROCESSADORES E MICROCONTROLADORES PROVA 1 1. A expressão a seguir pode ser usada para avaliar o desempenho de um microprocessador. Comente cada um dos termos dessa expressão. Valor: 2,5 Tempo de
Leia maisArquitetura de Computadores Conceitos Fundamentais. Graduação em Engenharia Elétrica - UFPR Prof. Carlos Marcelo Pedroso 2016
Arquitetura de Computadores Conceitos Fundamentais Graduação em Engenharia Elétrica - UFPR Prof. Carlos Marcelo Pedroso 2016 Um Computador Muito Simples CPU UC ULA A B PC IR FLAGS SP CS DS SS... 0A 09
Leia maisMicroprocessadores I ELE Aula 7 Conjunto de Instruções do Microprocessador 8085 Desvios
Microprocessadores I ELE 1078 Aula 7 Conjunto de Instruções do Microprocessador 8085 Desvios Grupos de Instruções do 8085 As instruções no 8085 são distribuídas em 5 grupos: 1. Grupo de transferência da
Leia maisMICROPROCESSADORES E MICROCONTROLADORES. PROVA 1 - Solução da Versão 1
MICROPROCESSDORES E MICROCONTROLDORES PROV 1 - Solução da Versão 1 (o final são apresentadas as soluções da questão 4 das versões 2 e 3) 1. Na comparação entre as arquiteturas CISC e RISC, faça comentários
Leia maisJosé Augusto Fabri. Assembly Básico
José Augusto Fabri Assembly Básico Aritmética em Modo Hexadecimal Operações da adição e subtração em hexadecimal (comando H) Número negativos: Que número representa o FFFF? Aritmética em Modo Hexadecimal
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 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 maisMicroprocessadores I ELE Conjunto de Instruções do Microprocessador 8085 Aula 9 - PILHA E SUBROTINAS -
Microprocessadores I ELE 1078 Conjunto de Instruções do Microprocessador 8085 Aula 9 - PILHA E SUBROTINAS - 9.1 - Grupos de Instruções As instruções no 8085 são distribuídas em 5 grupos: 1. Grupo de transferência
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 maisMemória. Função: armazenamento de dados e instruções h FFFF FFFE h FFFF FFFF h byte.
Memória Função: armazenamento de dados e instruções Estrutura Lógica: Endereço Conteúdo 0000 0000 h 1010 0010 0256 0A20 h 1101 1100 0D63 52E2 h 0011 1111 0D63 52E3 h 0110 1001 FFFF FFFE h 0111 0101 FFFF
Leia maisRevisão: Modo Real, pt 2 Interrupções
Revisão: Modo Real, pt 2 Interrupções Interrupção Evento (interno ou externo) que faz o processador parar o programa em execução para tratar a interrupção Ex: ler o teclado, comunicação com os dispositivos
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 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 maisPeriféricos e Interfaces Ano lectivo 2003/2004 Docente: Ana Paula Costa. Aula Teórica 3
Aula Teórica 3 Sumário: Descrição das arquitecturas 8086, 80286, 80386, 80486 e família Pentium. Leitura Recomendada: Capítulos 2, 3, 4, 5, 8, 10, 12, 13 e 14 - Hans-Peter Messmer, The Indispensable PC
Leia maisProf. Adilson Gonzaga
Microprocessadores são Máquinas de Estado Seqüenciais Síncronas que operam mediante a execução de uma seqüência de códigos binários armazenados em memória. Prof. Adilson Gonzaga 1 As ordens ou comandos
Leia maisAs 5 partes fundamentais. Linguagem de Programação Pinagem Características Elétricas Ambiente de Desenvolvimento Integrado - IDE
SEL-433 APLICAÇÕES DE MICROPROCESSADORES I Como conhecer/estudar um Microprocessador/Microcontrolador As 5 partes fundamentais Programação de Microprocessadores Prof: Evandro L. L. Rodrigues Arquitetura
Leia maisLABORATÓRIO DE LINGUAGEM DE MONTAGEM. MACROS e GERENCIAMENTO DE MEMÓRIA
LABORATÓRIO DE LINGUAGEM DE MONTAGEM MACRO: MACROS e GERENCIAMENTO DE MEMÓRIA Capítulos 13 e 14 do livro-texto, págs. 257 a 308 é um bloco de texto que recebe um nome especial consiste de instruções, diretivas,
Leia maisInstruções Assembly x Código de máquina Microprocessador Didático
Instruções Assembly x Código de máquina Microprocessador Didático Professor Afonso Ferreira Miguel (afmiguel@rla01.pucpr.br) Disciplina de Projetos Lógicos e Microprocessadores Curitiba, 1 de junho de
Leia maisProgramação de Microprocessadores. Programação de Microprocessadores SEL-433 APLICAÇÕES DE MICROPROCESSADORES I
SEL-433 APLICAÇÕES DE MICROPROCESSADORES I Programação de Microprocessadores Microprocessadores são Máquinas de Estado Seqüenciais Síncronas que operam mediante a execução de uma seqüência de códigos binários
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 maisPara facilitar o entendimento das rotinas escritas em assembly, apresentadas em aula, estudar as seguintes instruções da linguagem assembly:
FATEC-SP - Análise e Desenvolv. De Sistemas - Ambiente Operacional PÁG. 1 Para facilitar o entendimento das rotinas escritas em assembly, apresentadas em aula, estudar as seguintes instruções da linguagem
Leia maisMATA49 Programação de Software Básico
MATA49 Programação de Software Básico Leandro Andrade leandrojsadcc.ufba.br PROF. LEANDRO ANDRADE 1 Introdução a linguagem de montagem com Nasm PROF. LEANDRO ANDRADE 2 Sintaxe básica Não é sensível
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 maisProtótipo de Gerador de Código Executável no Ambiente FURBOL
Protótipo de Gerador de Código Executável no Ambiente FURBOL Acadêmico: Geovânio Batista André Orientador: José Roque Voltolini da Silva Trabalho de Conclusão de Curso Área/SubÁrea Compiladores/Geração
Leia maisCONCURSO PETROBRAS DRAFT. Microprocessadores, CLPs e Arquiteturas Computacionais. Questões Resolvidas
CONCURSO PETROBRAS ENGENHEIRO(A) DE EQUIPAMENTOS JÚNIOR - ELETRÔNICA ENGENHEIRO(A) JÚNIOR - ÁREA: AUTOMAÇÃO Microprocessadores, CLPs e Arquiteturas Computacionais Questões Resolvidas QUESTÕES RETIRADAS
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 maisINSTITUTO SUPERIOR TÉCNICO. Arquitectura de Computadores (ACom)
UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO Departamento de Engenharia Informática Arquitectura de Computadores (ACom) LEIC-A, MEIC-A Acetatos das Aulas Teóricas Versão 1.0 - Português Aula
Leia maisFORMATO DO PROGRAMA FONTE
FORMATO DO PROGRAMA FONTE As declarações do programa fonte são constituídas pelos seguintes campos: 1) Campo do Rótulo: o primeiro caractere deve ser alfabético
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 maisSolução Lista de Exercícios Processadores
Solução Lista de Exercícios Processadores Questão 1 A ULA é o dispositivo da CPU que executa operações tais como : Adição Subtração Multiplicação Divisão Incremento Decremento Operação lógica AND Operação
Leia maisMicrocontrolador Assembly UTFPR / DAELN Microcontroladores 1 Prof. Gabriel Kovalhuk
Assembly 8051 Num sistema microprocessado, geralmente, não existe um sistema operacional; O programa desenvolvido pelo programador deve cuidar tanto da lógica do programa, bem como da configuração e acesso
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 mais2º Estudo Dirigido CAP 3
2º Estudo Dirigido CAP 3 1. Cite três exemplos de aspecto na definição e implementação de uma arquitetura que são influenciados pelas características do conjunto de instruções? R.: Operações lógicas e
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 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 maisAula 4 Conjunto de Instruções do Microprocessador 8085 Grupo Aritmético
Microprocessadores I Aula 4 Conjunto de Instruções do Microprocessador 8085 Grupo Aritmético 4.1 - Grupos de Instruções As instruções no 8085 são distribuídas em 5 grupos: 1. Grupo de transferência da
Leia maisLaboratório de Microprocessadores e Microcontroladores
Escola de Engenharia Elétrica, Mecânica e de Computação Universidade Federal de Goiás Laboratório de Microprocessadores e Microcontroladores Experimento 4: Motor de Passo e Display LCD Alunos: Matrícula:
Leia maisOrganização de Computadores 1
Organização de Computadores 1 3.1 CPU: Unidade de Processamento Central Prof. Luiz Gustavo A. Martins Arquitetura de von Newmann Unidade de Processamento Central (CPU): Memória Principal Unidade de Processamento
Leia maisLaboratório de Microprocessadores e Microcontroladores
Escola de Engenharia Elétrica, Mecânica e de Computação Universidade Federal de Goiás Laboratório de Microprocessadores e Microcontroladores Experimento 3: Temporizadores e Display LCD Alunos: Matrícula:
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 maisSEL-614 MICROPROCESSADORES E APLICAÇÕES. Adilson Gonzaga
SEL-614 MICROPROCESSADORES E APLICAÇÕES Prof: Adilson Gonzaga HISTÓRICO Microprocessador Circuito integrado ( chip ) capaz de executar instruções. 1971 Intel Corporation lançou no mercado o microprocessador
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 maisLaboratório de Microprocessadores e Microcontroladores
Escola de Engenharia Elétrica, Mecânica e de Computação Universidade Federal de Goiás Laboratório de Microprocessadores e Microcontroladores Experimento 3: Temporizadores e Display LCD Alunos: Matrícula:
Leia maisINSTRUÇÕES DE TRANSFERÊNCIA
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
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 maisCapítulo 1 1. UNIDADE DE INTERFACE DE BARRAMENTO
Capítulo 1 8086 O 8086 possui dois microprocessadores no mesmo chip, que se denominam respectivamente Unidade de Execução e Unidade de Interface de Barramento. Cada um possui os seus próprios registos
Leia maisIntel x AT&T - recapitulação
ASSEMBLY aula 2 Intel x AT&T - recapitulação mov mov int mov mov mov mov add lea sub Intel Code eax,1 ebx,0ffh 80h ebx, eax eax,[ecx] eax,[ebx+3] eax,[ebx+20h] eax,[ebx+ecx*2h] eax,[ebx+ecx] eax,[ebx+ecx*4h-20h]
Leia maisProgramação de Microcontroladores II
Programação de Microcontroladores II L.M.S. e P.S.C. / 2001 (revisão) E.T.M./2003 (revisão) E.T.M./2011 (revisão) E.T.M./2012 (revisão) RESUMO Nesta experiência, dando continuidade à experiência anterior,
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 maisOrganização e Projeto de Computadores
Organização e Projeto de Computadores 1 Processamento no Computador Operações principais: leitura de instrução do programa leitura de dados processamento: execução da instrução escrita de resultado entrada/saída
Leia maisAula 14 Funcionamento de Processadores (Visão específica)
Aula 14 Funcionamento de Processadores (Visão específica) Com base nas aulas de Prof. José Delgado (autorizado) Anderson L. S. Moreira anderson.moreira@recife.ifpe.edu.br http://dase.ifpe.edu.br/~alsm
Leia maisMicrocontroladores. Conjunto de Instruções do Prof. Guilherme Peron Prof. Heitor Lopes Prof. Ronnier Rohrich Prof. Rubão
Microcontroladores do 805 Prof. Guilherme Peron Prof. Heitor Lopes Prof. Ronnier Rohrich Prof. Rubão Introdução Os microcontroladores: Têm instruções limitadas Precisam tratar os dados da forma correta
Leia maisUniversidade de São Paulo
Universidade de São Paulo Organização de Computadores Dr. Jorge Luiz e Silva Cap 4 Generalizar Problema - G1 Fazer um programa que calcule o complemento para dois de uma posição de memória e coloque o
Leia maisUso de interrupções de BIOS/DOS
Uso de interrupções de BIOS/DOS Prof. Ronaldo Hüsemann Mapa de Memória FFFFFh F0000h C0000h B8000h A0000h BIOS (ROM) Reservado Memória de Vídeo (Texto e Gráfica) Memória de Vídeo (Parte Gráfica) Área para
Leia maisUNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática
Exercícios Resolvidos Assembly NOTA: Seguem propostas para resolução dos exercícios das folhas práticas. Tenha em consideração que existem sempre diversas possibilidades para a resolução de um problema.
Leia maisLaboratório de Microprocessadores e Microcontroladores
Escola de Engenharia Elétrica, Mecânica e de Computação Universidade Federal de Goiás Laboratório de Microprocessadores e Microcontroladores Experimento 3: Temporizadores e Display LCD Alunos: Matrícula:
Leia maisAula 10 Microcontrolador Intel 8051 Parte 2
SEL 0415 Aula 10 Microcontrolador Intel 8051 Parte 2 SEL 0415 INTROD À ORGANIZAÇÃO DE COMPUTADORES Prof Dr Marcelo A C Vieira SEL 415 Mapeamento das memórias internas Memória de dados interna (RAM) n 8051
Leia maisSumário. Aula Anterior. Exercício 7.1 Contagem de bits a 1 numa palavra Exercício 7.2 Deslocamento de n bits num operando de 64 bits.
Sumário Aula Anterior Exercício 7.1 Contagem de bits a 1 numa palavra Exercício 7.2 Deslocamento de n bits num operando de 64 bits Aula 12 1 Sumário Nesta Aula Esclarecimento de dúvidas para o Exame Resolução
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 maisAssembly x86. Hugo Bessa - hrba Paulo Serra Filho ptvsf
Assembly x86 Hugo Bessa - hrba Paulo Serra Filho ptvsf Roteiro Assembly Assemblers Sections Registradores Registradores de Segmentos Principais Operações do NASM Funcões e Macros Interrupções Compilando
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 maisGuia Rápido MIPS. Tipos de Dados e Formatações
Tipos de Dados e Formatações Guia Rápido MIPS Tipos de Dados: Todas as instruções são de 32 bits Byte = 8 bits Halfword = 2 bytes Word = 4 bytes Um caractere ocupa 1 byte na memória Um inteiro ocupa 1
Leia maisArquitetura e Organização de Computadores
Arquitetura e Organização de Computadores Linguagem de Montagem e Linguagem de Máquina Givanaldo Rocha de Souza http://docente.ifrn.edu.br/givanaldorocha givanaldo.rocha@ifrn.edu.br Conceitos básicos Linguagem/código
Leia maisMICROPROCESSADORES E MICROCONTROLADORES PROVA 2 UMA SOLUCAO POSSÍVEL
MICROPROCESSADORES E MICROCONTROLADORES PROVA 2 UMA SOLUCAO POSSÍVEL Aluno: Matrícula: 1. Escreva as instruções necessárias para atender a cada uma das configurações solicitadas. Valor: 2,0 (a) Interrupção
Leia maisMicrocontroladores. Interrupções no Prof. Guilherme Peron Prof. Heitor S. Lopes Prof. Ronnier Rohrich Prof. Rubão
Microcontroladores no 8051 Prof. Guilherme Peron Prof. Heitor S. Lopes Prof. Ronnier Rohrich Prof. Rubão O que é interrupção? Interrupção 2 Definição Qualquer evento interno ou externo que obriga o microcontrolador
Leia maisArquitectura de Computadores 3º TESTE
Arquitectura de Computadores 3º TESTE Ano Lectivo: 2008/2009 Data: 6 de Janeiro de 2008 INFORMAÇÕES GERAIS Duração: 2h00 1. Mantenha na secretária apenas a sua identificação e uma caneta (azul ou preta).
Leia maisArquitectura de Computadores 2007/2008 2º Semestre Repescagem 1º Teste - 03/07/2008
Arquitectura de Computadores 2007/2008 2º Semestre Repescagem 1º Teste - 03/07/2008 INSTRUÇÕES: - A duração da prova é de 1,5 horas. - Responda apenas nos locais indicados. - Identifique todas as folhas
Leia maisMICROPROCESSADORES E MICROCONTROLADORES PROVA 2 (Tema: Microcontrolador 8051) Resposta Esperada
MICROPROCESSADORES E MICROCONTROLADORES PROVA 2 (Tema: Microcontrolador 8051) Resposta Esperada 1. Tema: programação geral do microcontrolador 8051. Valor: 2,5 A Tabela 1 mostra um programa, em linguagem
Leia mais