PUERTA | PUERTA CS 1997 | Pregunta 34

La expresión (a*b)* c op……..

donde ‘op’ es uno de ‘ + ‘, ‘ * ‘ y ‘ ‘ (exponenciación) puede evaluarse en una CPU con un solo registro sin almacenar el valor de (a * b) si
(A) ‘op’ es ‘ +’ o ‘*’
(B) ‘op’ es ‘↑’ o ‘*’
(C) ‘op’ es ‘↑’ o ‘+’
(D) no es posible evaluar sin almacenar

Respuesta: (A)
Explicación: La expresión dada es: –

(a*b)* c op  

Aquí op es uno de los ‘+’, ‘*’ y ‘↑’ (exponenciación).

(a* b)* tiene una prioridad alta, por lo que se evaluará primero en el registro de la CPU. Pero hemos dado un solo registro ya que no podemos almacenar ningún valor del registro en la memoria.

Ahora ( a * b ) se evalúa en el registro R y el orden de precedencia es ( ↑ , * o / , + o – ).

Si ponemos op como (a*b)* c op ‘ ↑ ‘ entonces la expresión se convierte en (a*b)* c ↑ d aquí c ↑ d se evaluará primero. Pero no tenemos registro extra para evaluar (a * b).
Por lo tanto, no podemos poner ningún operador que tenga una precedencia mayor que «*».

Por lo tanto, el operador es «+» o «-«.
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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *