Buscar

Prova_Reposicao_1_IACOM_2011_2_respondida

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 9 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 9 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 9 páginas

Prévia do material em texto

Universidade Federal do Maranhão – UFMA ˧ 
Centro de Ciências Exatas e Tecnologia - CCET 
Departamento de Engenharia de Eletricidade 
Av. dos Portugueses, s/n
o
 - Campus Universitário do Bacanga 
65080-040 - São Luís - MA - Brasil 
 
1 
 
Nome: _____________________________________ 
Código: _____________________ 
Data: _____/_____/_____ 
 
Introdução à Arquitetura de Computadores 
Prof. Denivaldo Lopes 
 
Prova de Reposição I 
 
1.Responda as seguintes perguntas (Pontos: 2,0): 
a. O que é SMP e MPP? Diferencie-os. 
Resp: 
SMP (Symmetric MultiProcessing) permite a existência de várias CPUs em 
uma mesma motherboard, que compartilham a mesma memória (regiões da 
memória gerenciada pelo SO). Uma única cópia do Sistema Operacional 
gerencia todas as CPUs. 
 
MMP (Massively Parallel Processing or Massively Parallel Processor ) 
permite a existência de várias CPUs cada uma tendo sua própia memória. 
As CPUS se comunicam através de um sistema de comunicação 
extremamente veloz. Uma cópia do Sistema Operacional para cada CPU. 
 
 
b. O que é CISC e RISC? Estabeleça as diferenças entre eles. 
Resp: CISC (Complex Instruction Set Computing): suporta instruções 
complexas e as suas instruções possuem diferentes tempos de ciclo de 
instrução. 
Ex: Processadores da Pentium da Intel e Athlon da AMD. 
 
RISC (Reduced Instruction Set Computing): suporta instruções simples e as 
instruções possuem o mesmo tempo de ciclo de instrução, com exceção dos 
saltos e chamadas de subrotina. 
Ex: Processadores Sparc da Sun e PowerPc da IBM. 
 
 
c. O que é um computador com arquitetura Harvard e Von Neuman? 
Resp: 
Na máquina de Von Neumann há um só barramento para endereços e, outro 
para dados. Na máquina de Harvard, há barramentos de dados e de 
endereços diferenciados para memória e dispositivos de entrada/saída. 
 
NOTA: 
N = 
RESOLUÇÃO 
 
Universidade Federal do Maranhão – UFMA ˧ 
Centro de Ciências Exatas e Tecnologia - CCET 
Departamento de Engenharia de Eletricidade 
Av. dos Portugueses, s/n
o
 - Campus Universitário do Bacanga 
65080-040 - São Luís - MA - Brasil 
 
2 
 
 
d. Quais são os componentes estruturais principais de um computador? 
Explique-os. 
Resp: 
Unidade central de processamento (CPU): controla a operação do 
computador e realiza suas funções de processamento de dados. A CPU é o 
processador. 
Memória principal: armazena dados. 
E/S: move dados entre o computador e seu ambiente externo. 
Interconexão do sistema: algum mecanismo que oferece comunicação entre 
CPU, memória principal e E/S. 
 
e. Quais são as diferenças básicas entre Microprocessador e microcontrolador? 
 
Resp: 
 Microprocessador é um sistema capaz de executar operações lógicas e 
aritméticas e fazer tomadas de decisão baseada em dados. Também pode ser 
visto como todos os componentes de uma CPU em um único chip. Entretanto, 
um microprocessador precisa de memória principal (RAM), dispositivos de 
entrada-saída, sistema de clock e conversores de sinais para que possa funcionar. 
 Microcontrolador computa dados, mas com capacidade reduzida se 
comparada aos microprocessadores. Possui elevada capacidade de fazer entrada-
saída. Deve ser pequeno, barato e auto-condido. Funciona em temperaturas 
extremas. Consome pouca energia se comparado ao microprocessador. Possui 
memória reduzida. 
 
 
 
2. Discorra sobre a estrutura de alto nível de um computador. Em seguida, detalhe a 
estrutura da CPU e da Unidade de Controle (Pontos: 2,0) 
Resp: 
Unidade central de processamento (CPU): controla a operação do 
computador e realiza suas funções de processamento de dados. A CPU é o 
processador. 
Memória principal: armazena dados. 
E/S: move dados entre o computador e seu ambiente externo. 
Interconexão do sistema: algum mecanismo que oferece comunicação entre 
CPU, memória principal e E/S. 
 
A estrutura de uma CPU contém: 
Unidade de controle: controla a operação da CPU e, portanto, do 
computador. 
 
Universidade Federal do Maranhão – UFMA ˧ 
Centro de Ciências Exatas e Tecnologia - CCET 
Departamento de Engenharia de Eletricidade 
Av. dos Portugueses, s/n
o
 - Campus Universitário do Bacanga 
65080-040 - São Luís - MA - Brasil 
 
3 
 
Unidade aritmética e lógica (ALU): realiza as funções de processamento 
de dados do computador. 
Registradores: oferece armazenamento interno à CPU. 
Interconexão da CPU: algum mecanismo que oferece comunicação entre 
unidade de controle, ALU e registradores. 
 
A unidade de controle: 
Lógica de sequenciação: responsável por determinar a seqüência da 
execução da instrução. 
Registradores e decodificadores da unidade de controle: armazenam as 
instruções, decodificam-na para gerar os sinais de controle. 
Memória de controle: armazena as microoperações que geram os sinais de 
controle durante o ciclo de instrução. 
 
 
3. Um programa de benchmark é executado em um processador de P MHz. O programa 
executado consiste de S execuções de instruções, com a mistura de instruções e 
quantidade de ciclos de clock apresentados na Tabela 1. Pontos (2,0) 
 
Tabela 1. Quantidades de instruções e ciclos de clock por instrução 
Tipo de instrução Quantidade de instruções Ciclos de clock por 
instrução 
Aritmética de inteiros 40.000 1 
Transferência de dados 10.000 3 
Ponto flutuante S – 60.000 3 
Transferência de controle 10.000 2 
 
Onde: P = N x 10 
 S = N x 100.000 
 
Determine o CPI efetivo, a taxa de MIPS e o tempo de execução para esse programa. 
 
Resp: 
Para N=1 
 
𝐶𝑃𝐼 =
 𝐶𝑃𝐼𝑖 𝑥 𝐼𝑖 𝑛𝑖=1
𝐼𝑐
 
Tipo de instrução Quantidade de 
instruções 
Ciclos de clock por 
instrução 
CPIi 
Aritmética de inteiros 40.000 1 40.000 
Transferência de dados 10.000 3 30.000 
Ponto flutuante 40.000 3 120.000 
Transferência de 10.000 2 20.000 
 
Universidade Federal do Maranhão – UFMA ˧ 
Centro de Ciências Exatas e Tecnologia - CCET 
Departamento de Engenharia de Eletricidade 
Av. dos Portugueses, s/n
o
 - Campus Universitário do Bacanga 
65080-040 - São Luís - MA - Brasil 
 
4 
 
controle 
 𝐶𝑃𝐼𝑖 𝑥 𝐼𝑖 
𝑛
𝑖=1
 
210.000 
 
𝐶𝑃𝐼 =
210.000
100.000
= 2,10 
 
𝑇 = 𝐼𝑐 𝑥 𝐶𝑃𝐼 𝑥 𝜏 
 
𝑇 = 100.000 𝑥 2,10 𝑥 
1
10 𝑥 106
= 21,00𝑚𝑠 
 
 
𝑇𝑎𝑥𝑎 𝑀𝐼𝑃𝑆 = 
𝐼𝑐
𝑇 𝑥 106
=
100.000
21 𝑥 10−3𝑥106
= 4,76 𝑀𝐼𝑃𝑆 
 
 
N P S Arit. Int. Transf. Dados Ponto Flut. Transf. Cont. CPI MIPS T
1 10 100.000 40.000 10.000 40.000 10.000 2,10 4,76 2,10E-02
2 20 200.000 40.000 10.000 140.000 10.000 2,55 7,84 2,55E-02
3 30 300.000 40.000 10.000 240.000 10.000 2,70 11,11 2,70E-02
4 40 400.000 40.000 10.000 340.000 10.000 2,78 14,41 2,78E-02
5 50 500.000 40.000 10.000 440.000 10.000 2,82 17,73 2,82E-02
6 60 600.000 40.000 10.000 540.000 10.000 2,85 21,05 2,85E-02
7 70 700.000 40.000 10.000 640.000 10.000 2,87 24,38 2,87E-02
8 80 800.000 40.000 10.000 740.000 10.000 2,89 27,71 2,89E-02
9 90 900.000 40.000 10.000 840.000 10.000 2,90 31,03 2,90E-02
10 100 1.000.000 40.000 10.000 940.000 10.000 2,91 34,36 2,91E-02
 
 
 
4.A estrutura do computador IAS e seu conjunto de instruções são fornecidos na Figura 
1 e na Tabela 2, respectivamente. Considere que A=A(1), A(2), ..., A(50), B=B(1), 
B(2), ...,B(50) e C=C(1), C(2), ...,C(50) sejam três vetores (arrays unidimensionais) 
compostos de50 números em cada um, que são usados para formar um array D tal 
que D(i)= A(i) + B(i) – C(i) para i=1,2,3,...,50. Usando o conjunto de instruções do 
IAS, escreva um programa para resolver esse problema. (Pontos: 2,0) 
 
 
 
 
 
 
 
 
Universidade Federal do Maranhão – UFMA ˧ 
Centro de Ciências Exatas e Tecnologia - CCET 
Departamento de Engenharia de Eletricidade 
Av. dos Portugueses, s/n
o
 - Campus Universitário do Bacanga 
65080-040 - São Luís - MA - Brasil 
 
5 
 
Localização Instrução Comentários 
0 49 Contador N 
1 1 Constante 
2 50 Constante 
3L LOAD M(100) Carrega A(I) no acumulador 
3R ADD M(150) Faz Acumulador = A(I) + B(I) 
4L SUB M(200) Faz Acumulador = Acumulador - C(I) 
4R STOR M(250) D(I) = Acumulador 
5L LOAD M(0) Carrega contador N 
5R SUB M(1) Faz N – 1 (decrementa) 
6L JUMP+ M(7, 0:19) Salta para 7L se N é não negativo 
6R JUMP M(6, 20:39) Fica em um loop em 6R 
7L STOR M(0) Atualiza N com valor de Acumulador 
7R ADD M(1) Incrementa o acumulador 
8L ADD M(2) Faz Acumulador + M(2) 
8R STOR M(3, 8:19) Modifica endereço de 3L 
9L ADD M(2) Faz acumulador + M(2) 
9R STOR M(3, 28:39) Modifica endereço de 3R 
10L ADD M(2) Faz acumulador + M(2) 
10R STOR M(4, 8:19) Modifica endereço de 4L 
11L ADD M(2) Faz acumulador + M(2) 
11R STOR M(4, 28:39) Modifica endereço de 4R 
12L JUMP M(3, 0:19) Salta para 3L 
 
 
 
5. O processador da Figura 2 possui um conjunto básico de código em linguagem 
assembly, linguagem de máquina e micro-código dado na Tabela 3. Escreva um 
programa em assembly, depois forneça o código de máquina, que execute as 
seguintes operações de alto nível : (Pontos: 2,0) 
 S = 2; 
 K = S -1; 
 T = S + 3; 
 U = 8; 
 P = U - T; 
 W = P - K; 
 
Boa sorte! 
 
 
 
 
 
Universidade Federal do Maranhão – UFMA ˧ 
Centro de Ciências Exatas e Tecnologia - CCET 
Departamento de Engenharia de Eletricidade 
Av. dos Portugueses, s/n
o
 - Campus Universitário do Bacanga 
65080-040 - São Luís - MA - Brasil 
 
6 
 
Resp: 
Localização Instrução Código de Máquina Comentário 
0 LOAD ACC, 2 20 ACC ← 2 
1 MOVE <0>, ACC 03 <0> ← ACC # salva S 
2 SUB ACC, 1 12 ACC ← ACC - 1 
3 MOVE <1>, ACC 13 <1> ← ACC # salva K 
4 LOAD ACC,0 00 ACC ← 0 
5 ADDM ACC, <0> 06 ACC ← 0 + <0> # carrega S 
6 ADD ACC, 3 31 ACC ← ACC + 3 
7 MOVE <2>, ACC 23 <2> ← ACC # salva T 
8 LOAD ACC, 8 80 ACC ← 8 
9 MOVE <3>,ACC 33 <3> ← ACC # salva U 
A SUBM ACC, <2> 27 ACC ← ACC - <2> 
B MOVE <4>, ACC 43 <4> ← ACC # salva P 
C SUBM ACC, <1> 17 ACC ← ACC - <1> 
D MOVE <5>, ACC 53 <5> ← ACC # salva W 
E HLT 04 Parada 
F 
 
 
 
 
 
 
Universidade Federal do Maranhão – UFMA ˧ 
Centro de Ciências Exatas e Tecnologia - CCET 
Departamento de Engenharia de Eletricidade 
Av. dos Portugueses, s/n
o
 - Campus Universitário do Bacanga 
65080-040 - São Luís - MA - Brasil 
 
7 
 
 
Figura 1. Organização do IAS 
 
Tabela 2. Conjunto de instruções do IAS 
 
 
Universidade Federal do Maranhão – UFMA ˧ 
Centro de Ciências Exatas e Tecnologia - CCET 
Departamento de Engenharia de Eletricidade 
Av. dos Portugueses, s/n
o
 - Campus Universitário do Bacanga 
65080-040 - São Luís - MA - Brasil 
 
8 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Universidade Federal do Maranhão – UFMA ˧ 
Centro de Ciências Exatas e Tecnologia - CCET 
Departamento de Engenharia de Eletricidade 
Av. dos Portugueses, s/n
o
 - Campus Universitário do Bacanga 
65080-040 - São Luís - MA - Brasil 
 
9 
 
CP 
(Contador de 
Programa)
MP 
(Memória de 
Programa)
MC 
(Memória de 
Controle)
AC
(Acumulador)
MUX
 
 ULA
(Unidade Lógica e 
Aritmética)
RAM
4 4
4
4
4
4
4
4
4
Clock
4
STACK
M
U
X
4
4
 
Figura 2. Processador simples 
 
Tabela 3. Conjunto de instruções para o processador simples da Figura 2. 
Código Assembly Código de 
Máquina 
Micro-código 
 
Comentário 
LOAD ACC, <const> <const> 0 EE 91 ACC ← <const> 
ADD ACC, <const> <const> 1 EE 41 ACC ← ACC + <const> 
SUB ACC, <const> <const> 2 ED A1 ACC ← ACC - <const> 
MOVE <address>, ACC <address> 3 44 01 <address> ← ACC 
HLT 04 5E 35 Parada 
ADDM ACC, <address> <address> 6 2E 49 ACC ← ACC + <address> 
SUBM ACC, <address> <address> 7 E4 00 ACC ← ACC - <address>

Outros materiais