>>807
負数を 2 の補数ではなく 1 の補数で表現する処理系がある事をお忘れなく。

ISO/IEC 9899:1999
5.2.4.2.1 Sizes of integer types <limits.h>
1 ...
— minimum value for an object of type signed char
 SCHAR_MIN -127 // -(27 - 1)
— maximum value for an object of type signed char
 SCHAR_MAX +127 // 27 - 1

>>808
$18 がそんなに高い?