Inom elektronik kan en subtraktor göras med samma tillvägagångssätt som i en adderare .
Det finns minst två typer av subtraktorer:
Liksom i adderaren, i de flesta fall av beräkning av flerbitars tal, är tre operander involverade i subtraktionen för varje bit: minuend ( ), den första subtrahenden ( ) och den andra subtraherade ( ) - lånbiten till föregående ( ) mindre signifikant) bit av subtraheraren. De två utgångarna är en differensbit ( ) och en i+1-bits lånebit ( ) [1] .
f (3,1,150) 10 ( Xi , Yi , Bi ) carnot karta f (3,1,216) 10 ( Xi , Yi , Bi )Sanningstabell för binär subtraktor: f (11,10,110100010010110) 2 (x,y,z) = f (3,2,55446) 10 (x,y,z)
X | Y | Z(N-1) | R=X Y Z= f (3,1,150) 10 (x,y,z) |
Z(N+1)= f (3,1,216) 10 (x,y,z) |
---|---|---|---|---|
0 | 0 | 0 | 0 | 0 |
0 | 0 | ett | ett | ett |
0 | ett | 0 | ett | ett |
0 | ett | ett | 0 | ett |
ett | 0 | 0 | ett | 0 |
ett | 0 | ett | 0 | 0 |
ett | ett | 0 | 0 | 0 |
ett | ett | ett | ett | ett |
Z(N+1) - låna bit av n+1 bitar
Z(N-1) - låna bit på n-1 bitar, andra subtraherad
För att minska kostnaden görs subtraktionen vanligtvis i en binär adderare. Adderar-subtraheraren är utrustad med en addera/subtrahera-omkopplare.
Subtraheraren i tvås komplementkoder är baserad på en konventionell adderare med ett hårdvarukvitto av den andras komplementkod.
Processen för binär subtraktion med en konventionell adderare och med hårdvaruhärledning av sekundans komplementkod beskrivs nedan [2] [3] .
När man subtraherar på en konventionell adderare, används standardnotationen för andras komplement (2:s komplement ) för den andra operanden.
För att få det första komplementet inverteras den andra operanden.
För att få den andras komplement läggs en till inversen av den andra operanden med hjälp av bäringången.