Homebuilt TTL and transistor CPUs - wierd logic

Tony Duell ard at p850ug1.demon.co.uk
Tue Jan 24 18:50:15 CST 2006

> Balanced trinary means place values go up by three each, but instead 

Personally, I prefer negabinary (base -2). It uses 2-state signals, but 
the column values are powers of -2 : . . .16, -8, 4, -2, 1

Every postive and negative integer has a unique representation. The 
adder works (obvuiously) with +ve and -ve numbers. Shift-and-and 
multiplication works,  as does shift-and-subtract division (using 
negabinary adders/subtractors). To negate a number, shift it left one bit 
and add it to the origiginal number (this is multiplying by 11, which is 
-1 of course)

negabinary    decimal
1100           -4
1101           -3
0010           -2
0011           -1
0000            0
0001            1
0110            2
0111            3
0100            4

Note that numbers of a odd-number of bits length (ingoring leading zeros) 
are +ve, those of an even number of bits are -ve

Years ago I built a 4-bit negabinary adder. The full adder stage has 3 
outputs (sum, carry, carry+1) since you have to be able to add 1+1 
giveing 110 and therefore has 4 inputs (2 bits to sum, carry in from last 
stage, carry in to last-but-one stage).


More information about the cctech mailing list