0xFFFFFFF1 in bin is 11111111111111111111111111110001.
Since the high bit is 1, it's a -ve number. So to find out the value, use two's complement: flip bits and add one.
Flip bits: 11111111111111111111111111110001
You get: 00000000000000000000000000001110, add 1 you get
00000000000000000000000000001111, which is 15.
But since the number is -ve, it's -15.
HTH,
Sashi
P.S. Check out the
thread under the title "~ operator" earlier today.
[ December 15, 2005: Message edited by: Sasikanth Malladi ]