回答編集履歴
6
fix context
test
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
[Wikipedia - 符号属性](https://ja.wikipedia.org/wiki/%E7%AC%A6%E5%8F%B7%E5%B1%9E%E6%80%A7#:~:text=%E7%AC%A6%E5%8F%B7%E4%BB%98%E3%81%8D(signed)%E3%81%AE%E5%A0%B4%E5%90%88,%E6%95%B0%E5%80%A4%E3%82%88%E3%82%8A%E3%82%82%E5%B0%91%E3%81%AA%E3%81%8F%E3%81%AA%E3%82%8B%E3%80%82)
|
6
6
|
|
7
|
-
8bit符号付き
|
7
|
+
8bit符号付きのとき,最上位ビットが立っていれば,それまでの桁の値から`-128`を加算することになります(Nbitであれば`-(2^(N-1))`).
|
8
8
|
|
9
9
|
|入れた10進|2進数表記|`np.int8`の値|`np.uint8`の値|
|
10
10
|
|--:|:--:|--:|--:|
|
5
fixed table
test
CHANGED
@@ -11,8 +11,8 @@
|
|
11
11
|
|0|`0b00000000`|0|0|
|
12
12
|
|1|`0b00000001`|1|1|
|
13
13
|
|2|`0b00000010`|2|2|
|
14
|
-
|4|`0b00000100`|4|4|
|
15
14
|
|-|-|-|-|
|
15
|
+
|126|`0b01111110`|126|126|
|
16
16
|
|127|`0b01111111`|127|127|
|
17
17
|
|128|`0b10000000`|-128|128|
|
18
18
|
|129|`0b10000001`|-127|129|
|
4
add table
test
CHANGED
@@ -6,4 +6,19 @@
|
|
6
6
|
|
7
7
|
8bit符号付きであれば,最上位ビットが立っていれば,それまでの桁の値から`-128`を加算することになります(Nbitであれば`-(2^(N-1))`).
|
8
8
|
|
9
|
+
|入れた10進|2進数表記|`np.int8`の値|`np.uint8`の値|
|
10
|
+
|--:|:--:|--:|--:|
|
11
|
+
|0|`0b00000000`|0|0|
|
12
|
+
|1|`0b00000001`|1|1|
|
13
|
+
|2|`0b00000010`|2|2|
|
14
|
+
|4|`0b00000100`|4|4|
|
15
|
+
|-|-|-|-|
|
16
|
+
|127|`0b01111111`|127|127|
|
17
|
+
|128|`0b10000000`|-128|128|
|
18
|
+
|129|`0b10000001`|-127|129|
|
19
|
+
|130|`0b10000010`|-126|130|
|
20
|
+
|-|-|-|-|
|
21
|
+
|254|`0b11111110`|-2|254|
|
22
|
+
|255|`0b11111111`|-1|255|
|
23
|
+
|
9
|
-
|
24
|
+
抜粋して,`0b01111111`は`127`ですがその次の`0b10000000`は`-128`,その次`0b10000001`は`-128 + 1 = -127`になります.どんどん値が進んで最終的に`0b11111111`で`-128 + 127 = -1`です.
|
3
fix example
test
CHANGED
@@ -4,4 +4,6 @@
|
|
4
4
|
|
5
5
|
[Wikipedia - 符号属性](https://ja.wikipedia.org/wiki/%E7%AC%A6%E5%8F%B7%E5%B1%9E%E6%80%A7#:~:text=%E7%AC%A6%E5%8F%B7%E4%BB%98%E3%81%8D(signed)%E3%81%AE%E5%A0%B4%E5%90%88,%E6%95%B0%E5%80%A4%E3%82%88%E3%82%8A%E3%82%82%E5%B0%91%E3%81%AA%E3%81%8F%E3%81%AA%E3%82%8B%E3%80%82)
|
6
6
|
|
7
|
+
8bit符号付きであれば,最上位ビットが立っていれば,それまでの桁の値から`-128`を加算することになります(Nbitであれば`-(2^(N-1))`).
|
8
|
+
|
7
|
-
|
9
|
+
例として,`0b01111111`は`127`ですがその次の`0b10000000`は`-128`,その次`0b10000001`は`-128 + 1 = -127`になります.どんどん値が進んで最終的に`0b11111111`で`-128 + 127 = -1`です.
|
2
append example
test
CHANGED
@@ -3,3 +3,5 @@
|
|
3
3
|
対して符号なし(unsigned)の8bit整数である`np.uint8()`であれば望まれた結果になるでしょう.
|
4
4
|
|
5
5
|
[Wikipedia - 符号属性](https://ja.wikipedia.org/wiki/%E7%AC%A6%E5%8F%B7%E5%B1%9E%E6%80%A7#:~:text=%E7%AC%A6%E5%8F%B7%E4%BB%98%E3%81%8D(signed)%E3%81%AE%E5%A0%B4%E5%90%88,%E6%95%B0%E5%80%A4%E3%82%88%E3%82%8A%E3%82%82%E5%B0%91%E3%81%AA%E3%81%8F%E3%81%AA%E3%82%8B%E3%80%82)
|
6
|
+
|
7
|
+
8bit符号付きであれば,最上位ビットが立っていれば,それまでの桁の値から`-128`を加算することになります.`0b01111111`は`127`ですがその次の`0b10000000`は`-128`,その次`0b10000001`は`-128 + 1 = -127`になります.どんどん値が進んで最終的に`0b11111111`で`-128 + 127 = -1`です.
|
1
update link
test
CHANGED
@@ -1,3 +1,5 @@
|
|
1
1
|
`np.int8()`は符号付き(signed)の8bit整数なので,その値になります.最上位ビットが立っていれば負を意味します.
|
2
2
|
|
3
3
|
対して符号なし(unsigned)の8bit整数である`np.uint8()`であれば望まれた結果になるでしょう.
|
4
|
+
|
5
|
+
[Wikipedia - 符号属性](https://ja.wikipedia.org/wiki/%E7%AC%A6%E5%8F%B7%E5%B1%9E%E6%80%A7#:~:text=%E7%AC%A6%E5%8F%B7%E4%BB%98%E3%81%8D(signed)%E3%81%AE%E5%A0%B4%E5%90%88,%E6%95%B0%E5%80%A4%E3%82%88%E3%82%8A%E3%82%82%E5%B0%91%E3%81%AA%E3%81%8F%E3%81%AA%E3%82%8B%E3%80%82)
|