Printf("%x\n", -2**32) prints ..f00ffffffff00000000

-2**32 e$B$re(B %x e$B$G%U%)!<%^%C%H$9$k$He(B …f00ffffffff00000000
e$B$K$J$j$^$9!#e(B

% ./ruby -ve ‘printf("%x\n", -2**32)’
ruby 1.9.0 (2007-11-23 patchlevel 0) [i686-linux]
…f00ffffffff00000000

1.8 e$B$G$Oe(B …f00000000 e$B$H$J$j$^$9!#e(B

% ruby-1.8 -ve ‘printf("%x\n", -2**32)’
ruby 1.8.6 (2007-11-13 patchlevel 5000) [i686-linux]
…f00000000

232 e$B$Ne(B 2 e$B$NJd?t$r5a$a$k$H!"e(B232 e$B$Oe(B
…000000100000000 e$B$G!"$3$l$r%S%C%HH?E>$9$k$He(B
…ffffffeffffffff e$B$G!"$3$l$Ke(B 1 e$B$r2C$($k$He(B
…fffffff00000000 e$B$G$9$+$i!"e(B
1.8 e$B$N7k2L$,@5$7$$$h$&$K;W$$$^$9!#e(B