Since everyone seemed to miss the point I was trying to make, I'll be more explicit.
My point was that it's all very well to say "you should know X" and you can even be totally right about that, but it doesn't mean behaviour based on X is necessarily intuitive or desirable. Walter specifically said that "I don't feel that 2s-complement arithmetic is in any way an advanced programming topic". I agree. I was trying to point out that even very experienced people who would surely know what's going on in the hardware can get it wrong. Still, my fault for posting an example.