Baixe o app para aproveitar ainda mais
Prévia do material em texto
SISTEMAS DE COMPUTAÇÃO TÓPICOS AVANÇADOS EM ARQUITETURA DE COMPUTADORES RELAÇÃO DE EXERCÍCIOS No 2 – 2020.1 GABARITO 1. Apesar de todo o desenvolvimento, a construção de computadores e processadores continua, basicamente, seguindo a arquitetura clássica de von Neumann. As exceções a essa regra encontram-se em computadores de propósitos específicos e nos desenvolvidos em centros de pesquisa. Assinale a opção em que estão corretamente apresentadas características da operação básica de um processador clássico. A -Instruções e dados estão em memórias físicas distintas; um programa é constituído de um conjunto de instruções de máquina; uma instrução é lida da memória quando o seu operando- destino necessita ser recalculado; essa instrução é executada e o resultado é escrito no operando de destino, passando-se, então, para o próximo operando a ser recalculado. Incorreta. Instruções e dados compartilham mesma memória e não memórias distintas. Além disso, não existe operando recebendo valores, etc B -Instruções e dados estão em uma memória física única; um programa é constituído de um conjunto de instruções de máquina; uma instrução é lida da memória quando todos os seus operandos-fonte estiverem prontos e disponíveis; essa instrução é executada e o resultado é escrito no operando de destino, passando-se, então, para a instrução seguinte que tiver todos seus operandos disponíveis. Incorreta. Uma e qualquer instrução é lida da memória assim que a instrução anterior é terminada e não quando operandos-fonte (que não existem) estejam prontos e etc C -Instruções e dados estão em uma memória física única; um programa é constituído de uma seqüência de instruções de máquina; uma instrução é lida da memória de acordo com a ordem dessa seqüência e, quando é executada, passa-se, então, para a próxima instrução na seqüência. Correta. Esta é a definição certa da arquitetura dos processadores, conforme definida por John von Newmann D -Instruções e dados estão em memórias físicas distintas; um programa é constituído de um conjunto de instruções de máquina; uma instrução é lida da memória quando todos os seus operandos-fonte estiverem prontos e disponíveis; essa instrução é executada e o resultado é escrito no operando de destino, passando-se, então, para a instrução seguinte que estiver com todos os seus operandos disponíveis. Incorreta. Mesmo caso de memórias distintas, já mencionado anteriormente E - Instruções e dados estão em memórias físicas distintas; um programa é constituído de uma seqüência de instruções de máquina; uma instrução é lida da memória de acordo com a ordem dessa seqüência e, quando é executada, passa-se, então, para a próxima instrução na seqüência. Incorreto. Idem das respostas anteriores sobre memórias distintas. Opção correta: C 2. Um elemento imprescindível em um computador é o sistema de memória, componente que apresenta grande variedade de tipos, tecnologias e organizações. Com relação a esse assunto, julgue os itens seguintes. I -Para endereçar um máximo de 2E palavras distintas, uma memória semicondutora necessita de, no mínimo, E bits de endereço. Correto II Em memórias secundárias constituídas por discos magnéticos, as palavras estão organizadas em blocos, e cada bloco possui um endereço único, com base na sua localização física no disco. Correto III A tecnologia de memória dinâmica (DRAM) indica que o conteúdo dessa memória pode ser alterado (lido e escrito), ao contrário da tecnologia de memória estática (SRAM), cujo conteúdo pode apenas ser lido, mas não pode ser alterado. Incorreto. Tanto memórias DRAM quanto SRAM podem ser lidas e escritas. Assinale a opção correta. A - Apenas um item está certo. B -Apenas os itens I e II estão certos. C - Apenas os itens I e III estão certos. D - Apenas os itens II e III estão certos. E - Todos os itens estão certos. Resp: Opção correta é B 3. Os Sistemas de Computação são popularmente conhecidos como computadores e desde sua criação inicial na década de 1940 vem se desenvolvendo de forma bastante acelerada. O referido desenvolvimento tem ocorrido em diversos aspectos, tais como: velocidade de processamento, inclusão de memórias internas chamadas de cache e na quantidade de unidades de cálculo e este conjunto de aperfeiçoamentos tem sido possível PORQUE tem aumentado a quantidade de instruções de máquina criadas nos novos processadores, devido à redução de custo do material usado na fabricação dos transistores. Assinale a opção correta: A – a primeira afirmação é verdadeira , sendo justificada pela segunda. B – as duas afirmações são falsas. C – a primeira afirmação é falsa mas a segunda é verdadeira. D – a primeira afirmação é verdadeira mas a segunda é falsa. Resp: Opção correta é D 4. Com relação às diferentes tecnologias de armazenamento de dados, julgue os itens a seguir. I - Quando a tensão de alimentação de uma memória ROM é desligada, os dados dessa memória são apagados. Por isso, esse tipo de memória é denominado volátil. Incorreto. As ROM são não voláteis II - O tempo de acesso à memória RAM é maior que o tempo de acesso a um registrador da unidade central de processamento (UCP). Correto. Os registradores sempre são mais rápidos III - O tempo de acesso à memória cache da UCP é menor que o tempo de acesso a um disco magnético. Correto. Discos são muito mais lentos IV - O tempo de acesso à memória cache da UCP é maior que o tempo de acesso à memória RAM. Incorreto. A cache é mais rápida (menor tempo de acesso) que as RAM Estão certos apenas os itens A - I e II. B - I e III. C - II e III. D - II e IV. E - III e IV. Resp: Opção correta é C 5. Considere três números inteiros x, y e z, onde a representação binária de x é 01000110 e a representação decimal de y é 7. Encontre a representação binária de z, sabendo-se que: z = x/y. (A) 00001010 (B) 00001011 (C) 00001101 (D) 00001110 (E) 00001111 Resp: Pode-se resolver de diversas modos conforme se deseja conversão para base X ou Y, etc. Optou-se por usar Base 2 e assim converte-se y=710 para valor em base 2 = 1112. Divide-se então, 10001102 por 1112 usando-se mesmas regras da divisão decimal, porém sabendo-se da formação binária. Assim, primeiro divide-se 1000 por 111 (10002 =810 é o menor valor divisível por 1112 =710 . Obtem-se quociente 1 e a diferença entre 1000 e 111 é 1. Como não é possível dividir 1 por 111, coloca-se 0 no quociente (ao lado direito do 1) e acrescenta-se 1 (5º alagarismo da esquerda para direita) ao resto 1. . Ainda assim, não é possível dividir 11 por 111 e baixa-se o outro 1 do dividendo. Agora 111 por 111 resulta em 1 no quociente e resto 0 (quociente fica 101). Resta o último algarismo do dividendo (que é 0) para dividir. Como não é possível dividir 0 por 111, coloca-se 0 no quociente e a operação termina. Resultado 10102 Opção correta é A Também seria possível converter o dividendo 10001102 para decimal. Resultado é: 7010. A divisão de 70 por 7 dará 10 e este valor é igual a 1010 em binário. 6. Além das memórias RAM (Random Access Memory), os computadores possuem memórias ROM (Read Only Memory) em suas arquiteturas. Com relação a esses tipos de memória, tem- se que: A) EPROM é uma memória ROM programável mediante o uso de ultravioleta em uma pequena janela do chip, podendo ser reprogramada. Correto B) EEPROM é uma memória RAM programável eletricamente, podendo ser reprogramada por meio da BIOS do computador. Incorreto. Ela é apagável eletricamente, sendo reprogramada por digitação do operador e não pela BIOS. C) BIOS é uma parte da memória RAM programável mediante o uso de Raios infravermelhos ou laser. Incorreto. BIOS é um conjunto de programas para auxiliar operações de E/S pelo SO. D) FLASH BIOS é uma memória ROM não programávelinclusa na BIOS por meio de um grampo elétrico. Incorreto. Ela é reprogramvável e não é inclusa na BIOS, que é programa não chip. E) MAIN BOARD é uma memória RAM não programável, mas com muita capacidade de processamento. Incorreto. Main board é a placa mãe. Resp: A opção correta é A 7 - As memórias cache são usadas para diminuir o tempo de acesso à memória principal, mantendo cópias de seus dados. Uma função de mapeamento é usada para determinar em que parte da memória cache um dado da memória principal será mapeado. Em certos casos, é necessário usar um algoritmo de substituição para determinar qual parte da cache será substituída. Suponha uma arquitetura hipotética com as seguintes características: • A memória principal possui 4 Gbytes, em que cada byte é diretamente endereçável com um endereço 32 bits. • A memória cache possui 512 Kbytes, organizados em 128 K linhas de 4 bytes. • Os dados são transferidos entre as duas memórias em blocos de 4 bytes. Considerando os mapeamentos direto, totalmente associativo e associativo por conjuntos (em 4 vias), calcule o formato de endereço básico para cada uma dessas alternativas de mapeamento. Cite uma vantagem e uma desvantagem de cada método. Resp: Se a MP tem 4Gbytes, cada endereço tem 32 bits, como mencionado no enunciado. Se os blocos/linhas tem 4 bytes, então o campo byte dos endereços tem 2 bits de largura (22 = 4). Se a cache possui 128K linhas, então o endereço de linha (método direto) tem 17 bits de largura, pois 217 = 128K Se a MP tem 4Gbytes e cada bloco tem 4 bytes, então há 4G / 4 = 1G blocos e o endereço de cada bloco (método associativo) tem 30 bits de largura (230 = 1G) Se o método associativo por conjunto opera com conjuntos em 4 vias, então há 32K conjuntos, pois 128K linhas / 4 = 32K conjuntos. O campo conjunto do endereço (associativo por conjunto) tem 15 bits de largura No método direto o endereço é 32 bits TAG LINHA BYTE 13 bits 17 bits 2 bits No método associativo o endereço é 32 bits BLOCO BYTE 30 bits 2 bits No método direto o endereço é 32 bits TAG CONJUNTO BYTE 15 bits 15 bits 2 bits O método de mapeamento direto é o mais simples e barato de implementar, mas é inflexível, pois as conexões são feitas na fabricação e não mudam independente do valor da MP. Mapeamento associativo é o mais eficaz, pois verifica rapidamente se o bloco desejado (que contem o dado endereçado pelo processador) está na cache, porém se torna inviável pelo custo se a cache for grande, devido a necessidade de muitos registradores de comparação. Mapeamento associativo por conjunto tem as vantagens e desvantagens de ambos os métodos anteriores, mas com equilíbrio é o mais adequado. 8. Assinale a opção correta: A) Os registradores são softwares com a função principal de registrar dados permanentes. B) A sincronização de todas as funções do processador é realizada através de um sinal de clock (relógio) C) A sincronização de todas as funções do processador e dos periféricos é realizada através de um sinal de syncronize. D) A sincronização de todas as funções do processador é realizada através de comandos do usuário. E) Os espaçadores são dispositivos com a função principal de armazenar comandos temporariamente. Resp: A opção correta é B 9. Sobre as memórias cache é incorreto afirmar que: (A) Sua operação é baseada no chamado princípio da localidade. Correto. (B) Quando a CPU precisa de algo da memória principal, ela examina primeiro a cache. Correto (C) Chama-se cache hit quando uma palavra é encontrada na cache, e cache miss, caso contrário. Correto (D) Na hierarquia de memórias, as memórias cache são as que possuem maior velocidade de acesso. Incorreto. A maior velocidade é dos registradores (E) Quanto maior a cache, melhor é o desempenho do processador e maior é seu preço. correto. Resp: Opção correta é a D 10. Os registradores de controle de estado são usados pela unidade de controle para controlar a operação do processador e por programas privilegiados do Sistema Operacional para controlar a execução de programas. Dentre os registradores desta categoria, que são essenciais para a execução das instruções, está o que contém o endereço de uma instrução a ser lida. Este registrador é conhecido como: a) Registrador de Instrução (IR). b) Registrador de Endereço de Memória (MAR) ou REM – Reg. de Endereços de Memória. c) Registrador de Buffer de Memória (MBR) ou RDM – Reg. de Dados da Memória d) Contador de Programas (PC) ou CI – Contador de Instrução. e) Registrador de Controle Principal (MCR). Resp: Opção correta é D 11. A memória é uma área de armazenamento de acesso rápido usada para armazenar instruções e dados. Há vários tipos específicos de memória em um computador como os descritos abaixo: I. um tipo ultra-rápido de memória que serve para armazenar os dados mais frequentemente usados pelo processador, conectada diretamente à CPU. cache II. usada para armazenar temporariamente as informações que o computador está manipulando durante o processamento. RAM III. tipo de memória não volátil, com maior capacidade de armazenamento e de acesso mais lento; pode ser removível ou não. Secundária (HDs ou CDs, etc) IV. tipo de memória de armazenamento permanente usado pelo computador para dados importantes que não mudam. ROM ou PROM V. espaço no disco rígido usado para armazenar temporariamente dados da memória principal, chaveando-os quando necessário. Virtual As definições de memória I, II, III, IV e V são, correta e respectivamente, associadas aos tipos: a) I – RAM; II – HD; III- ROM IV – EPROM; V - swap b) I- registrador; II – cache; III – virtual; IV – RAM; V - BIOS c) I – cache; II BIOS; III – ROM; IV – secundária; V - registrador d) I – cache; II RAM; III – secundária; IV – ROM; V - virtual e) I – RAM; II – ROM; III – dinâmica; IV – estática; V - virtual Resp: Opção correta é a D 12. . Considere um sistema de computação que possui uma memória principal, organizada em células de 1 byte cada e apenas uma memória cache externa, organizada com mapeamento direto, sendo cada linha de 32 bytes. Em um dado instante, o processador inicia uma acesso colocando no BE comum o endereço hexadecimal: 5D7A9F2. Sabendo-se que, neste sistema cada linha da cache tem atribuido 512 blocos da MP, pergunta-se: a) qual deverá ser a largura do BE do sistema? b) Qual foi a linha acessada pelo processador? Resp: Cache—1 linha = 32Bytes (mesma quantidade de cada bloco da MP)...endereço de bloco/linha = 5 bits (pois 32 = 25). Este é o valor do campo BYTE. formato de endereço de mapeamento direto: TAG – LINHA - BYTE Se endereço de acesso à MP é: 5D7A9F216 isso resulta um total de 28 bits, pois há 7 algarismos em base 16 e cada algarismo de base 16 tem um valor binário equivalente com 4 bits. Então: 7 x 4 = 28 bits a) o BE tem largura de 28 bits No formato de endereço de mapeamento direto, o campo linha fica entre os campos TAG e byte. O campo BYTE = 5 bits (explicado acima) O campo TAG tem 9 bits, pois ele indica emdereço de um dos 512 blocos atribuídos a cada linha e 512 = 29 Se o endereço total é de 28 bits, então o campo linha tem: 28 – 9 – 5 = 14 bits Campo de endereço no mapeamento direto: (converte-se o endereço de base 16 para base 2: 5D7A8F216 = 0101 1101 0 111 1010 1000 111 1 00102 TAG LINHA BYTE b) o campo linha será: 11110101000111
Compartilhar