Push-pull NOT gate and buffering
"No, no, you're not thinking; you're just being logical." - Niels Bohr
This page has details about the NOT gate and
buffer. A NOT
gate, negates and input so 1 becomes a 0, and vice versa. A
buffer simply returns the input, i.e. 1 becomes 1. Their advantage is
that they act as amplifiers, especially useful if an input signal is
rather low.
The NOT gate was the first and easiest gate to design. All you have to do
is ensure that one push-rod does the opposite of the other as can be seen in the
pictures.
The original NOT gate is very over-engineered and in many ways the NOT gate as an entity is
redundant. On all the logic gates to
NOT an input you only need to reverse the direction of the
cog that drives the rack forward or backward. This is easily affected by simply having the input push-rod acting
at the bottom or the top of the cog depending on which way you need the rack to move.
The cog's direction is different in each case, so any rack that the cog acts on will also move in an opposite direction.
This is exactly the motion we require when NOTing an input. The only time an output needs to be NOTd is if we are't going
to use it as an input to another gate, even then, with the available gates, a NOT gate shouldn't be required.