Lista (conjunto de instruções) com solução - IME-USP

Propaganda
LISTA 02 – CONJUNTO DE INSTRUÇÕES - GABARITO
1) Identifique na instrução em linguagem de máquina armazenada na memória, os elementos da instrução
2) Na figura acima, qual a quantidade de código de operações possíveis?
24 = 16
3) Uma instrução em linguagem de alto nível corresponde a VÁRIAS instruções em linguagem ASSEMBLY.
4) Considere a seguinte instrução X=X +Y em linguagem de alto nível. Suponha que as variáveis X e Y
correspondam às posições de memória 513 e 514, preencha os espaços em branco que correspondem a
execução da instrução em alto nível, usando instruções em ASSEMBLY.
(1) Carregar um registrador R com o conteúdo de posição de memória 513.
(2) Adicionar o conteúdo da posição de memória 514 ao conteúdo do registrador R
(3). Armazenar o conteúdo do registrador na posição de memória 513
5) Quais são as questões RELATIVAS ao projeto de um conjunto de instruções
6) Muitas operações em linguagem ASSEMBLY utilizam uma estrutura denominada PILHA (armazenada na
memória) para sua execução. Identifique na figura abaixo o que armazena o conteúdo dos registradores
do PROCESSADOR que controlam a referida PILHA
7) PILHAS podem ser usadas para implementar operações. Considera o conteúdo da pilha abaixo. Utilize as
operações PUSH (item) e POP (), para implementar a operação de multiplicação dos dois números
armazenados na pilha.
8) NUMERO DE ENDEREÇO DE UMA INSTRUÇÃO. As instruções podem possui 0, 01, 02 e 03, conforme abaixo
discriminado. Explique, através de um esquema, o que faz as instruções SUB e MPY.
SUB Y,A,B
YA-B
MPY T,D,E
T D *E
SUB Y,B
YY-B
MPY T,E
T T *E
SUB B
AC  AC - B
AC  AC * E
MPY E
9) Quem é o AC em uma instrução com 01 endereço?
É O REGISTRADOR ACUMULADOR LOCALIZADO
10) Uma UCP com instruções com menos endereços são MENOS COMPLEXAS
11) Um mesmo conjunto de classe de operações é encontrado em todos os tipos de máquinas. Relacione as
operações abaixo com e respectiva classe de operação:
1. Operações de transferência de dados
2. Operações aritméticas
3. Operações lógicas
4. Operações de conversão
5. Operações de E/S
6. Operações de controle do sistema
7. Operações de transferência de controle.
Halt
Push
Negate
Shift
Execute
Store
Reservadas para o uso do sistema operacional
Move
Rotate
Translate
Clear
Decrement
Start I/O
Jump to subroutine
Multiply
Skip
Halt
Read Input
Write Input
07
01
02
03
07
01
06
01
03
04
01
02
05
07
02
07
07
05
05
12) Explique cada uma das instruções abaixo:
Halt
Push
Negate
Shift
Execute
Store
Move
Rotate
Translate
Clear
Decrement
Start I/O
Jump to subroutine
Multiply
Skip
Halt
Jump Conditional
Read Input
Write Input
PARA A EXECUÇÃO DE UM PROGRAMA
COLOCAR DADOS NA PILHA
MUDA O SINAL DE UM OPERANDO
DESLOCAMENTO DE OPERANDO PARA ESQUERDA ( DIREITA) INTRODUZINDO
CONSTANTE NO FINAL.
BUSCA UM OPERANDO EM UMA POSIÇÃO ESPECÍFICA DA MEMÓRIA E EXECUTA
O VALOR DESTE OPERANDO COMO UMA INSTRUÇÃO. NÃO MODIFICA O VALOR
DO CONTADOR DE PROGRAMA (PC).
TRANSFERE PALAVRA OU BLOCO DA FONTE PARA O DESTINO
ROTAÇÃO CIRCULAR DO OPERANDO PARA ESQUERDA OU PARA DIREITA.
TRANSFERE UMA PALAVRA CONTENDO ZERO PARA O DESTINO
SUBTRAI 1 DO OPERANDO
TRANSFERE INSTRUÇÕES PARA O PROCESSADOR DE E/S PARA INICIAR UMA
OPERAÇÃO DE E/S
ARMAZENA INFORMAÇÃO DE CONTROLE DA OPERAÇÃO CORRENTE EM UMA
POSIÇÃO CONHECIDA E DESVIA PARA O ENDEREÇO ESPECIFICADO.
CALCULA O PRODUTO DE DOIS OPERANDOS
INCREMENTA O CONTADOR DE PROGRAMA (PC). O ENDEREÇO DA PRÓXIMA
INSTRUÇÃO
PARA A EXECUÇÃO DE UM PROGRAMA.
TESTA UMA CONDIÇÃO. CARREGA OU NÃO O PC COM O ENDEREÇO
ESPECIFICADO, CONFORME RESULTADO DO TESTE.
TRANSFERE DADO PARA PORTA OU DISPOSITIVO DE E/S ESPECIFICADO PARA O
DESTINO.
TRANSFERE DADO DA FONTE ESPECIFICADA PARA PORTA OU DESTINO DE E/S.
13) Explique em detalhes os seguintes programas em linguagem ASSEMBLY que contém operações de desvio.
SUBTRAI X de Y. SE O RESULTADO FOR IGUAL A ZERO (TESTE) O PROGRAMA DESVIARÁ PARA O ENDEREÇO
211. CASO CONTRÁRIO O PROGRAMA VAI PARA O ENDEREÇO 2004
SUBTRAI X de Y. SE O RESULTADO FOR NEGATIVO (TESTE) O PROGRAMA DESVIARÁ PARA O ENDEREÇO
223. CASO CONTRÁRIO O PROGRAMA VAI PARA O ENDEREÇO 2004
SE O CONTEÚDO DOS REGISTRADORES R1 e R2 FOREM IGUAIS (TESTE) O PROGRAMA DESVIA PARA O
ENDEREÇO 235.
14) As operações de chamada de procedimento utilizam uma PILHA. Considerando o programa abaixo que
acionam procedimentos mostre as operações executadas sobre a pilha armazenada na memória do
computador.
15) As operações de chamada de procedimento utilizam uma PILHA. Considerando o programa abaixo que
acionam procedimentos mostre as operações executadas sobre a pilha armazenada na memória do
computador.
Download