-0xd] ^ PTR_DAT_08001b24[pos]) - (pos * pos + 3 & 7)) ◦ 配列のインデックスをマジックナンバー0x4EC4EC4Fを使って計算している ◦ これは idx mod 13 = idx + idx / 0xd * -0xdをコンパイラが最適化したもの • ⼀般に除算命令は遅いため、32bit整数の除算 x / dは x * magic >> ( 32 + post_shift )のように乗算と右シフトで最適化される ◦ magicとpost_shiftはすべてのxで誤差が⽣じないように計算される ◦ gccでの実装はgcc/expmed.cのchoose_multiplier() ◦ 理論的基盤はGranlund-Montgomery, Division by Invariant Integers using Multiplication(1994)による