TechKnowSurge
CompTIA Tech+ 1.1 CompTIA Tech+ 1.2 CompTIA Tech+ 1.3
VideoComputeFree

Bits Representing Characters

Character encoding standards like ASCII and Unicode define how keystrokes are translated into binary data that computers can process. ASCII uses 7 bits to represent 128 characters, while Unicode supports over 155,000 characters across 168 scripts using variable-length encodings like UTF-8.

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

About this video

Character encoding is the system that translates keyboard input into binary data a computer can process. Every key press generates a standardized code, and the rules governing those codes are defined by encoding standards that have evolved significantly over the history of computing. ASCII, the American Standard Code for Information Interchange, is one of the most foundational of these standards. It uses 7 bits per character, allowing it to represent 128 distinct values that cover uppercase and lowercase Latin letters, digits, and common symbols. Unicode was developed to address the limitations of ASCII's narrow scope. It currently supports over 155,000 characters spanning 168 scripts and includes emojis, with updates released annually to expand coverage of global languages. This breadth comes with a trade-off: representing such a large number of characters requires larger numerical values, which can increase document file sizes considerably compared to simpler single-byte encodings. UTF-8 is a widely adopted Unicode encoding format that resolves this efficiency problem through a variable-length design. Standard Latin characters require only one byte, keeping UTF-8 fully backward compatible with ASCII, while less common characters can extend to two, three, or four bytes as needed. A single-byte UTF-8 character begins with a zero bit followed by seven bits that map directly to the corresponding ASCII value, meaning ASCII is effectively built into UTF-8. This design makes UTF-8 both storage-efficient for everyday text and capable of representing the full breadth of Unicode's global character set.

What you'll learn

What's covered

Character Encoding Standards

Aligned to

CompTIA Tech+
1.1 Compare and contrast notational systems.
1.2 Compare and contrast fundamental data types and their characteristics.
1.3 Illustrate the basics of computing and processing.

Key terms

American Standard Code for Information Interchange
ASCII
A 7-bit character encoding standard that assigns numeric values 0–127 to letters, digits, punctuation, and control characters, giving computers a common format for representing and exchanging text; often expressed in hexadecimal for compactness.
Unicode
A character encoding standard supporting nearly 155,000 characters across 168 scripts, including emojis and international languages, designed to represent text from all writing systems.
UTF-8
A variable-length encoding scheme for Unicode that uses one to four bytes per character, remaining backward compatible with ASCII for standard characters.
Character Encoding
A standard that maps characters such as letters, numbers, and symbols to binary values so computers can process and store text.
Binary
The base-2 number system that uses only the digits 0 and 1; the native language of digital computers, which store and process data as electrical on/off states.

Topics

Character Encoding Ascii Unicode Utf 8 Binary Data Data Representation

Transcript

Every time you press a letter on your keyboard, it sends a digital code to your computer, and then that computer processes it. But what does that digital code look like? There's actually standards out there just for that.

Your keyboard has the whole alphabet on it. In fact, it has the whole alphabet on it in lowercase, and if we use the shift key, it's also in uppercase. Plus it has all of the numbers, and if we use the shift key with those numbers, then we have special characters with it. Plus there's the space bar, plus there's a whole bunch of other keys that we can use. Each one of those is sending a code to your computer.

ASCII

One example of a standard that's out there is ASCII, and ASCII converts those letters into a binary equivalent. What we see here is a capital A is represented by a string of digits here. A B is a slightly different string, and C is a slightly different string. In fact, they're just counting up, so it's counting up in binary numbers to represent all the capital letters. And then we see all of the lowercase letters here, and we see all the numbers. Once again, this is not showing all of the characters that you have, but this is a good sampling of a lot of the characters that need to be represented from your keyboard and need to be sent to the computer to be processed.

ASCII is one of the more prevalent standards that are out there. ASCII is 7 bits long, and 2 to the 7th power means that it can represent 128 different characters. Here's the list of that. So here's the binary, and then it's also listed in octal and decimal and hexadecimal, and what it represents. We can scroll through here and see all of the different stuff that's represented by ASCII. ASCII stands for the American Standard Code for Information Interchange.

Unicode

Here's another standard that's out there. I'm on the Wikipedia site showing you Unicode. Unicode is another very popular standard that's out there. It has almost 155,000 characters, 168 scripts, has a bunch of emojis, and is constantly being updated. So if we scroll down here, we can see that there's updates throughout the years. In fact, it looks like they're doing an update once a year in September and adding more and more languages to it. So this is another example of a standard that's out there.

Now, the thing is that when we're supporting so many different characters and scripts and emojis, then we have to have more representation, which means a bigger number. We have to have a much bigger number to represent all these different possible combinations of stuff. And that can be problematic, because now we're not just using a byte to store a character, or seven bits to store a character, but we're using possibly several bytes to store each character. So now our documents are getting much larger.

UTF-8

Unicode has some interesting features to it. The first thing to note is that there are a few different encoding standards: we've got UTF-8, 16, 32. We're not going to get into the details of that here, but we are going to look at UTF-8. So I'm going to click on there and I'm going to scroll down to how it copes with this.

UTF-8 has kind of a sliding scale here, anywhere from one byte to four bytes. So it doesn't necessarily have to have four bytes representing every single character. It could just use a byte for most of our standard characters. So like the alphabet, A B C D, it's just going to use one byte for that. But then if it does something special that's a little bit less standard, then it can extend out these and use a total of four bytes here.

If it is just a single byte, it starts with a zero, and then these seven characters, y y y ZZ ZZ, those seven characters, or those seven bits, represent a character, and it represents it in ASCII. So this is actually backwards compatible. There's ASCII kind of built into this UTF-8. So if we have an A that's being represented, then it will just start with a zero, and then this code would represent the A, which I think, if I remember correctly, is 00100001. But anyways, the ASCII is built into this. So that's how this UTF-8 works, and its correlation to ASCII, which is kind of built into this, and its correlation to Unicode.

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 →