floorで32bit整数にならない範囲でx86の仕様と異なるのを忘れていた。呼ばれた時はめんどいのでerrorを吐けるようにしておいた