Buscar

Gabarito 1ª Lista de Exercícios Não Avaliativa AOC EAD UFPI 2017 2

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 4 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

Prévia do material em texto

MINISTÉRIO DA EDUCAÇÃO 
UNIVERSIDADE FEDERAL DO PIAUÍ 
CENTRO DE EDUCAÇÃO ABERTA E A DISTÂNCIA 
CURSO DE LICENCIATURA EM COMPUTAÇÃO 
ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES (AOC) 
 
Gabarito 1ª LISTA DE EXERCÍCIOS ( Não avaliativa ) 
 
Esta lista deve ser respondida no 1º encontro presencial (23/09/2017). 
 
1. No âmbito do ensino superior, em cursos de computação, existem duas 
disciplinas que são: Organização de Computadores e Arquitetura de 
Computadores. Entretanto, alguns cursos superiores (como esse de Licenciatura em 
Computação , EAD/UFPI) acabam adotando uma única disciplina que envolve ambos 
os conteúdos (sem o aprofundamento de cada uma). Sendo assim, diferencie estas 
duas disciplinas. 
 O slide2 basicamente responde essa pergunta. É comum que em cursos 
superiores com laboratórios de hardware, como Bacharelado em Ciências da 
Computação se utilize Organização de Computadores e naqueles cursos superiores 
com maior ênfase na programação, se use Arquitetura de Computadores. Infelizmente, 
pela falta de laboratórios de hardware na maioria das universidades (públicas e 
particulares) acaba-se tendo uma visão geral teórica de ambos. 
Resumindo: 
Organização de computadores: Mais relacionado aos construtores do PC, 
Tecnologias das memórias, Sinais de controle... 
Arquitetura de Computadores: Mais relacionado aos programadores, Estrutura 
de dados, Modos de Endereçamento, Conjunto de Instruções da CPU,... 
Quanto custa um PC com o poder do XOne X? 
https://www.tecmundo.com.br/xbox-one-x/117694-custa-pc-xone-x-o-ps4-pro-guerra.htm 
(13/06/2017) 
No ano passado, a Sony deu um passo ousado ao anunciar o PS4 Pro, um vídeo 
game mais poderoso do que o tradicional e capaz de dar o primeiro passo na resolução 
4K. Com essa jogada, a fabricante saiu na frente na corrida pelo console de mesa mais 
potente, mas a Microsoft deixou avisado que viria com força total para ganhar a disputa. 
Pois bem, o tão aguardado anúncio do Xbox Scorpio — agora conhecido como 
Xbox One X — finalmente aconteceu e, de fato, deixou muita gente surpresa. Durante 
sua apresentação na E3 2017, a Microsoft revelou algumas informações do produto, 
principalmente sobre números relativos à potência do console. (...) 
O Xbox One X prometeu muito, ainda mais com as imagens de games em 4K 
reveladas. 
Nessa história, fica bem claro que mesmo sem fazer cálculos elaborados, a 
gente já pode dizer de boca cheia que console algum consegue alcançar o nível de 
poder computacional de um PC gamer, afinal, um computador pode ser configurado de 
acordo com o gosto do freguês — e isso inclui a possibilidade de juntar duas placas de 
vídeo GeForce GTX 1080 Ti. (...) 
Um upgrade monstro! 
Primeiro, vamos falar do Xbox One X. De acordo com a fabricante, o aparelho é 
uma evolução do projeto original do Xbox One, o que significa que ele tem arquitetura e 
componentes similares. O processador tem oito núcleos personalizados e se mostra 
mais poderoso para executar as atividades, já que vem com clock elevado — a 
frequência subiu de 1,75 GHz para 2,3 GHz. 
Só essa mudança já seria significativa para dar um upgrade considerável no 
aparelho, mas a Microsoft foi além e fez uma atualização também na memória e no chip 
gráfico. Enquanto o Xbox One S tem 8 GB de memória RAM do tipo DDR3, o Xbox One 
X vem com 12 GB de memória, agora no padrão GDDR5. (...) 
 
2. Considerando a trecho de reportagem acima, responda: 
 a) Para esse novo computador da Microsoft, o que podemos afirmar sobre 
seus três componentes básicos ( memória, CPU e periféricos) ? 
Sobre o computador Xbox One X, temos conforme a reportagem: 
Memória  12GB de RAM GDDR5. Não vamos ao longo desse curso detalhar 
sobre os tipos de memória gráficas (GDDR5); 
CPU  Processador de Oito núcleos (octa-core) de 2,3GHz como frequência em 
cada núcleo ; 
Periféricos  Duas placas de vídeo GeForce GTX 1080 Ti , possibilitando jogar 
em uma qualidade 4 vezes superior ao padrão Full HD do Brasil; ou seja, qualidade 4K. 
Naturalmente que o monitor/TV deveria também ser 4K para poder aproveitar esse 
recurso. 
Perceba portanto que o objetivo era apenas diferenciar o que era memória, CPU 
e periféricos. Obviamente que o artigo acima é muito limitado, outros itens poderiam ser 
encontrados. Assim, se for dito que o videogame vem com Drive de Blu-Ray, o drive é 
um dispositivo de Entrada/Saída (E/S), e o disco (BD, Blu-Ray Disk) é a memória. 
 
 b) Sabendo que esse computador é um videogame, os três componentes 
acima foram atualizados, mas um deles teve especial atenção. Qual foi e por que? 
Em geral vídeo game precisam ter bons processadores e abundante memória, 
mas o que torna o jogo viciante é a qualidade/rapidez das imagens, é essa função é da 
placa de vídeo, que é um periféricos (e como vimos pode ter várias em um computador, 
basta a placa mãe ter tecnologia/suporte para múltiplas placas gráficas). Logo, foi dada 
especial atenção à placa de vídeo (agora são duas de boa qualidade ), portanto 
destacou-se os periféricos. 
 
3. Sobre registradores, responda: 
 a) Se registradores são memória, qual a 
diferença entre um registrador e um HD? 
 Basicamente, um registrador é construído 
com a mesma tecnologia dos processadores e se 
encontram dentro do processador. Logo é MUIIITO 
mais rápido para um dado ser lido em um registrador 
que em uma lenta memória secundária, como o HD. 
Infelizmente os registradores são poucos por serem 
caros. Basicamente imagine um super computador 
como um armário contendo centenas de placas mães com centenas de registradores 
em cada uma dessas placas. Consequência, são muito rápidos, mas custam milhões de 
reais. 
 
 b) Qual e diferença entre os RPGS e os outros? Mencione dois exemplos 
de cada um dos dois tipos. 
 O slide9 responde parcialmente essa questão, deixando claro que RPGs 
são registradores que armazenam qualquer coisa (Ex.: AX e BX) enquanto que outros 
registradores armazenam sempre um conteúdo com significado específico (eu diria 
especial). É o caso do IR que armazena sempre o endereço da instrução atualmente 
em execução e do RDM que armazena sempre o dado que está sendo lido/gravado na 
memória. 
 
 
 
4. No início, os programas de computador não ficavam armazenados no próprio, 
não existia pendrive ou HD/disquete. A programação era feita diretamente nos cartões 
perfurados e/ou através da manipulação de dezenas de chaves. Assim, um simples 
programa podia consumir dezenas destes cartões e cada vez que quiséssemos 
executar o programa teríamos que novamente fazer a leitura de todos os cartões 
perfurados. 
 Atualmente, os programas tem suas instruções de alto nível quebradas em 
micro instruções. Explique como funciona esse ciclo da execução de uma instrução ( 
Busca-Decodifica-Executa) 
 O slide10 responde integramente a questão: 
1) Busca prox. I. p/ IR 
2) Atualiza o PC 
3) Determina tipo de I. 
(Reg/Mem, Reg/Reg ou Mem/Mem) 
4) Se I. tem dados, determina local 
5) Busca dados (se houver) p/ Reg 
6) Executa a I. 
7) Armazena resultados 
8) Volta ao Passo1 
Basicamente, o ciclo sempre começa trazendo para o IR o endereço da próxima 
instrução que será executada. Então o registrador PC deve ser atualizado, para indicar 
agora que é o endereço da próxima instrução que será executada. No passo 3, temos 
que verificar se a instrução atual já tem todos os dados que precisa no processador 
(instrução do tipo Reg/Reg); senão, o processador precisará descobrir onde se encontra 
esse dado (Passo4) e fazer (pelo menos um) acesso à memória principal para trazer o 
dado solicitado ao processador (passo 5). Então, de posse de todos os dados que 
precisa para executar a instrução, o processador o faz (Passo 6), armazenando os 
resultados (Passo7) e reiniciando o ciclo Busca-Decodifica-Executa(Volta ao Passo1). 
 
5. Ao lado 
temos um gráfico 
referente a 
barramento. 
Explique o que é 
um barramento e a 
função dos três 
tipos de 
barramento local. 
 
 
 
 
 Sugiro desenhar o Barramento Local (com os seus três tipos, conforme Slide11). 
Explicar que basicamente com a memória só existe dois tipos de operações, ou é de 
leitura ou é de escrita. No barramento de endereço, vai o endereço da célula que será 
usada para gravar o dado ou ler esse dado. Já no barramento de dados, é por onde vai 
transitar o dado que vai ser lido da memória ou o dado que vai ser gravado na memória. 
Na verdade, é apenas no barramento de controle que o processador vai determinar se 
é uma operação de leitura ou de escrita. 
 Embora a questão não peça, sugiro também falar um pouco sobre os 
barramentos de expansão, talvez levando uma placa mãe e mostrando a eles. Lembrar 
que ISA, PCI, AGP são barramentos de expansão internos muito antigos. Nas placas 
mãe atuais, o que temos são basicamente PCI Express, não precisando entrar em 
detalhes. Fechar a questão falando do Barramento de expansão externo USB e 
FireWire. 
 
 
 6. Sabendo que DIV representa divisão e usando apenas os endereços de 
memória: A, B, C e os RPGs R0 e R1 faça um programa em Assembly que calcule a 
instrução de alto nível abaixo: 
 B = A + C/A - B + R0 
 Vale ressaltar que a resposta abaixo é apenas uma das possíveis respostas. Cada 
processador terá uma unidade especial para quebrar a atribuição acima de alto nível 
em várias micro instruções, e você fazendo o papel desse processador poderá encontrar 
vários caminhos diferentes que levem ao mesmo destino. Também é importante deixar 
claro que o processador tem um conjunto de dados que ele pode usar, seja variáveis de 
memória (A, B, C,....) ou registradores (R0, R1, ...). Obviamente que a quantidade de 
registradores é muito menor que a de variáveis de memória. 
 Finalmente, devemos ter cuidado para não alterar um valor de uma variável que não 
é alterado na atribuição acima. Assim, por exemplo, não poderíamos fazer: 
 DIV C,A,R0 porque estaríamos dividindo C por A e colocando o resultado em R0. 
Mas nesse caso, estaremos perdendo o valor que já estava armazenado em R0 o que 
causará um duplo problema. Primeiro, quando formos somar com R0, esse já terá um 
outro valor e segundo, após o término da execução da atribuição acima, R0 não deveria 
ter seu valor alterado. 
 
A) Usando apenas instruções de 3 endereços ( B = A + C/A - B + R0 ): 
SUB A,B,B 
DIV C,A,R1 
ADD B,R1,R1 
ADD R1,R0,B 
B) Usando apenas instruções de 2 endereços ( B = A + C/A - B + R0 ): 
SUB A, B 
MOV A, R1 
DIV C, R1 
ADD R0, R1 
ADD R1,B 
C) Usando apenas instruções de 0 endereços ( B = A + C/A - B + R0 ): 
. PUSH B 
 PUSH A 
 PUSH C 
 DIV 
 SUB 
 PUSH A 
 ADD 
 PUSH R0 
 ADD 
 POP B 
 
 
 No início (e no final) a pilha se encontra vazia. A linha mais alta em cada 
passo, representa o endereço apontado pelo registrador SP.

Outros materiais