Hades logoHades applet banner
Hamming weight (12 bit adder tree)

applet icon

The image above shows a thumbnail of the interactive Java applet embedded into this page. Unfortunately, your browser is not Java-aware or Java is disabled in the browser preferences. To start the applet, please enable Java and reload this page. (You might have to restart the browser.)

Circuit Description

This circuit counts the number of active (1) bits in the input word (also known as the Hamming weight). Obviously, a single full-adder can be used to calculate the Hamming weight of a three bit input word. For larger input word width, a tree of adders can be used to combine the intermediate sums from the previous stages.

Click the input switches or type the '0'..'9' and 'a', 'b' bindkeys to play with the circuit. See the next applet for an animated demonstration of the Hamming weight adder-tree.

To keep the circuit layout readable, the carry-in inputs of the multi-bit adders are tied to GND (logical 0) in the example. Naturally, these carry-in inputs could be connected to additional input pins, which would allow for 15-bits of input with the same number of adders. As 15 is also the highest number that one three-bit adder can generate, a 16-bit bitcounter would obviously require another adder, etc.

Print version | Run this demo in the Hades editor (via Java WebStart)
Usage | FAQ | About | License | Feedback | Tutorial (PDF) | Referenzkarte (PDF, in German)
Impressum http://tams.informatik.uni-hamburg.de/applets/hades/webdemos/20-arithmetic/80-bitcount/bitcount.html