Rather `MOVC(NEQUAL(a, 0), b, c)`
BTW, I'm assuming that `NEQUAL` is always the opposite of `EQUAL`, an in particular that `NEQUAL(0.0, -0.0)` evaluates to false and `NEQUAL(NAN, NAN)` evaluates to true. This seems to be the case for IEEE 754 from a brief check, but I might have missed something.