EEL5314 - Microprocessadores - Prova teórica 1a1s97

Propaganda
EEL7030 - Microprocessadores - Prova teórica T1 2004/2
Prof. Hari Mohr
Data: 14/09/2004
Nota:
Aluno(a): __________________________________________ Turma: ____
Orientações gerais:
não é permitido o uso de calculadora;
a prova é sem consulta.
Questão 1
Valor: 2.0 Nota: _______
a) Determine o valor hexadecimal da máscara necessária para realizar cada uma das operações
abaixo e escreva fragmentos de código para o 8085 que executem as ações correspondentes.
A1) Complementar os bits 0, 1, 4 e 5 do acumulador sem alterar os demais bits e nem os outros
registradores;
A2) Zerar os bits 2, 3, e 7 do registrador B sem alterar os demais bits e nem os outros registradores;
b) Explique o que é uma diretiva e cite 3 exemplos.
Questão 2
Valor: 2.0 Nota: _______
Para cada uma das afirmações seguintes, assinale V ou F, conforme considerar a afirmação verdadeira
ou falsa.
Para evitar o chute, cada resposta errada anula uma resposta certa. A opção em branco não é
considerada.
(
) A região de memória da pilha só é acessada pelas instruções PUSH e POP.
(
) A máscara de bits “80H” pode ser usada para setar o bit mais significativo do acumulador se usada com a
instrução ANI.
( ) O endereço de retorno das sub-rotinas é armazenado na pilha pela instrução CALL
(
) A pilha pode ser, em princípio, alocada em qualquer endereço de memória RAM ou EPROM, desde que
não tenha conflito com a região de código de programa.
(
) As interrupções do 8085 tem prioridades de atendimento diferentes entre si, com TRAP sendo a mais
prioritária.
(
) As interrupções do 8085 tem endereço fixo pré-definido de tratador para o seu atendimento.
(
) As instruções IN e OUT servem para acessar a memória comum usando endereços de 16 bits.
( ) Para o 8085, a forma mais eficiente de fazer a comunicação entre o programa principal e um
tratador de interrupção é a passagem de valores através do acumulador.
(
) O número de posições de memória que um processador pode endereçar depende de quantos
bits tem seu barramento de dados.
( ) O endereço de retorno das interrupções depende do tipo de interrupção
Questão 3
Valor: 2.0 Nota: _______
Execute o programa a seguir desde o “CONT” até “AQUI”e preencha os valores finais das posições de
memória alteradas e do Acumulador nos quadros da pagina seguinte.
2015 C5
CONT:
PUSH B
1
2016
2019
201B
201E
201F
CD 1B 20
16 04
CD 20 20
00
C9
2020
2022
2023
2024
3E 07
D5
A1
D1
2020
CALL Soma
MVI D,4
Call Testa
NOP
RET
Soma:
Testa:
MVI A,07H
PUSH D
ANA C
POP D
AQUI:
2025 C9
Registrador
Valor inicial
Valor final
A
31
Memória
Valor inicial
Valor final
2030
03
B
23
2031
02
RET
C
40
D
05
2032
01
Questão 4
E
34
2033
05
Flag HL
02
2017
2034
06
2035
08
SP
2039
2036
61
2037
62
2038
63
2039
64
Valor: 3.0 Nota: _______
O programa abaixo deve fazer o deslocamento de um LED aceso com velocidade controlado pelas chaves.
O número de Interrupções TRAP ocorridas deve ser mostrado no campo de Dados
a) Quais são os erros que impedem a execução correta do programa ?
b) Qual a função das instruções marcadas com *1 ? O que pode acontecer se elas forem omitidas ?
c) Qual a função das instruções marcadas com *2 ? O que pode acontecer se elas forem omitidas ?
LOOP:
VELOC:
TTRAP:
DADO
SAIDA
ORG 2000H
LXI SP,2017H
MVI A,18H
SIM
EI
MVI A,02H
OUT COMANDO
MVI A,07H
OUT LEDS
STA SAIDA
LDA SAIDA
RLC
OUT LEDS
STA SAIDA
IN CHAVES
CPI 0
*1
JZ LOOP
*1
MOV D,A
CALL DELAY
JMP LOOP
PUSH PSW
*2
LDA DADO
INR B
STA DADO
CALL MOSTRAA
EI
POP PSW
*2
RET
DB 0
DB 0
ORG TRAP
JMP TTRAP
END
2
Download