これは 8 ビット アーキテクチャで、ワード サイズは 16 ビットです。ここで、48 ビット整数変数を使用する必要があります。私の理解では、libm は 8、16、32、64 ビット演算 (加算、乗算、符号付きおよび符号なし) を実装しています。
したがって、計算を行うには、値を 64 ビットの符号付きまたは符号なし整数で格納する必要があります。正しい?
もしそうなら、一般的なルーチンが使用されるのを防ぐために何がありますか? たとえば、追加の場合:
- 両方の変数の LSB から開始
- それらを追加します
- より多くのバイトが利用可能な場合は続行し、そうでない場合は準備完了
- 両方の変数を 1 バイト右にシフトします
- 後藤 1)