1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
| | %indent
;,1桁の減算は以下の4通り。
- $$ 1 $ - $ 0 $ = $ \,\,1 $$
- $$ 0 $ - $ 0 $ = $ \,\,0 $$
- $$ 1 $ - $ 1 $ = $ \,\,0 $$
- $$ 0 $ - $ 1 $ = $ ^-1 $$ (上位桁で繰り下がり)
;,減数が$$ 0 $$の場合は被乗数のまま、減数が1の場合は被乗数が$$ 01 $$反転になる。
;,$$ 0 $ - $ 1 $$の場合は上位が繰り下がる。
;,複数桁の減算は右から桁毎に減算する。
;,$$ 0 $$から$$ 1 $$を引かない限り、桁毎に順番に減算するだけで済む。
;,例1:
;, $$ \phantom{\; +) \;\, } 1 \;\, 1 \;\, 1 \;\, 0 \;\, \;\, 0 \;\, 1 \;\, 1 \;\, 0 \; $$
;, $$ \underline{\; -) \;\, 1 \;\, 0 \;\, 0 \;\, 0 \;\, \;\, 0 \;\, 1 \;\, 0 \;\, 0 \;} $$
;, $$ \phantom{\; +) \;\, 1 \;\, } 1 \;\, 1 \;\, 0 \;\, \;\, 0 \;\, 0 \;\, 1 \;\, 0 \; $$
;,$$ 0 $$から$$ 1 $$を引く場合、繰り下がるために左の桁を影響する。
;,繰り下がる場合は、被減数を上位方向に辿り、最初の$$ 1 $$まで反転させる。
;,例2:
$$$
\begin{array}{rllll}
& \1 & \1 \>\, 0 \>\, 0 \>\, \1 \>\, & \0 \>\, 0 \>\, 0 \>\, \1 \>\, & 0 \>\, 1 \>\, 1 \>\, 0 \>\,
\\ -) & & 1 \>\, 0 \>\, 0 \>\, 0 \>\, & 0 \>\, 1 \>\, 0 \>\, 0 \>\, & 1 \>\, 1 \>\, 0 \>\, 0 \>\,
\\ \hline & & 1 \>\, 0 \>\, 0 \>\, 0 \>\, & 1 \>\, 1 \>\, 0 \>\, 0 \>\, & 1 \>\, 0 \>\, 1 \>\, 0 \>\,
\end{array}
$$$
$$ \0 $$と$$ \1 $$はそれぞれ$$ 0 $$と$$ 1 $$の反転を表し、$$ 1 $$と$$ 0 $$を意味する。
;,繰り下がりで被減数を上位方向に辿っても$$ 1 $$が無い場合、負の数となる。
;,負の数は、先頭に$$ 1 $$を卸して、繰り下がりで無数に連なる$$ 1 $$を表す$$ \cdots $$を前に付ける。
;,例3:
$$$
\begin{array}{rllll}
& & 1 \>\, 1 \>\, \0 \>\, 0 \>\, & 0 \>\, 1 \>\, \0 \>\, 0 \>\, & \1 \>\, \1 \>\, 0 \>\, 0 \>\,
\\ -) & 1 & 1 \>\, 0 \>\, 0 \>\, 1 \>\, & 0 \>\, 0 \>\, 0 \>\, 1 \>\, & 0 \>\, 1 \>\, 1 \>\, 0 \>\,
\\ \hline \cdots & 1 & 0 \>\, 1 \>\, 1 \>\, 1 \>\, & 0 \>\, 1 \>\, 1 \>\, 1 \>\, & 0 \>\, 1 \>\, 1 \>\, 0 \>\,
\end{array}
$$$
;, $$ \phantom{\; +) \;\, } \phantom{1 \;\,\, } \;\, 1 \;\, 1 \;\, \overline0 \;\, 0 \;\, \;\, 0 \;\, 1 \;\, \overline0 \;\, 0 \;\, \;\, \overline1 \;\, \overline1 \;\, 0 \;\, 0 \; $$
;, $$ \underline{ \; -) \;\, \, 1 \;\, \;\, 1 \;\, 0 \;\, 0 \;\, 1 \;\, \;\, 0 \;\, 0 \;\, 0 \;\, 1 \;\, \;\, 0 \;\, 1 \;\, 1 \;\, 0 \;} $$
;, $$ \phantom{\; \; } \cdots 1 \;\, \;\, 0 \;\, 1 \;\, 1 \;\, 1 \;\, \;\, 0 \;\, 1 \;\, 1 \;\, 1 \;\, \;\, 0 \;\, 1 \;\, 1 \;\, 0 \; $$
;,$$ 1 $$からの減算は反転で簡単に求まるため、
;,$$ a $ - $ b $ = $ ( $ a $ + $ 1 $ ) $ + $ ( $ -1 $ - $ b $ ) $$を利用して減算を加算として高速に解ける。
;,$$ -1 $$は補数表現で無数の$$ 1 $$が並ぶので、$$ -1 $ - $ b $$は$$ b $$の反転$$ \overline{\,b\,} $$となる。
例4:
;, $$ \phantom{\; +) \;\, \cdots\,} 1 \;\,\;\, 1 \;\, 0 \;\, 0 \;\, 1 \;\, \;\, 0 \;\, 0 \;\, 0 \;\, 1 \;\, \;\, 0 \;\, 1 \;\, 1 \;\, 0 \; $$ …… $$ a $$
;, $$ \underline{\; -) \;\,\phantom{\cdots\, 1 } \;\,\;\, 1 \;\, 1 \;\, 0 \;\, 0 \;\, \;\, 0 \;\, 1 \;\, 0 \;\, 0 \;\, \;\, 1 \;\, 1 \;\, 0 \;\, 0 \;} $$ …… $$ b $$
;, $$ \phantom{\; +) \;\, \cdots\,} 1 \;\,\;\, 1 \;\, 0 \;\, 0 \;\, 1 \;\, \;\, 0 \;\, 0 \;\, 0 \;\, 1 \;\, \;\, 0 \;\, 1 \;\, 1 \;\, \iro[ak]1 \; $$ …… $$ a $ + $ 1 $$
;, $$ \underline{\; +) \;\, \cdots 1 \;\,\;\, 0 \;\, 0 \;\, 1 \;\, 1 \;\, \;\, 1 \;\, 0 \;\, 1 \;\, 1 \;\, \;\, 0 \;\, 0 \;\, 1 \;\, 1 \;} $$ …… $$ -1 $ - $ b $ = $ \overline{\,b\,} $$
;, $$ \phantom{\; +) \;\, \cdots 1 } \;\,\;\, 1 \;\, 1^{1 }0^{1\,}0 \;\, \;\, 1 \;\, 1^{1 }0^{1\,}0 \;\, \;\, 1^{1 }0^{1\,}1^{1 }0 \; $$
;,上位で$$ 1 $$と$$ \cdots $ 1 $$が無限に繰り上がって$$ \cdots $ 0 $$になる。
;,反転表記を見慣れたら、反転バーの追記で簡潔に記述できる。
例5:
;, $$ \phantom{\; +) \;\, \cdots\,} 1 \;\,\;\, 1 \;\, 0 \;\, 0 \;\, 1 \;\, \;\, 0 \;\, 0 \;\, 0 \;\, 1 \;\, \;\, 0 \;\, 1 \;\, 1 \;\, \overline0 \; $$ …… $$ a $ + $ 1 $$
;, $$ \underline{\; \ooalign{\(-\)\crcr{\,/}}) \;\,\overline{\cdots\, 0 } \;\,\;\, \overline{1 \;\, 1 \;\, 0 \;\, 0} \;\, \;\, \overline{0 \;\, 1 \;\, 0 \;\, 0} \;\, \;\, \overline{1 \;\, 1 \;\, 0 \;\, 0} \;} $$ …… $$ -1 $ - $ b $ = $ \overline{\,b\,} $$
;, $$ \phantom{\; +) \;\, \cdots 1 } \;\,\;\, 1 \;\, 1^{1 }0^{1\,}0 \;\, \;\, 1 \;\, 1^{1 }0^{1\,}0 \;\, \;\, 1^{1 }0^{1\,}1^{1 } 0 \; $$
;,結果が負になる場合、上位での無限繰り上がりが無く、$$ \cdots $ 1 $$が結果まで降りる。
例6:
;, $$ \phantom{\; +) \;\, \cdots\, 0 \;\, 1 } \;\,\;\, 1 \;\, 1 \;\, 0 \;\, 0 \;\, \;\, 0 \;\, 1 \;\, 0 \;\, 0 \;\, \;\, 1 \;\, 1 \;\, 0 \;\, 0 \; $$
;, $$ \underline{ \; -) \;\, \phantom{\cdots\, 0 \;\, } 1 \;\,\;\, 1 \;\, 0 \;\, 0 \;\, 1 \;\, \;\, 0 \;\, 0 \;\, 0 \;\, 1 \;\, \;\, 0 \;\, 1 \;\, 1 \;\, 0 \;} $$
;, $$ \phantom{\; +) \;\, \cdots\, 0 \;\, 1 } \;\,\;\, 1 \;\, 1 \;\, 0 \;\, 0 \;\, \;\, 0 \;\, 1 \;\, 0 \;\, 0 \;\, \;\, 1 \;\, 1 \;\, 0 \;\, \iro[ak]1 \; $$
;, $$ \underline{ \; +) \;\, \cdots\, 1 \;\, 0 \;\,\;\, 0 \;\, 1 \;\, 1 \;\, 0 \;\, \;\, 1 \;\, 1 \;\, 1 \;\, 0 \;\, \;\, 1 \;\, 0 \;\, 0 \;\, 1 \;} $$
;, $$ \phantom{\; +) \;\, } \cdots\, 1 \;\, 1 ^{1 }\;\, 0^{1\,}0 \;\, 1 \;\, 1^{1 } \;\, 0^{1\,}0 \;\, 1 \;\, 1^{1 } \;\, 0 \;\, 1 \;\, 1^{1\,} 0 \; $$
|