Subtractor とは

エレクトロニクスでは、加算器と同じアプローチを使用して減算器を設計することができます。バイナリ減算プロセスを以下に要約する。加算器の場合と同様に、マルチビット数の計算の一般的なケースでは、差のビットごとに減算を実行するのに、被減数( X i {\displaystyle X_{i}} )、減数( Y i {\displaystyle Y_{i}} )、および借り(より重要ではない)ビット順序位置( B i {\displaystyle B_{i}} )から、出力は差分ビット( D i {\displaystyle D_{i}} )とボロービット B i + 1 {\displaystyle B_{i+1}} です。減算器は、減数および両方の借りビットが負の重みを持ち、XおよびDビットが正であることを考慮することによって最もよく理解されます。減算器の演算は、 X i Y i B i {\displaystyle X_{i}-Y_{i}-B_{i}} (値-2、-1、0、または1を取ることができる)を和 2 B i + 1 + D i {\displaystyle -2B_{i+1}+D_{i}} として書き換えることです。
D i = X Y i B i {\displaystyle D_{i}=X_{}\oplus Y_{i}\oplus B_{i}} B i + 1 = X i < ( Y i + B i ) {\displaystyle B_{i+1}=X_{i}<(Y_{i}+B_{i})}
減算器は、標準の2の補数表記を使用する場合、キャリーインに加算/減算セレクタを提供し、第2オペランドを反転することによって、わずかな費用で2進加算器内で通常実行される。
B = B ¯ + 1 {\displaystyle -B={\bar {B}}+1} (2の補数表記の定義)
A B = A + ( B ) = A + B ¯ + 1 {\displaystyle {\begin{alignedat}{2}A-B&=A+(-B)\\&=A+{\bar {B}}+1\\\end{alignedat}}}