# Decimal, Binary, and Hexadecimal Odometers

Posted by Al Sweigart in coding

It can be difficult to see how other number systems (such as binary and hexadecimal) work since they have a different amount of numerals than the ten numerals of decimal. But imagine that you are counting in these number systems using an old-fashioned analog odometer that has a different amount of numerals for each digit.

The following three odometers **always show the same number**, but they are written out differently in different number systems:

Decimal (Normal, base-10 with digits 0, 1, 2, 3, 4, 5, 6, 7, 8, 9):

Binary (base-2 with digits 0, 1):

Hexadecimal (base-16 with digits 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F):

UPDATE: Source code for Gavin Brock's JavaScript odometers. Source code for this binary/decimal/hexadecimal demo all on a single page.

Learn to program with my books for beginners, free under a Creative Commons license:Take my Automate the Boring Stuff with Python online Udemy course. Use this link to apply a 60% discount.