unsigned charとfloatの掛け算の結果はfloatにならないのは何で?