Number Systems Concepts
The study of number systems is useful to the student of computing due to the fact that
number systems other than the familiar decimal (base 10) number system are used in the
computer field.
Digital computers internally use the binary (base 2) number system to represent data and
perform arithmetic calculations. The binary number system is very efficient for computers,
but not for humans. Representing even relatively small numbers with the binary system
requires working with long strings of ones and zeroes.
The hexadecimal (base 16) number system (often called "hex" for short) provides us with a
shorthand method of working with binary numbers. One digit in hex corresponds to four
binary digits (bits), so the internal representation of one byte can be represented either by
eight binary digits or two hexadecimal digits.
Less commonly used is the octal (base 8) number system, where one digit in octal
corresponds to three binary digits (bits).
In the event that a computer user (programmer, operator, end user, etc.) needs to examine a
display of the internal representation of computer data (such a display is called a "dump"),
viewing the data in a "shorthand" representation (such as hex or octal) is less tedious than
viewing the data in binary representation. The binary, hexadecimal , and octal number
systems will be looked at in the following pages.
The decimal number system that we are all familiar with is a positional number system. The
actual number of symbols used in a positional number system depends on its base (also called
the radix). The highest numerical symbol always has a value of one less than the base. The
decimal number system has a base of 10, so the numeral with the highest value is 9; the octal
number system has a base of 8, so the numeral with the highest value is 7, the binary number
system has a base of 2, so the numeral with the highest value is 1, etc.
Any number can be represented by arranging symbols in specific positions. You know that in
the decimal number system, the successive positions to the left of the decimal point represent
units (ones), tens, hundreds, thousands, etc. Put another way, each position represents a
specific power of base 10. For example, the decimal number 1,275 (written 1,27510 )* can be
expanded as follows:
1 2 7 510
5 x 100 = 5 x 1 = 5
7 x 101 = 7 x 10 = 70
2 x 102 = 2 x 100 = 200
1 x 103 = 1 x 1000 = 1000
------
1275 10
Remember the mathematical rule that n0 = 1, or any number raised to the zero power is equal
to 1.
Here is another example of an expanded decimal number:
1 0 4 0 610
6 x 100 = 6 x 1 = 6
0 x 101 = 0 x 10 = 0
4 x 102 = 4 x 100 = 400
0 x 103 = 0 x 1000 = 0
1 x 104 = 1 x 10000 = 10000
--------
10406 10
* When doing number system problems, it is helpful to use a subscript to indicate the base of
the number being worked with. Thus, the subscript "10" in 127510 indicates that we are
working with the number 1275 in base 10.
TRY THIS: Expand the following decimal number:
5 1 3 010
The Binary Number System
The same principles of positional number systems we applied to the decimal number system
can be applied to the binary number system. However, the base of the binary number system
is two, so each position of the binary number represents a successive power of two. From
right to left, the successive positions of the binary number are weighted 1, 2, 4, 8, 16, 32, 64,
etc. A list of the first several powers of 2 follows:
20 = 1 21 = 2 22 = 4 23 = 8 24 = 16 25 = 32
26 = 64 27 = 128 28 = 256 29 = 512 210 = 1024 211 = 2048
For reference, the following table shows the decimal numbers 0 through 31 with their binary
equivalents:
Decimal Binary Decimal Binary
0 0 16 10000
1 1 17 10001
2 10 18 10010
3 11 19 10011
4 100 20 10100
5 101 21 10101
6 110 22 10110
7 111 23 10111
8 1000 24 11000
9 1001 25 11001
10 1010 26 11010
11 1011 27 11011
12 1100 28 11100
13 1101 29 11101
14 1110 30 11110
15 1111 31 11111
Number Systems
Converting a Binary Number to a Decimal Number
To determine the value of a binary number (10012, for example), we can expand the number
using the positional weights as follows:
1 0 0 12
1 x 20 = 1 x 1 = 1
0 x 21 = 0 x 2 = 0
0 x 22 = 0 x 4 = 0
1 x 23 = 1 x 8 = 8
------
9 10
Here's another example to determine the value of the binary number 11010102:
1 1 0 1 0 1 02
0 x 20 = 0 x 1 = 0
1 x 21 = 1 x 2 = 2
0 x 22 = 0 x 4 = 0
1 x 23 = 1 x 8 = 8
0 x 24 = 0 x 16 = 0
1 x 25 = 1 x 32 = 32
1 x 26 = 1 x 64 = 64
------
106 10
TRY THIS: Convert the following binary numbers to their decimal equivalents:
(a) 1 1 0 0 1 1 02
(b) 1 1 1 1 1 0 0 12
Number Systems
Converting a Decimal Number to a Binary Number
To convert a decimal number to its binary equivalent, the remainder method can be used.
(This method can be used to convert a decimal number into any other base.) The remainder
method involves the following four steps:
(1) Divide the decimal number by the base (in the case of binary, divide by 2).
(2) Indicate the remainder to the right.
(3) Continue dividing into each quotient (and indicating the remainder) until the divide
operation produces a zero quotient.
(4) The base 2 number is the numeric remainder reading from the last division to the first (if
you start at the bottom, the answer will read from top to bottom).
Example 1: Convert the decimal number 9910 to its binary equivalent:
0
21
1 (7) Divide 2 into 1. The quotient is 0 with a remainder of 1, as indicated.
Since the quotient is 0, stop here.
1
23
1 (6) Divide 2 into 3. The quotient is 1 with a remainder of 1, as indicated.
3
26
0 (5) Divide 2 into 6. The quotient is 3 with a remainder of 0, as indicated.
6
2 12
0 (4) Divide 2 into 12. The quotient is 6 with a remainder of 0, as indicated.
12
2 24
0 (3) Divide 2 into 24. The quotient is 12 with a remainder of 0, as indicated
24
2 49
1 (2) Divide 2 into 49 (the quotient from the previous division). The quotient is 24 with a
remainder of 1, indicated on the right.
HERE ⇒
START
49
2 99
1 (1) Divide 2 into 99. The quotient is 49 with a remainder of 1; indicate the 1
on the right.
The answer, reading the remainders from top to bottom, is 1100011, so 9910 = 11000112.
Number Systems
Example 2: Convert the decimal number 1310 to its binary equivalent:
0
21
1 (4) Divide 2 into 1. The quotient is 0 with a remainder of 1, as indicated.
1
23
1 (3) Divide 2 into 3. The quotient is 1 with a remainder of 1, as indicated.
3
26
0 (2) Divide 2 into 6. The quotient is 3 with a remainder of 0, indicated on the
right.
HERE ⇒
START
6
2 13
1 (1) Divide 2 into 13. The quotient is 6 with a remainder of 1; indicate the 1 on the right.
The answer, reading the remainders from top to bottom, is 1101, so 1310 = 11012.
TRY THIS:
Convert the following decimal numbers to their binary equivalents:
(a) 4910 (b) 2110
Binary Addition
Adding two binary numbers together is easy, keeping in mind the following four addition
rules:
(1) 0 + 0 = 0
(2) 0 + 1 = 1
(3) 1 + 0 = 1
(4) 1 + 1 = 10
Note in the last example that it was necessary to "carry the 1". After the first two binary
counting numbers, 0 and 1, all of the binary digits are used up. In the decimal system, we
used up all the digits after the tenth counting number, 9. The same method is used in both
systems to come up with the next number: place a zero in the "ones" position and start over
again with one in the next position on the left. In the decimal system, this gives ten, or 10. In
binary, it gives 102, which is read "one-zero, base two."
Consider the following binary addition problems and note where it is necessary to carry the 1:
1 11 1111
110 11 100 11 1010 11111
+ 0 0 1 +1 0 + 1 0 1 + 0 1 + 0 1 1 1 + 0 1 0 1 1
111 101 1001 100 10001 101010
TRY THIS: Perform the following binary additions:
(a) 1 0 0 1 (b) 1 1 1 0 (c) 1 0 1 0 1 (d) 1 1 0 1 1 0
+1100 +1101 +00111 +111011
Subtraction Using Complements
Subtraction in any number system can be accomplished through the use of complements. A
complement is a number that is used to represent the negative of a given number.
When two numbers are to be subtracted, the subtrahend* can either be subtracted directly
from the minuend (as we are used to doing in decimal subtraction) or, the complement of the
subtrahend can be added to the minuend to obtain the difference. When the latter method is
used, the addition will produce a high-order (leftmost) one in the result (a "carry"), which
must be dropped.
This is how the computer performs subtraction: it is very efficient for the computer to use the
same "add" circuitry to do both addition and subtraction; thus, when the computer
"subtracts", it is really adding the complement of the subtrahend to the minuend.
* In mathematical terminology, the factors of a subtraction problem are named as follows:
Minuend - Subtrahend = Difference.
To understand complements, consider a mechanical register, such as a car mileage indicator,
being rotated backwards. A five-digit register approaching and passing through zero would
read as follows:
00005
00004
00003
00002
00001
00000
99999
99998
99997
etc.
It should be clear that the number 99998 corresponds to -2. Furthermore, if we add
00005
+ 99998
1 00003
and ignore the carry to the left, we have effectively formed the operation of subtraction: 5 - 2
= 3.
The number 99998 is called the ten's complement of 2. The ten's complement of any decimal
number may be formed by subtracting each digit of the number from 9, then adding 1 to the
least significant digit of the number formed.
In the example above, subtraction with the use of complements was accomplished as follows:
(1) We were dealing with a five-digit subtrahend that had a value of 00002. First, each digit
of the subtrahend was subtracted from 9 (this preliminary value is called the nine's
complement of the subtrahend):
9 9 9 9 9
-0-0-0-0-2
9 9 9 9 7
(2) Next, 1 was added to the nine's complement of the subtrahend (99997) giving the ten's
complement of subtrahend (99998):
99997
+1
99998
(3) The ten's complement of the subtrahend was added to the minuend giving 100003. The
leading (carried) 1 was dropped, effectively performing the subtraction of 00005 - 00002 =
00003.
00005
+99998
100003
The answer can be checked by making sure that 2 + 3 = 5.
Another example: Still sticking with the familiar decimal system, subtract 4589 - 322, using
complements ("eyeballing" it tells us we should get 4267 as the difference).
(1) First, we'll compute the four digit nine's complement of the subtrahend 0322 (we must
add the leading zero in front of the subtrahend to make it the same size as the minuend):
9 9 9 9
-0-3-2-2
9 6 7 7
(2) Add 1 to the nine's complement of the subtrahend (9677) giving the ten's complement of
subtrahend (9678):
9677
+1
9678
(3) Add the ten's complement of the subtrahend to the minuend giving 14267. Drop the
leading 1, effectively performing the subtraction of 4589 - 0322 = 4267.
4589
+9678
14267
The answer can be checked by making sure that 322 + 4267 = 4589.
TRY THIS: Solve the following subtraction problems using the complement method:
(a) 5086 - 2993 =
(b) 8391 - 255 =
Binary Subtraction
We will use the complement method to perform subtraction in binary and in the sections on
octal and hexadecimal that follow. As mentioned in the previous section, the use of
complemented binary numbers makes it possible for the computer to add or subtract numbers
using only circuitry for addition - the computer performs the subtraction of A - B by adding
A + (two's complement of B) and then dropping the carried 1.
The steps for subtracting two binary numbers are as follows:
(1) Compute the one's complement of the subtrahend by subtracting each digit of the
subtrahend by 1. A shortcut for doing this is to simply reverse each digit of the subtrahend -
the 1's become 0's and the 0's become 1's.
(2) Add 1 to the one's complement of the subtrahend to get the two's complement of the
subtrahend.
(3) Add the two's complement of the subtrahend to the minuend and drop the high-order 1.
This is your difference.
Example 1: Compute 110101012 - 10010112
(1) Compute the one's complement of 10010112 by subtracting each digit from 1 (note that a
leading zero was added to the 7- digit subtrahend to make it the same size as the 8-digit
minuend):
1 1 1 1 1 1 1 1
-0-1-0-0-1-0-1-1
1 0 1 1 0 1 0 0
(Note that the one's complement of the subtrahend causes each of the original digits to be
reversed.)
(2) Add 1 to the one's complement of the subtrahend, giving the two's complement of the
subtrahend:
10110100
+1
10110101
(3) Add the two's complement of the subtrahend to the minuend and drop the high-order 1,
giving the difference:
111 1 1
11010101
+10110101
11 0 0 0 1 0 1 0
So 110101012 - 10010112 = 100010102.
The answer can be checked by making sure that 10010112 + 100010102 = 110101012.
Example 2: Compute 111110112 - 110000012
(1) Come up with the one's complement of the subtrahend, this time using the shortcut of
reversing the digits:
Original number: 1 1 0 0 0 0 0 1
One's complement: 0 0 1 1 1 1 1 0
(2) Add 1 to the one's complement of the subtrahend, giving the two's complement of the
subtrahend (the leading zeroes of the one's complement can be dropped):
111110
+1
111111
(3) Add the two's complement of the subtrahend to the minuend and drop the high-order 1,
giving the difference:
1111111
11111011
+111111
100111010
So 111110112 - 110000012 = 1110102.
The answer can be checked by making sure that 110000012 + 1110102 = 111110112.
TRY THIS: Solve the following binary subtraction problems using the complement method:
(a) 110011012 - 101010102 = (b) 1001002 - 111012 =
The Octal Number System
The same principles of positional number systems we applied to the decimal and binary
number systems can be applied to the octal number system. However, the base of the octal
number system is eight, so each position of the octal number represents a successive power of
eight. From right to left, the successive positions of the octal number are weighted 1, 8, 64,
512, etc. A list of the first several powers of 8 follows:
80 = 1 81 = 8 82 = 64 83 = 512 84 = 4096 85 = 32768
For reference, the following table shows the decimal numbers 0 through 31 with their octal
equivalents:
Decimal Octal Decimal Octal
0 0 16 20
1 1 17 21
2 2 18 22
3 3 19 23
4 4 20 24
5 5 21 25
6 6 22 26
7 7 23 27
8 10 24 30
9 11 25 31
10 12 26 32
11 13 27 33
12 14 28 34
13 15 29 35
14 16 30 36
15 17 31 37
Converting an Octal Number to a Decimal Number
To determine the value of an octal number (3678, for example), we can expand the number
using the positional weights as follows:
3 6 78
7 x 80 = 7 x 1 = 7
6 x 81 = 6 x 8 = 48
3 x 82 = 3 x 64 = 192
------
247 10
Here's another example to determine the value of the octal number 16018:
1 6 0 18
1 x 80 = 1 x 1 = 1
0 x 81 = 0 x 8 = 0
6 x 82 = 6 x 64 = 384
1 x 83 = 1 x 512 = 512
------
897 10
Converting a Decimal Number to an Octal Number
To convert a decimal number to its octal equivalent, the remainder method (the same method
used in converting a decimal number to its binary equivalent) can be used. To review, the
remainder method involves the following four steps:
(1) Divide the decimal number by the base (in the case of octal, divide by 8).
(2) Indicate the remainder to the right.
(3) Continue dividing into each quotient (and indicating the remainder) until the divide
operation produces a zero quotient.
(4) The base 8 number is the numeric remainder reading from the last division to the first (if
you start at the bottom, the answer will read from top to bottom).
Example 1: Convert the decimal number 46510 to its octal equivalent:
0
87
7
(3) Divide 8 into 7. The quotient is 0 with a remainder of 7, as indicated.
Since the quotient is 0, stop here.
7
8 58
2
(2) Divide 8 into 58 (the quotient from the previous division). The quotient is 7 with a
remainder of 2, indicated on the right.
HERE ⇒
START
58
8 465
1
(1) Divide 8 into 465. The quotient is 58 with a remainder of 1; indicate the 1 on the right.
The answer, reading the remainders from top to bottom, is 721, so 46510 = 7218.
TRY THIS: Convert the following decimal numbers to their octal equivalents:
(a) 300210 (b) 651210
Octal Addition
Octal addition is performed just like decimal addition, except that if a column of two addends
produces a sum greater than 7, you must subtract 8 from the result, put down that result, and
carry the 1. Remember that there are no such digits as "8" and "9" in the octal system, and
that 810 = 108 , 910 = 118, etc.
Example 1: Add 5438 + 1218 (no carry required):
543
+121
664
Example 2: Add 76528 + 45748 (carries required):
11
7652
+4574
14446
TRY THIS: Perform the following octal additions:
(a) 5 4 3 0 (b) 6 4 0 5
+3241 +1234
Octal Subtraction
We will use the complement method to perform octal subtraction. The steps for subtracting
two octal numbers are as follows:
(1) Compute the seven's complement of the subtrahend by subtracting each digit of the
subtrahend by 7.
(2) Add 1 to the seven's complement of the subtrahend to get the eight's complement of the
subtrahend.
(3) Add the eight's complement of the subtrahend to the minuend and drop the high-order 1.
This is your difference.
Example 1: Compute 75268 - 31428
(1) Compute the seven's complement of 31428 by subtracting each digit from 7:
7 7 7 7
-3-1-4-2
4 6 3 5
(2) Add 1 to the seven's complement of the subtrahend, giving the eight's complement of the
subtrahend:
4635
+1
4636
(3) Add the eight's complement of the subtrahend to the minuend and drop the high-order 1,
giving the difference:
11
7526
+4636
14364
So 75268 - 31428 = 43648
The answer can be checked by making sure that 31428 + 43648 = 75268 .
Example 2: Compute 5458 - 148
(1) Compute the seven's complement of 148 (putting in a leading zero to make it a three-digit number) by
subtracting each digit from
7:
777
-0-1-4
763
(2) Add 1 to the seven's complement of the subtrahend, giving the eight's complement of the subtrahend:
763
+1
764
(3) Add the eight's complement of the subtrahend to the minuend and drop the high-order 1, giving the
difference:
11
545
+764
1531
So 5458 - 148 = 5318
The answer can be checked by making sure that 148 + 5318 = 5458 .
TRY THIS: Solve the following octal subtraction problems using the complement method:
(a) 67768 - 43378 = (b) 54348 - 35568 =
The Hexadecimal Number System
The hexadecimal (base 16) number system is a positional number system as are the decimal number system
and the binary number system. Recall that in any positional number system, regardless of the base, the highest
numerical symbol always has a value of one
less than the base. Furthermore, one and only one symbol must ever be used to represent a value in any position
of the number.
For number systems with a base of 10 or less, a combination of Arabic numerals can be used to represent any
value in that number system. The decimal number system uses the Arabic numerals 0 through 9; the binary
number system uses the Arabic numerals 0 and 1; the octal number system uses the Arabic numerals 0 through
7; and any other number system with a base less than 10 would use the
Arabic numerals from 0 to one less than the base of that number system.
However, if the base of the number system is greater than 10, more than 10 symbols are needed to represent all
of the possible positional values in that number system. The hexadecimal number system uses not only the
Arabic numerals 0 through 9, but also uses the letters A, B, C, D, E, and F to represent the equivalent of 10 10
through 1510, respectively.
For reference, the following table shows the decimal numbers 0 through 31 with their hexadecimal equivalents:
Decimal Hexadecimal Decimal Hexadecimal
0 0 16 10
1 1 17 11
2 2 18 12
3 3 19 13
4 4 20 14
5 5 21 15
6 6 22 16
7 7 23 17
8 8 24 18
9 9 25 19
10 A 26 1A
11 B 27 1B
12 C 28 1C
13 D 29 1D
14 E 30 1E
15 F 31 1F
The same principles of positional number systems we applied to the decimal, binary, and octal number systems
can be applied to the
hexadecimal number system. However, the base of the hexadecimal number system is 16, so each position of
the hexadecimal
number represents a successive power of 16. From right to left, the successive positions of the hexadecimal
number are weighted 1,
16, 256, 4096, 65536, etc.:
16 = 1 16 = 16 16 = 256 16 = 4096 16 = 65536
0 1 2 3 4
Converting a Hexadecimal Number to a Decimal Number
We can use the same method that we used to convert binary numbers and octal numbers to decimal numbers to
convert a hexadecimal
number to a decimal number, keeping in mind that we are now dealing with base 16. From right to left, we
multiply each digit of the
hexadecimal number by the value of 16 raised to successive powers, starting with the zero power, then sum the
results of the
multiplications. Remember that if one of the digits of the hexadecimal number happens to be a letter A through
F, then the
corresponding value of 10 through 15 must be used in the multiplication.
Example 1: Convert the hexadecimal number 20B316 to its decimal equivalent.
2 0 B 316
3 x 160 = 3 x 1 = 3
11 x 161 = 11 x 16 = 176
0 x 162 = 0 x 256 = 0
2 x 163 = 2 x 4096 = 8192
------
8371 10
Example 2: Convert the hexadecimal number 12AE516 to its decimal equivalent.
1 2 A E 516
5 x 160 = 5 x 1 = 5
14 x 161 = 14 x 16 = 224
10 x 162 = 10 x 256 = 2560
2 x 163 = 2 x 4096 = 8192
1 x 164 = 1 x 65536 = 65536
--------
76517 10
TRY THIS. Convert the following hexadecimal numbers to their decimal equivalents:
(a) 2 4 3 F16
(b) B E E F16
Converting a Decimal Number to a Hexadecimal Number
To convert a decimal number to its hexadecimal equivalent, the remainder method (the same method used in
converting a decimal
number to its binary equivalent) can be used. To review, the remainder method involves the following four
steps:
(1) Divide the decimal number by the base (in the case of hexadecimal, divide by 16).
(2) Indicate the remainder to the right. If the remainder is between 10 and 15, indicate the corresponding hex
digit A through F.
(3) Continue dividing into each quotient (and indicating the remainder) until the divide operation produces a
zero quotient.
(4) The base 16 number is the numeric remainder reading from the last division to the first (if you start at the
bottom, the answer
will read from top to bottom).
Example 1: Convert 926310 to its hexadecimal equivalent:
0
16 2
2 (4) Divide 16 into 2. The quotient is 0 with a remainder of 2, as indicated.
Since the quotient is 0, stop here.
2
16 36
4 (3) Divide 16 into 36. The quotient is 2 with a remainder of 4, indicated on the right.
36
16 578
2 (2) Divide 16 into 578 (the quotient from the previous division). The quotient is 36 with a remainder of 2,
indicated on the right.
START
HERE ⇒
578
16 9263
F (1) Divide 16 into 9263. The quotient is 578 with a remainder of 15; so indicate the hex equivalent, "F", on
the right.
The answer, reading the remainders from top to bottom, is 242F, so 926310 = 242F16.
The answer, reading the remainders from top to bottom, is 10A3, so 425910 = 10A316.
TRY THIS: Convert the following decimal numbers to their hexadecimal equivalents:
(a) 6949810 (b) 11426710
Hexadecimal Addition
One consideration is that if the result of an addition is between 10 and 15, the corresponding letter A through F
must be written in the result:
195
+319
4AE
In the example above, 5 + 9 = 14, so an "E" was written in that position; 9 + 1 = 10, so an "A" was written in
that position. A second consideration is that if either of the addends contains a letter A through F, convert the
letter to its decimal equivalent (either by memory or by writing it down) and then proceed with the addition:
3A2
+41C
7BE
A third consideration is that if the result of an addition is greater than 15, you must subtract 16 from the result of
that addition, put down the difference of that subtraction for that position, and carry a 1 over to the next position,
as shown below:
1
DEB
+10E
EF9
In the example above, when B16 (1110) was added to E16 (1410), the result was 2510. Since 2510 is greater than
1510, we subtracted 1610 from the 2510 to get 910. We put the 9 down and carried the 1 over to the next position.
Here is another example with carries:
8F97
+D54C
164E3
TRY THIS: Perform the following hexadecimal additions:
(a) B E D (b) D E A D
+2A9+BEEF
Hexadecimal Subtraction
We will use the complement method to perform hexadecimal subtraction. The steps for subtracting two
hexadecimal numbers are as
follows:
(1) Compute the 15's complement of the subtrahend by subtracting each digit of the subtrahend by 15.
(2) Add 1 to the 15's complement of the subtrahend to get the 16's complement of the subtrahend.
(3) Add the 16's complement of the subtrahend to the minuend and drop the high-order 1. This is your
difference.
Example 1: Compute ABED16 - 1FAD16
(1) Compute the 15's complement of 1FAD16 by subtracting each digit from 15:
15 15 15 15
-1-F-A-D
E052
(2) Add 1 to the 15's complement of the subtrahend, giving the 16's complement of the subtrahend:
E052
+1
E053
(3) Add the 16's complement of the subtrahend to the minuend and drop the high-order 1, giving the difference:
111
ABED
+E053
18C40
So ABED16 - 1FAD16 = 8C4016
The answer can be checked by making sure that 1FAD16 + 8C4016 = ABED16.
TRY THIS: Solve the following hexadecimal subtraction problems using the complement method:
(a) 98AE16 - 1FEE16 = (b) B6A116 - 8B1216 =
Converting Binary-to-Hexadecimal or Hexadecimal-to-Binary
Converting a binary number to its hexadecimal equivalent or vice-versa is a simple matter. Four binary digits
are equivalent to one
hexadecimal digit, as shown in the table below:
Binary Hexadecimal
0000 0
0001 1
0010 2
0011 3
0100 4
0101 5
0110 6
0111 7
1000 8
1001 9
1010 A
1011 B
1100 C
1101 D
1110 E
1111 F
To convert from binary to hexadecimal, divide the binary number into groups of 4 digits starting on the right
of the binary number.
If the leftmost group has less than 4 bits, put in the necessary number of leading zeroes on the left. For each
group of four bits, write
the corresponding single hex digit.
Example 1: 11010011011101112 = ?16 Example 2: 1011011112 = ?16
Answer: Bin: 1101 0011 0111 0111 Answer: Bin: 0001 0110 1111
Hex: D 3 7 7 Hex: 1 6 F
To convert from hexadecimal to binary, write the corresponding group of four binary digits for each hex digit.
Example 1: 1BE916 = ?2 Example 2: B0A16 = ?2
Answer: Hex: 1 B E 9 Answer: Hex: B 0 A
Bin: 0001 1011 1110 1001 Bin: 1011 0000 1010
Converting Binary-to-Octal or Octal-to-Binary
Converting a binary number to its octal equivalent or vice-versa is a simple matter. Three binary digits are
equivalent to one octal
digit, as shown in the table below:
Binary Octal
000 0
001 1
010 2
011 3
100 4
101 5
110 6
111 7
To convert from binary to octal, divide the binary number into groups of 3 digits starting on the right of the
binary number. If the
leftmost group has less than 3 bits, put in the necessary number of leading zeroes on the left. For each group of
three bits, write the
corresponding single octal digit.
Example 1: 1101 0011011101112 = ?8
Answer: Bin: 001 101 001 101 110 111
Oct: 1 5 1 5 6 7
Example 2: 1011011112 = ?8
Answer: Bin: 101 101 111
Oct: 5 5 7
To convert from octal to binary, write the corresponding group of three binary digits for each octal digit.
Example 1: 17648 = ?2
Answer: Oct: 1 7 6 4
Bin: 001 111 110 100
Example 2: 7318 = ?2
Answer: Oct: 7 3 1
Bin: 111 011 001