Organização de Computadores Atualização: 05/06/2014 Lista de Exercícios 2 Prof. Daniel Caetano Solução Unidade 4 4.1) Converta os seguintes números decimais para hexadecimal: 145, 226, 1043, 3456 R: 91h, E2h, 413h, D80h 4.2) Sem converter as bases, faça as contas 100b 1111011b +1101b +10101111b 0x36 +0x5D 100b +1101b 10001b 0x36 +0x5D 0x93 R: 1111011b +10101111b 100101010b 4.3) Converta os seguintes números binários para hexadecimal: 100b 1010b 1111011b 10101111b R: 100b 1010b 1111011b 10101111b 4h Ah 7Bh AFh 4.4) Converta os seguintes números hexadecimais para binários 0xFC 0x10 0x28 R: 0xFC 0x10 0x28 11111100b 00010000b 00101000b Unidade 5 5.1) Construa a tabela verdade para a porta AND. R: A 0 0 1 1 B 0 1 0 1 AND 0 0 0 1 Organização de Computadores Atualização: 05/06/2014 5.2) Construa a tabela verdade para a porta NAND. R: A 0 0 1 1 B 0 1 0 1 AND 0 0 0 1 NAND 1 1 1 0 5.3) Construa a tabela verdade para o circuito Y = A+B*C R: A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 C 0 1 0 1 0 1 0 1 B*C 0 0 0 1 0 0 0 1 Y 0 0 0 1 1 1 1 1 5.4) Desenhe o diagrama do circuito lógico que implementa a equação da questão 5.3. R: 5.5) Em um sistema de proteção é necessário que um alarme seja acionado tanto quando um objeto invade a área da prensa quanto quando a luz da sala é acesa. Para criar esse controle, existe um sistema infravermelho que emite um sinal 1 em caso de invasão e 0 caso contrário; da mesma maneira, existe um detector de iluminação que emite um sinal 1 caso a luz esteja acesa e 0 caso contrário. Considerando que o circuito do alarme soará com um sinal 1, com qual circuito lógico devem ser interligados os sensores ao alarme? R:Porta OR (OU) 5.6) Uma lâmpada foi usada para informar se um sistema está funcionando ou não. Inicialmente pensou-se em usar uma lógica que acenderia a luz em caso de não funcionamento do sistema; porém, alguém lembrou que, se a luz queimasse e o sistema parasse de funcionar, não seria possível detectar a falha rapidamente. Sendo assim, optou-se por manter a luz acesa o tempo todo, de maneira que, se ela apagar, o operador possa verificar rapidamente o que aconteceu ao sistema. Considerando que a luz acende com sinal 1 e o sistema emite sinal 1 quando está em falha (e 0 quando funciona direito), qual o circuito lógico deve ser usado para interligar o sistema com a lâmpada? R: NOT (NÃO) Organização de Computadores Atualização: 05/06/2014 Unidade 6 6.1) O que são e para que servem os registradores de um processador? R: Os registradores são “memórias internas” do processador que servem para armazenar os dados para os cálculos bem como os seus resultados, já que a ULA não é capaz de acessar diretamente a memória principal. 6.2) O que é e para que serve a Unidade Lógica Aritmética? Uma CPU funcionaria sem uma ULA? R: A ULA realiza os cálculos aritméticos e as operações lógicas. Uma CPU teria funcionalidade muito limitada sem uma ULA, sendo praticamente inútil. 6.3) Considerando o contexto da ULA, qual é o papel da Unidade de Controle? R: Nesse contexto, a Unidade de Controle tem o papel de trazer/armazenar os dados da/na memória e coordenar a sequência de cálculos simples para produzir resultados complexos. 6.4) Para que serve o registrador MAR? R: O registrador MAR serve para que a CPU obtenha o valor atualmente presente no barramento de controle. Unidade 7 7.1) O que é o “Instruction Set” de um processador? R: É o “conjunto de instruções” dele, isto é, quais são os comandos e tarefas que o processador sabe executar. Todos os programas devem ser escritos a partir de uma composição dessas instruções. 7.2) Uma instrução do tipo ADD A,(endereço) poderia ser executada diretamente pela ULA? Se sim, como isso seria feito? Se não, por quê? R: Não, pois a ULA não é capaz de acessar a memória principal diretamente. 7.3) Chama-se endereçamento indireto quando o endereço do valor a ser lido é indicado por uma variável. Como ele funciona? Para que existem tantos tipos de endereçamento? R: O endereçamento indireto é aquele em que a UC lê o endereço do dado a partir de um dos registradores e, com esse endereço, recupera o dado da memória, colocando-o em um registrador para que a ULA possa utilizá-lo. Os diversos tipos de endereçamento servem para dar maior flexibilidade ao programador. Organização de Computadores Atualização: 05/06/2014 Unidade 8 8.1) Explique o ciclo de instrução. R: Primeiramente a UC busca pela instrução, depois ela decodifica a instrução. Se for necessário, busca os dados/parâmetros necessários e os armazena em registradores. Posteriormente a UC comanda a ULA para que execute os cálculos necessários e então armazena na memória o(s) dado(s) do(s) registrador(es) resultante(s). Finalmente, a UC verifica se ocorreu alguma interrupção durante a execução da instrução e, caso ela ocorra, a execução do processo atual é desviada para a execução da rotina de interrupção, que verifica qual periférico solicitou a atenção da CPU. 8.2) O que são os registradores especiais? Para que armazena e para que serve o registrador de Flags? R: Os registradores especiais são aqueles com finalidades específicas, isto é, não servem apenas para armazenar valores do programa do usuário, mas também para controlar o funcionamento da CPU. O registrador de flags armazena informações sobre o resultado da última operação executada pela ULA. Essas informações geralmente são usadas pela CPU para tomar decisões com base no resultado das operações. 8.3) O que é “pipeline”? Para que serve? Há alguma consequência ruim disso? R: “Pipeline” é a implementação da ideia de “linha de produção” nos processadores: cada parte do processador interpreta uma parte da instrução, sendo necessária a passagem da instrução pelas várias partes do processador para que ela seja executada completamente. O objetivo é aproveitar melhor todas as áreas do processador, que estarão funcionando ao mesmo tempo, e acelerar o processamento. A consequência ruim mais óbvia é que, como todo o circuito do processador está ativo ao mesmo tempo, ele irá esquentar mais. Unidade 9 9.1) Qual a diferença da memória RAM para um DVD? R: A memória RAM é a memória principal do computador (memória interna), isto é, é a memória onde o computador executa os programas. É uma memória do tipo volátil e de acesso para leitura e escrita. O DVD é uma memória secundária, de armazenamento externo. O computador não consegue executar programas no DVD (eles precisam ser transferidos para a RAM para isso) e é uma memória do tipo não-volátil, apenas para leitura. 9.2) Qual a diferença de operação de uma SRAM pra uma DRAM? R: A SRAM é um tipo de memória que basta estar alimentada para que os dados armazenados sejam mantidos. A memória do tipo DRAM depende que os dados sejam “acessados” (refresh) de tempos em tempos para que a informação não se perca. Como esse “refresh” ocupa tempo de acesso da memória, as SRAMs costumam ter tempo de resposta mais baixo que as DRAMs. Organização de Computadores Atualização: 05/06/2014 9.3) Uma memória de 16 bits possui 2048 células. Qual a capacidade máxima dessa memória? R: 2 bytes * 2048 = 4096 bytes... ou 4KB. 9.4) Pesquise sobre memória CACHE e responda qual a principal função da memória CACHE e qual deve ser sua velocidade de trabalho, em função da CPU e memória principal? R: A principal função da memória CACHE é evitar que a CPU tenha de esperar muito tempo por dados vindos da memória principal, já que a memória principal é, em geral, muito mais lenta que a CPU. O CACHE consegue isso tendo uma velocidade intermediária entre a da CPU e a da memória; além disso, o CACHE tenta “prever” quais dados a CPU vai precisar e os busca com antecedência na memória. 9.5) O que são níveis L1, L2 e L3 de cache e qual a finalidade de se ter tantos níveis? R: São CACHEs de velocidades diferentes (L1 é o mais rápido e o L3 o mais lento) que são usados em cascata entre a CPU e a Memória Principal. O objetivo é aumentar a memória cache limitando os custos, já que as memórias para L1 costumam ser muito caras, por serem muito rápidas. 9.6) Quais são as políticas de escrita na memória em sistemas com CACHE? R: Write Through (no cache e na RAM ao mesmo tempo), Write Back (apenas no cache e, quando o dado for ser descartado, ele é transferido para a memória) e Write Once (apenas na memória). Unidade 10 10.1) Qual a principal função de um dispositivo de entrada? E de um de saída? R: Converter dados das mais diversas origens (áudio, imagens, pressão em botões) para sinais elétricos que, finalmente, podem ser interpretados como números 0 e 1 para o computador. Assim, a função primordial é permitir que dados externos possam ser armazenados e processados em um computador. 10.2) Descreva o funcionamento do polling, IRQ e DMA. R: No polling a CPU precisa, frequentemente, consultar todos os dispositivos para verificar se há necessidade de intervir (transferir dados de/para dispositivo). No IRQ o próprio dispositivo solicita a participação da CPU quando necessário, pelo sinal de IRQ. Já o DMA é um recurso de transferência de dados entre dispositivos ou entre dispositivo e memória que, uma vez configurado pela CPU, faz a transferência sem ocupar a CPU.