Serial and parallel counter are used in combination to compromise between speed of operation and hardware count. Serial, parallel, or combination counters can be designed such that each clock transition advances the contents of the counter by one; it is then operating in a count up mode. The opposite is also possible; the counter then operates in the count up mode. The opposite is also possible; the counter then operates in the count down mode. Furthermore, many counters can be either cleared so that every flip plop contains a zero, or preset such that the contents of the flip flops represent any desired binary number.