平方根の逆数を見つけることに基づいて、(アセンブリで) ニュートン ラフソン法を使用して、32 ビット IEEE-754 浮動小数点平方根を実装しました。最近接丸め法を使用しています。私の平方根メソッドは、正規化された値とゼロのみを受け入れますが、非正規化された値や特別な値 (NaN、Inf など) は受け入れません。
すべての入力に対して (IEEE-754 に対して) 正しい結果が得られるように、(アセンブリのような命令を使用して) 正しい丸めを達成するにはどうすればよいのでしょうか? 基本的に、結果が正しいかどうかをテストする方法は知っていますが、正しく丸められた結果が得られるように、以下のアルゴリズムを調整したいと考えています。アルゴリズムにどの命令を追加する必要がありますか?
詳細については、浮動小数点平方根 の決定を参照してください。
ありがとうございました!