0

12 ビットの符号なし数値で加算/減算を行う必要があります。

符号なし 12 ビット整数の場合:

x = 0111 1000 0101, x = 1925
y = 1011 1100 0100, y = 3012

z = x+y = ?
z = x-y = ?

x + y に対して 0011 0100 1001 を取得しました

しかし、x - y はどうすればよいでしょうか。

答えは負で、unsigned int としては存在しません。

4

1 に答える 1

0

2 の補数形式に変換してから追加する必要があります。

x - y = x + y'

y'の 2 の補数はどこにありますかy

2 の補数を使った否定の簡単な方法は、右から左に数字を書くことです。基本的に番号をコピーします。1 に遭遇するまですべてゼロを書き、1 も書きます。次に、残りのすべての数字を反転します。

例:否定0110 1000:

0110 1000
---------
      000    copy zeros until first 1
     1000    copy the 1
1001 1000    flip all remaining bits
于 2013-09-27T02:06:40.633 に答える