シフトするならシフト幅はCHAR_BITから計算したほうがいい。