From: toyofuku@... Date: 1999-12-02T18:48:22+09:00 Subject: [ruby-dev:8498] Re: BIGDN 豊福です。HP-UX 10 で試してみました。 やはり RSIFT(x,y) は ((x)>>(y)) になっていたので おかしいと思い調べたところ main() { long x = -2; printf("%x\n", x>>16); printf("%x\n", x>>(sizeof(short)*8)); printf("%x\n", x>>((int)(sizeof(short))*8)); } の結果が ffffffff ffff ffffffff となりました。 sizeof(short) が unsigned なの(?)で x も unsigned に変換されたのかも。 --- 豊福 toyofuku@juice.or.jp