📜  门| GATE CS 1997 |第34章

📅  最后修改于: 2021-06-28 23:46:23             🧑  作者: Mango

表达式(a * b)* c op……..

其中’op’是’ + ‘,’ * ‘和’ ‘(幂)之一,可以在具有单个寄存器的CPU上求值,而无需存储(a * b)的值,如果
(A) ‘op’是’+’或’*’
(B) ‘op’是’↑’或’*’
(C) ‘op’是’↑’或’+’
(D)不存储就无法评估答案: (A)
说明:给定表达式为:-

(a*b)* c op  

op是’+’,’*’和’↑’(幂)之一。

(a * b)*具有较高的优先级,因此它将首先在CPU寄存器中求值。但是我们只给出了一个寄存器,因为我们无法将任何值存储在reg到内存中。

现在(a * b)在寄存器R中求值,并且优先顺序为(↑,*或/,+或–)。

如果我们将op设为(a * b)* c op’↑’,则表达式将变为(a * b)* c↑d,此处c↑d将首先求值。但是我们没有额外的寄存器可以评估(a * b)。
因此,我们不能放置任何优先级大于“ *”的运算符。

因此,运算符为“ +”或“-”。
这个问题的测验