TechKnowSurge
CompTIA Tech+ 1.1 CompTIA Tech+ 1.2
VideoComputeFree

Hexadecimal Odometer

Hexadecimal numbers use digits 0–9 and letters A–F to represent values in a base-16 counting system, where each column carries over at multiples of 16. Visualizing this with an interactive odometer tool makes the counting patterns behind hex easier to recognize and understand.

Complete this video to capture a CTF flag worth 1 point.

About this video

Hexadecimal is a base-16 numbering system widely used in computing and cybersecurity because it offers a compact way to represent large binary values. Unlike decimal, which uses only the digits 0–9, hexadecimal extends the character set to include the letters A through F, where A equals 10, B equals 11, and so on up to F, which equals 15. This means each single column in a hexadecimal number can hold one of sixteen distinct values before a carry is triggered into the next column. The carry mechanism in hexadecimal works the same way it does in any positional numbering system. Once a column reaches F and needs to increment, it resets to zero and adds one to the column immediately to its left, which represents the 16s place. From there the pattern continues, with subsequent columns representing 256, 4096, and higher powers of 16. Comparing this behavior directly against binary and octal counters running simultaneously makes the shared logic of positional notation much clearer. Interactive odometer tools that visualize all these bases in parallel, including options to adjust counting speed, are an effective way to internalize these patterns before working with hexadecimal values in practical networking and security contexts.

What you'll learn

What's covered

Hexadecimal Numbers

Aligned to

CompTIA Tech+
1.1 Compare and contrast notational systems.
1.2 Compare and contrast fundamental data types and their characteristics.

Key terms

Hexadecimal
Hex
A base-16 number system using digits 0–9 and letters A–F; each hex digit maps to exactly 4 bits, making it a compact shorthand for representing binary data.
Place Value
The weight assigned to a digit based on its position within a number; in binary, each position represents a successive power of 2 (1, 2, 4, 8, …), making position the key to decoding binary values.
Base-16
Another name for the hexadecimal numbering system, where each digit position represents a power of 16.
Carrying
The process of resetting a digit column to zero and adding one to the next higher place-value column when a column exceeds its maximum digit.

Transcript

When we were looking into binary numbers, we also looked at what a binary odometer looked like. Let's do the same thing for hexadecimal numbers.

When I showed you the binary odometer, I just typed in "binary odometer" and a couple of great sources popped up. I showed you the one from GitHub, where we talked about base 10, we talked about binary and what a binary number looks like, and the binary odometer. On the same page it has an octal, which is a base 8, and the hexadecimal, which is a base 16.

Counting on the hexadecimal odometer

With this hexadecimal number, you can see that I have ABCD already up here, and I can increment the value. What happens is that it starts out at zero and counts its way up: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Then, because you can't have 10 — you can't have two digits here — it's got to be represented by a single character, and it's represented by A. So A equals 10 in this case right here. Then B, C, D, E, F.

Once we get to F, there is no next character after that in hexadecimal, because F is the equivalent of 15, and so we need to reset this column. We reset the ones and it carries over into the 16 column here. Then we say the same thing: we can count up until we get to EF, and then the next one carries over into the 16. You can see the same thing happening as what we saw before. And there I just cycled it over and it carried it over to the 256.

The other site

That other site that we looked at does the same thing. It has the binary counter, the base 8 here, the decimal which is base 10, and the hexadecimal which is base 16. Or you could even create a custom one here, so you can adjust this to whatever you want to adjust it to and see how it interplays. What's nice about this one as well is that it actually can speed up, so you can see what happens, or you could slow it down.

I'd recommend looking at these sites and just seeing what the patterns look like. Once you see those patterns, it's going to be easier to understand binary numbers and hexadecimal numbers.

About TechKnowSurge

TechKnowSurge builds IT and cybersecurity professionals through hands-on, concept-first training built around real understanding — not memorization. Free interactive tools, structured programs, and 25+ years of real-world experience, all in one place.

Explore free tools and programs →