bearophile wrote:
Walter:
Look at the asm dump of a function. It's full of add's - not only ADD
instructions, but addressing mode multiplies and add's. Subtraction is
often expressed in terms of addition, relying on twos-complement
wraparound.
This answer is a bit relevant only if the programmer is using inline asm,
while the discussion was about unsigned differences in D code, that are
uncommon in my D code. Sometimes I even assign lengths to signed-word
variables, to avoid some signed/unsigned comparison bugs.
A lot of the addition is also carried out at link time, and even by the loader.
Subtraction is done by relying on overflow.