Difference between revisions of "Number Systems"

From Coder Merlin
(Created page with "= Number Systems = == Positional Notation == '''Positional notation''' (sometimes called '''place-value notation''') is a method of encoding numbers. It differs from other not...")
 
Line 45: Line 45:
  |                || 2048 || 448 || 24 || 5
  |                || 2048 || 448 || 24 || 5
  |}
  |}
Note that in this case, the right-most digit is, as always, representative of units (ones), just as in any positional system. However, moving one digit to the left, because we’re now using an octal system, the position indicates the number of eights (not tens). The next position to the left indicates the number of sixty-fours (not hundreds) and the final position indicates the number of 512’s. As before, we multiply each digit by its corresponding position multiplier to obtain the value of the entire number:
4 &bull; 8<sup>3</sup> + 7 &bull; 8<sup>2</sup> + 3 &bull; 8<sup>1</sup> + 5 &bull; 8<sup>0</sup> =<br/>
2,048<sub>10</sub> + 448<sub>10</sub> + 24<sub>10</sub> + 5<sub>10</sub> =<br/>
2,525<sub>10</sub>
== Hexadecimal System ==
The hexadecimal (six and ten) uses sixteen digits to represent a number:<br />
<pre>
0 1 2 3 4 5 6 7 8 9 A B C D E F
</pre>
Note that because we only have ten digits in our familiar decimal system, we use the letters A through F to represent the additional six digits in the hexadecimal system. Remember that these are ''digits'', that is, A represents 10, B represents 11, and so on up to F which represents 15.
Let’s consider the value of a hexadecimal number: B59C<sub>16</sub>
What is the ''decimal'' value of this number?
{| class="wikitable" style="text-align:right;"
| Digit at position:  || B || 5 || 9 || C
|-
| Position multiplier: || 16<sup>3</sup> || 16<sup>2</sup> || 16<sup>1</sup> || 16<sup>0</sup>
|-
| Position value: || B &bull; 16<sup>3</sup> || 5 &bull; 16<sup>2</sup> || 9 &bull; 16<sup>1</sup> || C &bull; 16<sup>0</sup>
|-
|                || 45,056 || 1280 || 144 || 12
|}
As always, we multiply each digit by its corresponding position multiplier to obtain the value of the entire number:
B &bull; 16<sup>3</sup> + 5 &bull; 16<sup>2</sup> + 9 &bull; 16<sup>1</sup> + C &bull; 16<sup>0</sup> =<br/>
45,056<sub>10</sub> + 1280<sub>10</sub> + 144<sub>10</sub> + 12<sub>10</sub> =<br/>
46,492<sub>10</sub>
== Binary System ==
The binary system (two) uses two digits to represent a number:<br/>
<pre>
0 1
</pre>
Let’s consider the value of a binary number: 1011 1010<sub>2</sub><br/>
What is the decimal value of this number?
{| class="wikitable" style="text-align:right;"
| Digit at position:  || 1 || 0 || 1 || 1 || 1 || 0 || 1 || 0
|-
| Position multiplier: || 2<sup>7</sup> || 2<sup>6</sup> || 2<sup>5</sup> || 2<sup>4</sup> || 2<sup>3</sup> || 2<sup>2</sup> || 2<sup>1</sup> || 2<sup>0</sup>
|-
| Position value: || 1 &bull; 2<sup>7</sup> || 0 &bull; 2<sup>6</sup> || 1 &bull; 2<sup>5</sup> || 1 &bull; 2<sup>4</sup> || 1 &bull; 2<sup>3</sup> || 0 &bull; 2<sup>2</sup> || 1 &bull; 2<sup>1</sup> || 0 &bull; 2<sup>0</sup>
|-
|                || 128 || 0 || 32 || 16 || 8 || 0 || 2 || 0
|}
Multiplying each digit by its corresponding position multiplier to obtain the value of the entire number:
1 &bull; 2<sup>7</sup> + 0 &bull; 2<sup>6</sup> + 1 &bull; 2<sup>5</sup> + 1 &bull; 2<sup>4</sup> + 1 &bull; 2<sup>3</sup> + 0 &bull; 2<sup>2</sup> + 1 &bull; 2<sup>1</sup> + 0 &bull; 2<sup>0</sup> =<br/>
128<sub>10</sub> + 0<sub>10</sub> + 32<sub>10</sub> + 16<sub>10</sub> + 8<sub>10</sub> + 0<sub>10</sub> + 2<sub>10</sub> + 0<sub>10</sub> =<br/>
186<sub>10</sub>

Revision as of 20:48, 16 March 2019

Within these castle walls be forged Mavens of Computer Science ...
— Merlin, The Coder

Number Systems[edit]

Positional Notation[edit]

Positional notation (sometimes called place-value notation) is a method of encoding numbers. It differs from other notations (such as Roman numerals) in that it uses the same symbol for different orders of magnitude depending on its position. For example, consider the number 23. The “3” indicates 3 ones, because it is in the ones position. The “2”, however, indicates 2 tens, because it is in the tens position. We know the value of a position by its location within the number. As we move left in a number, each position is valued at ten times the prior position. It might help if we label each position using power notation. Consider the number 123:

Positional Notation.png

The “3” is the right-most, and therefore the lowest-valued position, representing “ones” with a position multiplier of 100 (that is, 10 raised to the zero power, or 1). The “2” is located one position to the left, so we multiply by 10 again giving us a position multiplier of 101 (that is, 10 raised to the first power, or 10). Finally, the “1” is located one position to the left, so we again multiply by 10 giving us a position multiplier of 102 (that is, 10 raised to the second power, or 100). By multiplying each digit by its corresponding position multiplier, we can obtain the value of the entire number:

1 * 102 + 2 * 101 + 3 * 100 =
100 + 20 + 3 =
123

While we generally understand the mechanics of this process in the decimal system, thinking about how it actually works will enable us to consider other systems.

Number Base[edit]

The radix or base is the number of unique digits, including zero, used to represent numbers in a positional numeral system. The base is normally written as a subscript to the right of the number. For example, the decimal number 123 would formally be written as (123)10
Note that the parentheses are sometimes not written: 12310
In the case of decimal (base 10) numbers, the subscripted 10 is often assumed and not written.

Decimal System[edit]

The decimal system is the system with which we are most familiar. It is a decimal system because it contains ten unique digits:

0 1 2 3 4 5 6 7 8 9

For any (integer) value larger than 9, we’re required to use positional notation. Please keep in mind that “10” is not a digit. Rather, it’s a number consisting of two digits, a “1” in the tens (101) position and a “0” in the ones position (100).

Octal System[edit]

The octal system uses eight unique digits to represent a number:

0 1 2 3 4 5 6 7

Let’s consider the value of an octal number: 47358

What is the decimal value of this number? We use exactly the same method that we use for knowing the value in any system:

Digit at position: 4 7 3 5
Position multiplier: 83 82 81 80
Position value: 4 • 83 7 • 82 3 • 81 5 • 80
2048 448 24 5

Note that in this case, the right-most digit is, as always, representative of units (ones), just as in any positional system. However, moving one digit to the left, because we’re now using an octal system, the position indicates the number of eights (not tens). The next position to the left indicates the number of sixty-fours (not hundreds) and the final position indicates the number of 512’s. As before, we multiply each digit by its corresponding position multiplier to obtain the value of the entire number:

4 • 83 + 7 • 82 + 3 • 81 + 5 • 80 =
2,04810 + 44810 + 2410 + 510 =
2,52510

Hexadecimal System[edit]

The hexadecimal (six and ten) uses sixteen digits to represent a number:

0 1 2 3 4 5 6 7 8 9 A B C D E F

Note that because we only have ten digits in our familiar decimal system, we use the letters A through F to represent the additional six digits in the hexadecimal system. Remember that these are digits, that is, A represents 10, B represents 11, and so on up to F which represents 15.

Let’s consider the value of a hexadecimal number: B59C16

What is the decimal value of this number?

Digit at position: B 5 9 C
Position multiplier: 163 162 161 160
Position value: B • 163 5 • 162 9 • 161 C • 160
45,056 1280 144 12

As always, we multiply each digit by its corresponding position multiplier to obtain the value of the entire number:

B • 163 + 5 • 162 + 9 • 161 + C • 160 =
45,05610 + 128010 + 14410 + 1210 =
46,49210

Binary System[edit]

The binary system (two) uses two digits to represent a number:

0 1

Let’s consider the value of a binary number: 1011 10102
What is the decimal value of this number?

Digit at position: 1 0 1 1 1 0 1 0
Position multiplier: 27 26 25 24 23 22 21 20
Position value: 1 • 27 0 • 26 1 • 25 1 • 24 1 • 23 0 • 22 1 • 21 0 • 20
128 0 32 16 8 0 2 0

Multiplying each digit by its corresponding position multiplier to obtain the value of the entire number:

1 • 27 + 0 • 26 + 1 • 25 + 1 • 24 + 1 • 23 + 0 • 22 + 1 • 21 + 0 • 20 =
12810 + 010 + 3210 + 1610 + 810 + 010 + 210 + 010 =
18610