IEEE754 浮動小数点数を扱うとき、32 ビット変数の上位 9 ビットをゼロにする 2 つの方法を見つけました。それらのいずれかが他のものよりも優れていますか?
Java 関連の追加: 命令の効率に関する情報を提供するリストはありますか? BIPUSH は一般的に LDC よりも高速であると想定されていますが、それ以外はそれほど高速ではないことがランダムにわかりました。
// 10111111110010100011110101110001 bits
// 00000000010010100011110101110001 significand
int bits = 0b10111111110010100011110101110001;
int significand = bits & 0b11111111111111111111111;
int significand2 = bits << 9 >>> 9;
バイトコード…</p>
L4
LINENUMBER 49 L4
ILOAD 0
LDC 8388607 // = 0b11111111111111111111111
IAND
ISTORE 5
L5
LINENUMBER 50 L5
ILOAD 0
BIPUSH 9
ISHL
BIPUSH 9
IUSHR
ISTORE 6
ありがとう。:)