9 Replies Latest reply on Jan 16, 2014 8:45 PM by ki.leung

    multiplication with signed/unsigned

      ARM instruction manual referring Cortex-M0 says there is a single instruction possibility muls R0,R1,R0


      I can't figure out if it's signed/unsigned operation.


      I try to multiply signed char with constant , like (signed_char * 40000 and I got always wrong value.


      I tried (int32)signed_char * 40000 and this also give wrong value


      I found that regardless of the C formula (int32) or (uint32) the compiler translates it to thumb instruction mul R0,R1