質問するログイン新規登録

質問編集履歴

5

情報の付け足し

2021/04/25 13:50

投稿

rihitoban
rihitoban

スコア25

title CHANGED
File without changes
body CHANGED
@@ -1,3 +1,3 @@
1
- ビット演算子で ~x = -(x+1)になる理由がわかりません。2の補数や1の補数についてはなんとなく理解したのですが、単純にビットを反転させたら、値が-になる理由がわかりません。例えば ~10 が -11になる理由がわからないです。10 = 0b1010 のビットを反転させたら、0b0101 = 5 になると思うのですが。
1
+ ビット演算子で ~x = -(x+1)になる理由がわかりません。2の補数や1の補数についてはなんとなく理解したのですが、単純にビットを反転させたら、値が-になる理由がわかりません。例えば ~10 が -11になる理由がわからないです。10 == 0b1010 のビットを反転させたら、0b0101 == 5 になると思うのですが。
2
2
 
3
- これは -x をxの2の補数を表現していると捉え、 -(x+1)=-x-1 なので、(xの2の補数)-1=(xの1の補数)なので-(x+1)はxのビットを反転させたものと同値とられるのでしょうか。
3
+ -(x+1)==-x-1 なので -x-1 はxのビットを反転させたもの(=1の補数)と同値であるなら 1の補数==2の補数-1 なので -x==2の補数 であるえると思うのですが、-x がxの2の補数と同値であるのがなぜなのわかりません

4

情報の付け足し

2021/04/25 13:50

投稿

rihitoban
rihitoban

スコア25

title CHANGED
File without changes
body CHANGED
@@ -1,1 +1,3 @@
1
- ビット演算子で ~x = -(x+1)になる理由がわかりません。2の補数や1の補数についてはなんとなく理解したのですが、単純にビットを反転させたら、値が-になる理由がわかりません。例えば ~10 が -11になる理由がわからないです。10 = 0b1010 のビットを反転させたら、0b0101 = 5 になると思うのですが。
1
+ ビット演算子で ~x = -(x+1)になる理由がわかりません。2の補数や1の補数についてはなんとなく理解したのですが、単純にビットを反転させたら、値が-になる理由がわかりません。例えば ~10 が -11になる理由がわからないです。10 = 0b1010 のビットを反転させたら、0b0101 = 5 になると思うのですが。
2
+
3
+ これは -x をxの2の補数を表現していると捉え、 -(x+1)=-x-1 なので、(xの2の補数)-1=(xの1の補数)なので-(x+1)はxのビットを反転させたものと同値と捉えられるのでしょうか。

3

書式の改善

2021/04/25 13:42

投稿

rihitoban
rihitoban

スコア25

title CHANGED
File without changes
body CHANGED
@@ -1,1 +1,1 @@
1
- ビット演算子で ~x = -(x+1)になる理由がわかりません。2の補数や1の補数についてはなんとなく理解したのですが、単純にビットを反転させたら、値が-になる理由がわかりません。例えば ~10 が -11になる理由がわからないです。10 = 0b1010 のビットを反転させたら、0b0101 = 5 になると思うのですが。これは -x をxの2の補数を表現していると捉え、 -(x+1)=-x-1 なので、(xの2の補数)-1=(xの1の補数)なので-(x+1)はxのビットを反転させたものと同値と捉えられるのでしょうか。
1
+ ビット演算子で ~x = -(x+1)になる理由がわかりません。2の補数や1の補数についてはなんとなく理解したのですが、単純にビットを反転させたら、値が-になる理由がわかりません。例えば ~10 が -11になる理由がわからないです。10 = 0b1010 のビットを反転させたら、0b0101 = 5 になると思うのですが。

2

情報の付け足し

2021/04/25 13:41

投稿

rihitoban
rihitoban

スコア25

title CHANGED
File without changes
body CHANGED
@@ -1,1 +1,1 @@
1
- ビット演算子で ~x = -(x+1)になる理由がわかりません。2の補数や1の補数についてはなんとなく理解したのですが、単純にビットを反転させたら、値が-になる理由がわかりません。例えば ~10 が -11になる理由がわからないです。10 = 0b1010 のビットを反転させたら、0b0101 = 5 になると思うのですがこれは単純に 5 の2の補数である11に-つけることで 5 を表現しているということでしょうか。
1
+ ビット演算子で ~x = -(x+1)になる理由がわかりません。2の補数や1の補数についてはなんとなく理解したのですが、単純にビットを反転させたら、値が-になる理由がわかりません。例えば ~10 が -11になる理由がわからないです。10 = 0b1010 のビットを反転させたら、0b0101 = 5 になると思うのですがこれは -x をxの2の補数を表現していると捉え、 -(x+1)=-x-1 なので、(xの2の補数)-1=(xの1の補数)なので-(x+1)はxのビットを反転させたもの同値と捉えられるのでしょうか。

1

書式の改善

2021/04/25 13:41

投稿

rihitoban
rihitoban

スコア25

title CHANGED
File without changes
body CHANGED
@@ -1,1 +1,1 @@
1
- ビット演算子で ~x = -(x+1)になる理由がわかりません。2の補数や1の補数についてはなんとなく理解したのですが、単純にビットを反転させたら、値が-になる理由がわかりません。例えば ~10 が -11になる理由がわからないです。
1
+ ビット演算子で ~x = -(x+1)になる理由がわかりません。2の補数や1の補数についてはなんとなく理解したのですが、単純にビットを反転させたら、値が-になる理由がわかりません。例えば ~10 が -11になる理由がわからないです。10 = 0b1010 のビットを反転させたら、0b0101 = 5 になると思うのですが、これは単純に 5 の2の補数である11に-をつけることで 5 を表現しているということでしょうか。