I know there would be many methods to do it and I'm trying to find the most efficient way.
One particular way I'm trying to avoid is subtracting the number from zero since it would involve transfering the value from the register that used to have 0 back to the register that contains pre-negated number which would be a pain.
From the limited information I can find online about Y86, it is a simplified version of x86. The x86 instruction set has a
NEG
instruction to negate a number. Y86 does not. You will probably have to subtract your value from 0.