如果我们有这样的问题,如何编写 3 地址模式指令 z=y*u*(a+e)+w*a+e

How to write the 3- address mode instruction if we have question like this z=y*u*(a+e)+w*a+e

如果我遵循 BODMAS 规则,那么

add x,a,e
mul v,x,u
mul g,v,y
mul o,w,a
add q,o,g
add z,q,e

这样对吗?如果不是那我该怎么办

说实话,这个规定我是第一次听说,但还是想分享一下我的想法:)

B先拍

O订单 n/a

DivisionM乘法 (从左到右)

AdditionSsubtraction (从左到右)

我认为你唯一的 "problem" 是你不遵守 从左到右 规则。一般来说,这应该适用于一切。

所以应该是:

x=a+b  |   add x a b
z=y*u  |   mul z y u
v=z*x  |   mul v z x
o=w*a  |   mul o w a
q=v+o  |   add q v o
z=q+b  |   add z q b