使用三元运算符将C转换为MIPS

在我的class上,我们正在将C翻译成MIPS。

我们被要求翻译这个片段: A = A ? B : C[0] A = A ? B : C[0]

我相信我理解三元运算符,但这里需要什么? 不应该是一个布尔值吗? 那么它会在MIPS中用1或0值表示吗?

谢谢

将三元表达式首先转换为伪代码可能会有所帮助,例如:

 if A != 0 // if A is non-zero, ie TRUE A = B else // otherwise A is zero, ie FALSE A = C[0]