<< 幼子が始める Apache -ドメイン名をもらう- | main | 不正な入力への対応 >>
Twitter


スポンサーサイト

一定期間更新がないため広告を表示しています

posted by: スポンサードリンク | - | | - | - | - | - |

bit で足し算 memo

こんな問題が出た。 Implement the addition of two numbers only with bitwise operators (|, &, ^, <<, >>). The input is two integers a and b (use scanf("%d %d", &a, &b); for reading your input). The output is the sum of the two integers. わけわけめ、という質問が多いので具体例書いた。

3 + 5 bit で実施 1
30011
50101
and0001
and
Shifted
0010
xor0110
3 + 5 bit で実施 2
Past
and
0010
Past
xor
0110
and0010
and
Shifted
0100
xor0100
3 + 5 bit で実施 3
Past
and
0100
Past
xor
0100
and0100
and
Shifted
1000
xor0000
3 + 5 bit で実施 4
Past
and
1000
Past
xor
0000
and0000
xor1000

and が 0 となったときの xor が答えとなる

posted by: しゅんしゅん | 学び | 18:28 | comments(0) | trackbacks(0) | - | - |

スポンサーサイト

posted by: スポンサードリンク | - | 18:28 | - | - | - | - |
コメント
 









トラックバック
 
http://syun2ej.jugem.jp/trackback/3335