Organização e Arquitetura de Computadores Prof.: André Luis Meneses Silva Lista de Exercícios 2 1. Converta os seguintes números para binário, utilizando as notações sinal magnitude, complemento de 1 e complemento de 2. a) 4096dec b) -2047dec c) 4189oct d) 0x15A 2. Que número decimal representam os seguintes números binários, caso eles estejam na notação sinal-magnitude, complemento de 1 ou complemento de 2. a) 1111 1111 1111 1111 1111 1111 1110 1111bin b) 0111 1111 1111 1111 1111 1111 1110 1111bin c) 1010 1010 1010 1010 1010 1010 1010 1010bin d) 0000 1111 0000 1111 0000 1111 0000 1111bin 3. Dada a seguinte seqüência de bits 1010 1101 0001 0000 0000 0000 0000 0010, o que ele representa, supondo que seja: a. Um inteiro em complemento de dois? b. Um inteiro sem sinal? c. Um número de ponto flutuante com precisão simples? 4. Transforme os seguintes números binários em números de ponto flutuante com precisão simples: a) 1111 1111 1111 1111 1111 1111 1110 1111bin b) 0111 1111 1111 1111 1111 1111 1110 1111bin c) 1010 1010 1010 1010 1010 1010 1010 1010bin d) 0000 1111 0000 1111 0000 1111 0000 1111bin 5. Queremos comparar o desempenho de dois computadores diferentes M1 e M2. As seguintes medições foram feitas nesses computadores: Programa Tempo em M1 Tempo em M2 1 2,0 segundos 1,5 segundo 2 5,0 segundos 10,0 segundos Que computador é mais rápido para cada programa, e o quanto é mais rápido? 6. Suponha que você deseje executar um programa P com 7,5 x 109 instruções em uma máquina de 5ghz com um CPI de 0,8. a. Qual é o tempo de CPU esperado? b. Quando você executa P, ele leva 3 segundos de tempo de relógio para ser concluído. Qual é a porcentagem do tempo de CPU que P recebeu? 7. Considere o programa P, executando em uma máquina de 1Ghz em 10 segundos. Uma otimização é feita em P, substituindo todas as instâncias de multiplicação de um valor por 4 (mult X, X, 4) por duas instruções que definem para x + x duas vezes (add X, X; add X, X). Chame esse novo programa otimizado P’. O CPI de uma instrução de multplicação é 4 e o CPI de uma soma é 1. Após recompilar, o programa agora roda em 9 segundos na máquina M. Quantas multiplicações foram substituídas pelo novo compilador? 8. Sua empresa poderia tornar um programa Java mais rápido em seu novo computador acrescentando suporte de hardware para a coleta de lixo. A coleta de lixo atualmente é responsável por 20% dos ciclos do programa. Você tem duas mudanças possíveis para fazer na máquina. A primeira seria manipular automaticamente a coleta de lixo no hardware. Isso causa um aumento no tempo de ciclo por um fator de 1,2. A segunda seria fornecer novas instruções de hardware para serem acrescentadas ao ISA que seriam usadas durante a coleta de lixo. Isso reduziria pela metade o número de instruções necessárias para as coletas de lixo, mas aumentaria o tempo de ciclo em 1,1. Qual dessas duas opções, se houver alguma, você escolheria? Porque? 9. Considere que as instruções de multiplicação gastem 12 ciclos e sejam responsáveis por 15% das instruções em um programa típico. Os outros 85% das instruções exigem uma média de 4 ciclos por instrução. Que porcentagem do tempo a CPU gasta realizando multiplicação. 10. Sua equipe de engenharia de hardware indicou que seria possível reduzir o número de ciclos necessários para multiplicação do exercício 9, mas isso exigiria um aumento de 20% no tempo de ciclo. Nada mais será afetado pela mudança. Eles devem proceder a modificação?