まず、1.1011•2 2をスケーリングすると、0.1101•2 3ではなく、0.11011•2 3になります。ビットを早期に破棄するのはエラーです。
しかし、このままでは 01101 + -10100 を計算したい。大きい方の数値を小さい方の数値の上に置きます。大きい方の数値は負であるため、結果は負でなければならないことに注意してください。
1 0 1 0 0
0 1 1 0 1
_________
今、小学校の道を引きます。右側では、0 から 1 を引きます。これには左の桁から借用する必要があるため、10 (0 と借用した値) から 1 を引き、借用をマークします。
1 0 1 0'0
0 1 1 0 1
_________
1
ここで、-1 から 0 を引きます (0 から借用を差し引いた値)。これには再度借用が必要になるため、1 から 0 を引きます (0 から 1 の借用を引いて、新しい借用の 10 を足します)。
1 0 1'0'0
0 1 1 0 1
_________
1 1
次に、0 から 1 (1 から借りた 1 を引いたもの)。もう一度借りるので、10 から 1 を引きます。
1 0'1'0'0
0 1 1 0 1
_________
1 1 1
次に、-1 から 1 (0 から借りた 1 を引く)。再び借りるので、1 から 1 を引きます (0 から借りたものを 1 と新しく借りた 10 を足す)。
1'0'1'0'0
0 1 1 0 1
_________
0 1 1 1
次に、0 から 0 (1 から借りた 1 を引いたもの)。最後に、新しい借用はなく、次のようになります。
1'0'1'0'0
0 1 1 0 1
_________
0 0 1 1 1
これは負であることを覚えているので、結果は -00111 です。