Ow A Number System Works

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 11

How a Number System Works

Number systems are used to describe the quantity of something or represent certain information. Because
of this, I can say that the word "calculator" contains ten letters. Our number system, the decimal system,
uses ten symbols. Therefore, decimal is said to be Base Ten. By describing systems with bases, we can
gain an understanding of how that particular system works.

When we count in Base Ten, we count starting with zero and going up to nine in order.

0, 1, 2, 3, 4, 5, 6, 7, 8, 9, …

Once we reach the last symbol, we create a new placement in front of the first and count that up.

8, 9, 10, 11, 12, … , 19, 20, …

This continues when we run out of symbols for that placement. So, after 99, we go to 100.

The placement of a symbol indicates how much it is worth. Each additional placement is an additional
power of 10. Consider the number of 2853. We know this number is quite large, for example, if it pertains to
the number of apples in a basket. That's a lot of apples. How do we know it is large? We look at the
number of digits.

Each additional placement is an additional power of 10, as stated above. Consider this chart.

103 102 101 100

digit digit digit digit

*1000 *100 *10 *1

Each additional digit represents a higher and higher quantity. This is applicable for Base 10 as well as to
other bases. Knowing this will help you understand the other bases better.

Binary
Binary is another way of saying Base Two. So, in a binary number system, there are only two symbols
used to represent numbers: 0 and 1. When we count up from zero in binary, we run out of symbols much
more frequently.

0, 1, …

From here, there are no more symbols. We do not go to 2 because in binary, a 2 doesn't exist. Instead, we
use 10. In a binary system, 10 is equal to 2 in decimal.

We can count further.

Binary 0 1 10 11 100 101 110 111 1000 1001 1010

Decimal 0 1 2 3 4 5 6 7 8 9 10
Just like in decimal, we know that the more digits there are, the larger the number. However, in binary, we
use powers of two. In the binary number 1001101, we can create a chart to find out what this really means.

26 25 24 23 22 21 20

1 0 0 1 1 0 1

64+0+0+8+4+0+1

77

Since this is base two, however, the numbers don't get quite as large as it does in decimal. Even still, a
binary number with 10 digits would be larger than 1000 in decimal.

The binary system is useful in computer science and electrical engineering. Transistors operate from the
binary system, and transistors are found in practically all electronic devices. A 0 means no current, and a 1
means to allow current. With various transistors turning on and off, signals and electricity is sent to do
various things such as making a call or putting these letters on the screen.

Computers and electronics work with bytes or eight digit binary numbers. Each byte has encoded
information that a computer is able to understand. Many bytes are stringed together to form digital data that
can be stored for use later.

Octal
Octal is another number system with less symbols to use than our conventional number system. Octal is
fancy for Base Eight meaning eight symbols are used to represent all the quantities. They are 0, 1, 2, 3, 4,
5, 6, and 7. When we count up one from the 7, we need a new placement to represent what we call 8 since
an 8 doesn't exist in Octal. So, after 7 is 10.

1 1 12 1 20 30 7 10
Octal 0 1 2 3 4 5 6 7
0 1 … 7 … … 7 0

Deci 10 1 16 24 6
0 1 2 3 4 5 6 7 8 9 64
mal … 5 … … 3

Just like how we used powers of ten in decimal and powers of two in binary, to determine the value of a
number we will use powers of 8 since this is Base Eight. Consider the number 3623 in base eight.

83 82 81 80

3 6 2 3

1536+384+16+3
1939

Each additional placement to the left has more value than it did in binary. The third digit from the right in
binary only represented 23-1, which is 4. In octal, that is 83-1which is 64.

Hexadecimal
The hexadecimal system is Base Sixteen. As its base implies, this number system uses sixteen symbols to
represent numbers. Unlike binary and octal, hexadecimal has six additional symbols that it uses beyond the
conventional ones found in decimal. But what comes after 9? 10 is not a single digit but two… Fortunately,
the convention is that once additional symbols are needed beyond the normal ten, letters are to be used.
So, in hexadecimal, the total list of symbols to use is 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, and F. In a
digital display, the numbers B and D are lowercase.

When counting in hexadecimal, you count 0, 1, 2, and so on. However, when you reach 9, you go directly
to A. Then, you count B, C, D, E, and F. But what is next? We are out of symbols! When we run out of
symbols, we create a new digit placement and move on. So after F is 10. You count further until you reach
19. After 19, the next number is 1A. This goes on forever.

Hexade 1 11 1 1 1 1C 9 A
9 A B C D E F
cimal 0 … 9 A B … F 0

1 1
1 1 1 1 1 1 1 2 2 2
Decimal 9 17 28 5 6
0 1 2 3 4 5 6 5 6 7
9 0

Digits are explained as powers of 16. Consider the hexadecimal number 2DB7.

163 162 161 160

2 D B 7

8192+3328+176+7

11703

As you can see, placements in hexadecimal are worth a whole lot more than in any of the other three
number systems.

Conversion
It is important to know that 364 in octal is not equal to the normal 364. This is just like how a 10 in binary is
certainly not 10 in decimal. 10 in binary (this will be written as 102 from now on) is equal to 2. 108 is equal to
8. How on earth do we know this? What is 20C.38F16, and how do we find out?

Here is why it is important to understand how the number systems work. By using our powers of the base
number, it becomes possible to turn any number to decimal and from decimal to any number.
Base to Decimal
So, we know that 3648 is not equal to the decimal 364. Then what is it? There is a simple method in
converting from any base to the decimal base ten. If you remember how we dissected the numbers above,
we used powers, such as 24, and ended up with a number we understand. This is exactly what we do to
convert from a base to decimal. We find out the true value of each digit according to their placement and
add them together.

In a formula, this algorithm looks like:

(1)
V10=vpBp+vp−1Bp−1+...+v1B+v0

Where V10 is the decimal value, v is the digit in a placement, p is the placement from the right of the
number assuming the rightmost placement is 0, and B is the starting base. Do not be daunted by the
formula! We are going to go through this one step at a time.

So, let us say we had the simple hexadecimal number 2B. We want to know what this number is in decimal
so that we can understand it better. How do we do this?

Let us use the formula above. Define every variable first. We want to find V10, so that is unknown. The
number 2B16 has two positions since it has two digits. p therefore is one less than that1, so p is 1. The
number is in base 16, so B is 16. Finally, we want to know what v is, but there are multiple v's. You have
v1 and v0. This refers to the value of the digit in the subscripted position. v1 refers to the digit in position one
(the second digit from the right). So, v1 is 2. v0 is the first digit which is B. In the case of the conversion, you
must convert all the letters to what they are in decimal. B is 11 in decimal, so v0 is 11.

Now, plug all this into the formula:

(2)
V10=2(161)+11(160)V10=2(16)+11(1)V10=32+11V10=43

Therefore, 2B16 is equal to 43.

Now, let me explain how this works. Remember how digit placement affects the actual value? For example,
in the decimal number 123, the "1" represents 100 which is 1*102. The "2" is 20, or 2*101. Likewise, in the
number 2B16, the "2" is 2*161, and the B is 11*160.

We can determine the value of numbers in this way. For the number 3648, we will make a chart that
exposes the decimal value of each individual digit. Then, we can add them up so that we have the whole.
The number has three digits, so starting from the right, we have position 0, position 1, and position 2. Since
this is base eight, we will use powers of 8.

82 81 80

3 6 4

Now, 82 is 64. 81 is 8. 80 is 1. Now what?

Remember what we did with the decimal number 123? We took the value of the digit times the respective
power. So, considering this further…

3*64 6*8 4*1


192 48 4

Now, we add the values together to get 244. Therefore, 3648 is equal to 24410.

In the same way that for 123, we say there is one group of 100, two groups of 10, and three groups of 1, for
octal and the number 364, there are three groups of 64, six groups of 8, and four groups of 1.

Decimal to Base
Just like how we can convert from any base to decimal, it is possible to convert decimal to any base. Let us
say that we want to represent the number 23610 in binary, octal, and hexadecimal. What we need to do is
pretty much reverse whatever we did above. There isn't really a good formula for this, but there is an
algorithm that you can follow which will help accomplish what we want.

(3)
(1)LetP=int(V−−√B)(2)Letv=int(V÷BP)(visthenextdigittotheright)(3)MakeV=V−vBp(4)Repeatsteps
1through3untilp=0

This algorithm may look confusing at first, but let us go through an example to see how it can be used. We
want to represent 236 in binary, octal, and hexadecimal. So, let's try getting it to binary first.

The first step is to make p equal to int(V−−√B). B is the base we want to convert to which is 2. The V is the
number we want to convert, 236. Essentially, we are taking the square root of 236 and disregarding the
decimal part. Doing this makes p become 7.

Step two says to let v equal our number V divided by Bp. Bp is 27, or 128, and the integer part of 236 divided
by 128 is 1. Therefore, our first digit on the left is 1. Now, we actually change V to become V minus the digit
times the Bp. So, V will now be 236-128, or 108.

We simply repeat the process until the p becomes a zero. When p becomes zero, we complete the steps a
last time and then end.

So, since V is now 108, p becomes 6. 108 divided by 26 is 1. The 1 goes to the right of the 1, so now we
have 11. V becomes 44 since 108-64 is 44.

How?
Now you might be asking yourself how to read these numbers. Well, that’s not so difficult. First, I’ll give a
general mathematical explanation which can be fit into one formula:

(4)
V=vBP

In human language: the value of the cipher in the number is equal to the value of the cipher on its own
multiplied by the base of the number system to the power of the position of the cipher from left to right in
the number, starting at 0. Read that a few times and try to understand it.

Thus, the value of a digit in binary doubles every time we move to the left. (see table below)

From this follows that every hexadecimal cipher can be split up into 4 binary digits. In computer language: a
nibble. Now take a look at the following table:
Binary Numbers

8 4 2 1 Hexadecimal Value Decimal Value

0 0 0 0 0 0

0 0 0 1 1 1

0 0 1 0 2 2

0 0 1 1 3 3

0 1 0 0 4 4

0 1 0 1 5 5

0 1 1 0 6 6

0 1 1 1 7 7

1 0 0 0 8 8

1 0 0 1 9 9

1 0 1 0 A 10

1 0 1 1 B 11

1 1 0 0 C 12

1 1 0 1 D 13

1 1 1 0 E 14

1 1 1 1 F 15

Another interesting point: look at the value in the column top. Then look at the values. You see what I
mean? Yeah, you’re right! The bits switch on and off following their value. The value of the first digit
(starting from the right), goes like this: 0,1,0,1,0,1,0,1,0,1,… Second digit: 0,0,1,1,0,0,1,1,0,0,1,1,0,0…
Third digit (value=4): 0,0,0,0,1,1,1,1,0,0,0,0,1,1,1,1,… And so on…
Now, what about greater numbers? Therefore we’ll need an extra digit. (but I think you figured that out by
yourself). For the values starting from 16, our table looks like this:

Binary Numbers

16 8 4 2 1 Hexadecimal Value Decimal Value

1 0 0 0 0 10 16

1 0 0 0 1 11 17

1 0 0 1 0 12 18

1 0 0 1 1 13 19

1 0 1 0 0 14 20

1 0 1 0 1 15 21

1 0 1 1 0 16 22

1 0 1 1 1 17 23

1 1 0 0 0 18 24

1 1 0 0 1 19 25

1 1 0 1 0 1A 26

1 1 0 1 1 1B 27

1 1 1 0 0 1C 28

1 1 1 0 1 1D 29

1 1 1 1 0 1E 30

1 1 1 1 1 1F 31
For octals, this is similar, the only difference is that we need only 3 digits to express the values 1->7. Our
table looks like this:
Binary Numbers

4 2 1 Octal Value Decimal Value

0 0 0 0 0

0 0 1 1 1

0 1 0 2 2

0 1 1 3 3

1 0 0 4 4

1 0 1 5 5

1 1 0 6 6

1 1 1 7 7

Conversion.
In the latter topic I explained the logic behind the binary, hexadecimal and octal number systems. Now I’ll
explain something more practical. If you fully understood the previous thing you can skip this topic.

From decimal to binary


 Step 1: Check if your number is odd or even.
 Step 2: If it's even, write 0 (proceeding backwards,
adding binary digits to the left of the result).
 Step 3: Otherwise, if it's odd, write 1 (in the same
way).
 Step 4: Divide your number by 2 (dropping any
fraction) and go back to step 1. Repeat until your
original number is 0.

An example:
Convert 68 to binary:

 68 is even, so we write 0.
 Dividing 68 by 2, we get 34.
 34 is also even, so we write 0 (result so far - 00)
 Dividing 34 by 2, we get 17.
 17 is odd, so we write 1 (result so far - 100 -
remember to add it on the left)
 Dividing 17 by 2, we get 8.5, or just 8.
 8 is even, so we write 0 (result so far - 0100)
 Dividing 8 by 2, we get 4.
 4 is even, so we write 0 (result so far - 00100)
 Dividing 4 by 2, we get 2.
 2 is even, so we write 0 (result so far - 000100)
 Dividing 2 by 2, we get 1.
 1 is odd, so we write 1 (result so far - 1000100)
 Dividing by 2, we get 0.5 or just 0, so we're done.
 Final result: 1000100

From binary to decimal


 Write the values in a table as shown before. (or do
so mentally)
 Add the value in the column header to your
number, if the digit is turned on (1).
 Skip it if the value in the column header is turned
off (0).
 Move on to the next digit until you’ve done them
all.

An example:
Convert 101100 to decimal:

 Highest digit value: 32. Current number: 32


 Skip the "16" digit, its value is 0. Current number:
32
 Add 8. Current number: 40
 Add 4. Current number: 44
 Skip the "2" and "1" digits, because their value is
0.
 Final answer: 44

From decimal to hexadecimal.


THIS IS ONLY ONE OF THE MANY WAYS!

 Convert your decimal number to binary


 Split up in nibbles of 4, starting at the end
 Look at the first table on this page and write the
right number in place of the nibble

(you can add zeroes at the beginning if the number of bits is not divisible by 4, because, just as in decimal,
these don’t matter)

An example:
Convert 39 to hexadecimal:

 First, we convert to binary (see above). Result:


100111
 Next, we split it up into nibbles: 0010/0111 (Note: I
added two zeroes to clarify the fact that these are
nibbles)
 After that, we convert the nibbles separately.
 Final result: 27

From hexadecimal to decimal


*Check the formula in the first paragraph and use it on the ciphers in your hexadecimal number. (this
actually works for any conversion to decimal notation)

An example:
Convert 1AB to decimal:

 Value of B = 160×11. This gives 11, obviously


 Value of A = 161×10. This gives 160. Our current
result is 171.
 Value of 1 = 162×1. This gives 256.
 Final result: 427

From decimal to octal


 Convert to binary.
 Split up in parts of 3 digits, starting on the right.
 Convert each part to an octal value from 0 to 7

Example: Convert 25 to octal

 First, we convert to binary. Result: 11001


 Next, we split up: 011/001
 Conversion to octal: 31

From octal to decimal


Again, apply the formula from above

Example: convert 42 to decimal

 Value of 2=80×2=2
 Value of 4=81×4=32
 Result: 34

Fun Facts
OK, these may not be 100% "fun", but nonetheless are interesting.

 Do you tend to see numbers beginning with 0x?


This is common notation to specify hexadecimal
numbers, so you may see something like:

0x000000
0x000002
0x000004

This notation is most commonly used to list computer addresses, which are a whole different story.

 This is pretty obvious, but you can "spell" words


using hexadecimal numbers. For example:
o CAB = 3243 in decimal notation.

End
Did you understand everything? If you think so, test yourself:

Bin Dec Hex

… … 3A

… 76 …

101110 … …

… 88 …

1011110 … …

… … 47

Make some exercises yourself, if you want some more.

Footnotes
1. It is one less because the rightmost position is 0, not 1. So p is always one less than the number of
digits.
_reference
Help | Terms of Service | Privacy | Report a bug

You might also like