Transmission of data on a serial line, when
accomplished by rapidly tweaking a single output bit, in software,
at the appropriate times. The technique is a simple loop with
eight OUT and SHIFT instruction pairs for each byte. Input is more
interesting. And full duplex (doing input and output at the same
time) is one way to separate the real hackers from the
wannabees.
Bit bang was used on certain early models of Prime computers,
presumably when UARTs were too expensive, and on archaic Z80 micros
with a Zilog PIO but no SIO. In an interesting instance of the
cycle of reincarnation, this technique returned to use in the
early 1990s on some RISC architectures because it consumes such
an infinitesimal part of the processor that it actually makes sense
not to have a UART. Compare cycle of reincarnation.
cycle of reincarnation: [coined by Ivan Sutherland ca. 1970] n.
Term used to refer to a well-known effect whereby function in a
computing system family is migrated out to special-purpose
peripheral hardware for speed, then the peripheral evolves toward
more computing power as it does its job, then somebody notices that
it is inefficient to support two asymmetrical processors in the
architecture and folds the function back into the main CPU, at
which point the cycle begins again....