Explorar E-books
Categorias
Explorar Audiolivros
Categorias
Explorar Revistas
Categorias
Explorar Documentos
Categorias
Conteúdo da aula
• Conjunto de instruções
Conjunto de instruções
Objetivos da aula
• Ciclo de instruções
Conjunto de instruções
Interpretada Compilada
• Java • C
• C# • C++
• Python • Basic
• ASP • Pascal
• BASIC • Delphi
• LUA • Fortran
• VBScript • Visual Basic
Conjunto de instruções
É verificado se os caracteres do programa fonte
Fases da compilação pertencem ao alfabeto da linguagem e identificado
os tokens.
É verificado se as sequências de símbolos (tokens) que o
constituem o programa, representam as estruturas
sintáticas da linguagem de programação (expressões,
comandos)
É verificado se as estruturas sintáticas analisadas fazem
sentido, ou seja, se um identificador declarado como
variável é usado como tal; se existe compatibilidade entre
operandos e operadores em expressões;
Linguagem
assembly
Assembly é uma instrução de máquina expressa de forma simbólica, em vez do seu valor
binário
Conjunto de instruções
Instruções com três operandos
Como seria a execução desta instrução (linguagem em alto nível)
• Observe que com dois operandos necessitamos de uma instrução a mais para
executar o mesmo código.
• Observe também que, foram destruídos os valores armazenados nos endereços
correspondentes às variáveis A, B, C e E, o que pode ser um problema.
Conjunto de instruções
Instruções com um operandos
Conjunto de instruções
Comparação por quantidade de operandos
Modos de endereçamento
Vimos até esse ponto que o campo operando contem o endereço
da MP onde está localizado o dado referido na instrução; no
entanto, essa não é a única maneira de indicar a localização de
um dado, havendo outros modos de endereçamento:
• Imediato;
• Direto;
• Indireto;
• Por registrador;
• Indexado;
• Base mais deslocamento.
Conjunto de instruções
Modos de endereçamento
Modo Imediato:
• O dados é o próprio valor no campo operando da instrução;
• Apresenta um curto tempo de execução da instrução
• Não gasta ciclo de memória para sua execução, exceto o único requerido
para sua busca.
• É útil:
• para inicialização de contadores;
• na operação com constantes matemáticas;
• para armazenamento de ponteiros em registradores do processador;
• para indicação da quantidade de posições em que um determinado
número será deslocado para a direita ou para a esquerda ( operações de
multiplicação e divisão).
Conjunto de instruções
Modos de endereçamento
Modo Direto:
• O binário contido no campo do operador é o endereço de memória
que contém o dado a ser utilizado (utilizado nos nossos exemplos);
• De simples de acesso, pois requer apenas uma referência à MP para
buscar o dado, sendo, porém, mais lento que o modo imediato devido á
referência à memória.
• Sua limitação é a quantidade de bits disponível para o campo do
operador, pois isso limita a quantidade de endereço de memória que
pode ser endereçado.
• Campo de operador de 32bits endereça até 4G de memória, porém
não é viável criar um campo de operador tão grande.
Conjunto de instruções
Modos de endereçamento
Modo Indireto:
• O valor binário do campo operando representa o endereço de uma
célula, porém esta célula contém um novo endereço que indica o local
na memória em que encontra-se o dado.
• Esse modo possui um duplo endereçamento para o acesso a um dado e
consequentemente, mais ciclos de memoria para buscar o dado.
• O endereço intermediário é conhecido como ponteiro, pois indica a
localização do dado (“aponta” para o dado).
Vamos exercitar:
1) Assinale a alternativa que NÃO apresenta um tipo de instrução que
pode ser realizada
em um processador:
A) Operações matemáticas
B) Movimentação de dados
C) Entrada e saída
D) Operações de multiprogramação
E) Controle
Exercícios
Vamos exercitar:
2) Assinale a alternativa que apresenta o conceito definido como “uma
alteração forçada
da sequência de execução de um programa”.
A) Instrução
B) Repetição
C) Sequência
D) Desvio
E) Seleção
Exercícios
Outros exercícios
Exercícios 1,2,3,4,8,12 (Página 310)
Conjunto de instruções
Próxima aula:
• Memória: hierarquia e operações;
• Subsistema de I/O.