Escolar Documentos
Profissional Documentos
Cultura Documentos
2 - Assuma que um programa tem um profile de execuo onde 85% das instrues so simples (tais
como AND, XOR, ADD e BRANCH) e os 15% restantes so instrues complexas (tais como
MUL e DIV). Adicionalmente, considere que as instrues simples precisam de 2 ciclos de mquina
e as complexas precisam de 12 ciclos em uma mquina CISC (cada ciclo = 10 ns). Em uma
mquina RISC, as instrues simples sero executadas em 1 ciclo, enquanto que as instrues
complexas devero ser simuladas por software necessitando, em mdia, 20 ciclos por instruo.
Devido a sua simplicidade, o tempo de ciclo em uma mquina RISC de 8 ns. Considere tambm
que o programa precisou de 100.000.000 instrues para ser completado. Qual o tempo gasto em
segundos na execuo desse programa, respectivamente, nas mquinas CISC e RISC?
A) 1 e 0,8
B) 3,5 e 3,08
C) 10 e 12,8
D) 8,5 e 1,5
E) 14 e 16,8
4 Se um buffer de circular de registradores for usado para manipular variveis locais para
procedimentos aninhados, descreva duas abordagens para lidar com as variveis globais.
Suponha que Q uma matriz de registros de 32 cada e o campo VAL(I) est nos primeiros 4 bytes
de cada registro. Usando cdigo x86, podemos compilar este fragmento de programa da seguinte
maneira:
Este programa faz uso da instruo IMUL, que multiplica o segundo operando
pelo valor imediato no terceiro operando e coloca o resultado no primeiro operando. Um defensor
do RISC gostaria de demonstrar que um compilador inteligente pode eliminar instrues
desnecessariamente complexas como IMUL. Fornea a demonstrao reescrevendo o programa x86
acima sem usar a instruo IMUL.