Suppose that I want invert a number, i.e. `5`

becomes `-5`

or `-10`

becomes `10`

. Mathematically, I can either multiply it by -1 or subtract it from 0. But what is quickest/most efficient on an 8-bit AVR? Or is the compiler smart enough to optimize either style to the fewest instructions?

```
// Style #1
int one (const int number)
{
return number * -1;
}
// Style #2
int two (const int number)
{
return 0 - number;
}
```

Is there any difference if I work on a `float`

instead of an `int`

?