Una CPU no canalizada tiene 12 registros de propósito general (R0, R1, R2, ….. R12). Se admiten las siguientes operaciones:
ADD Ra, Rb, Rr Add Ra to Rb and store the result in Rr MUL Ra, Rb, Rr Multiply Ra to Rb and store the result in Rr
Las operaciones MUL toman dos ciclos de reloj, ADD toma un ciclo de reloj.
Calcule el número mínimo de ciclos de reloj necesarios para calcular el valor de la expresión XY + XYZ + YZ. Las variables X, Y, Z están inicialmente disponibles en los registros R0, R1 y R2 y el contenido de estos registros no debe modificarse.
(A) 5
(B) 6
(C) 7
(D) 8
Respuesta: (B)
Explicación: La expresión dada es,
= XY + XYZ + YZ = Y*(X + Z + X*Z)
Entonces, estas son instrucciones.
ADD R0, R1, R3 MUL R0, R1, R4 ADD R3, R4, R3 MUL R2, R3, R3
Dado que es un procesador no segmentado, tardará 2*2 + 2*1 = 6 ciclos.
La opción (B) es correcta.
Cuestionario de esta pregunta
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA