bytes.htm

If you have used a computer for more than five minutes, then you have heard the words **bits** and **bytes**. Both [|RAM] and [|hard disk] capacities are measured in bytes, as are file sizes when you examine them in a file viewer. You might hear an advertisement that says, "This computer has a **32-bit** Pentium processor with 64 **megabytes** of RAM and 2.1 **gigabytes** of hard disk space." And many HowStuffWorks articles talk about bytes (for example, [|How CDs Work]). In this article, we will discuss bits and bytes so that you have a complete understanding. The easiest way to understand bits is to compare them to something you know: **digits**. A digit is a single place that can hold numerical values between 0 and 9. Digits are normally combined together in groups to create larger numbers. For example, 6,357 has four digits. It is understood that in the number 6,357, the 7 is filling the "1s place," while the 5 is filling the 10s place, the 3 is filling the 100s place and the 6 is filling the 1,000s place. So you could express things this way if you wanted to be explicit:
 * Decimal Numbers**

(6 * 1000) + (3 * 100) + (5 * 10) + (7 * 1) =6000 + 300 + 50 + 7= 6357 Another way to express it would be to use **powers of 10**. Assuming that we are going to represent the concept of "raised to the power of" with the "^" symbol (so "10 squared" is written as "10^2"), another way to express it is like this:

(6 * 10^3) + (3 * 10^2) + (5 * 10^1) + (7 * 10^0) =6000 + 300 + 50 + 7= 6357 What you can see from this expression is that each digit is a **placeholder** for the next higher power of 10, starting in the first digit with 10 raised to the power of zero. That should all feel pretty comfortable -- we work with decimal digits every day. The neat thing about number systems is that there is nothing that forces you to have 10 different values in a digit. Our **base-10** number system likely grew up because we have 10 fingers, but if we happened to [|evolve] to have eight fingers instead, we would probably have a base-8 number system. You can have base-anything number systems. In fact, there are lots of good reasons to use different bases in different situations. Computers happen to operate using the base-2 number system, also known as the **binary number system** (just like the base-10 number system is known as the decimal number system). Find out why and how that works in the next section.

=The Base-2 System and the 8-bit Byte= The reason computers use the base-2 system is because it makes it a lot easier to implement them with current electronic technology. You could wire up and build computers that operate in base-10, but they would be fiendishly expensive right now. On the other hand, base-2 computers are relatively cheap. So computers use binary numbers, and therefore use **binary digits** in place of decimal digits. The word **bit** is a shortening of the words "Binary digIT." Whereas decimal digits have 10 possible values ranging from 0 to 9, bits have only two possible values: 0 and 1. Therefore, a binary number is composed of only 0s and 1s, like this: 1011. How do you figure out what the value of the binary number 1011 is? You do it in the same way we did it above for 6357, but you use a base of 2 instead of a base of 10. So: (1 * 2^3) + (0 * 2^2) + (1 * 2^1) + (1 * 2^0) =8 + 0 + 2 + 1= 11 You can see that in binary numbers, each bit h