```

:::::::::   ::::::::  :::::::::  ::::::::::

:+:    :+: :+:    :+: :+:    :+: :+:

+:+    +:+ +:+        +:+    +:+ +:+

+#++:++#+  +#++:++#++ +#++:++#:  :#::+::#

+#+    +#+        +#+ +#+    +#+ +#+

#+#    #+# #+#    #+# #+#    #+# #+#

#########   ########  ###    ### ###

http://blacksun.box.sk

_______________________________

___________________I              Topic:           I_____________________

\                   I                               I                    /

\     HTML,        I       Base Number Systems     I   Author:         /

>     Forbze       I                               I                  <

/                  I_______________________________I   Forbze          \

/________________________>                    <__________________________\

```

Well Base Number Systems are the whole entire system that our computers run on, Binary is a Base System. In this case Base 2.

Before the days of languages, such as C++, C, Visual Basic and so on, there was actually Intelligent people slaving away at computers typing up endless pages of machine code. If you want to know more about the history of Machine code and etc. check out some my other tutorials for Blacksun. Well the point im trying to make is that the average computer programmer, back then had done Degrees in mathematics. 80% of the time the programmers had degrees anyway, This degree in mathematics helped them understand the way a computer works, eg. the electronic pulses caused by the computers output of 1's and 0's. This being Binary.

## The Language of Numbers.

At bottom, Computers understand only one language -- the binary code of ones and zero's that represent on-off electronic pulses. Because this code is so difficult for humans, programmers have built more concise ways of expressing the binary numbers that constitute, for example the contents of a computer's memory or the address in memory of each peice of data. T wo numbering systems that can serve as convenient short hand for the binary (base 2) are octal (base 8) and Hexidecimal (base 16). Hexidecimal is sometimes known as "Hex" by programmers. Becuase 8 is raised 2 to the third power ( 8 = 2 * 2 * 2) , one octal digit is the equivilant of three binary digits, similarly, one hexidecimal digit represents 4 binary digits ( 16 is raised to the forth power). The tables below list the decimal dumbers 0 through 16 and there binary, octal, hexidecimal equivalents. In each system, the value of a digit is determined by the value of its place column. The letters A through F in hexadecimal represents the 11th through 16th digits in that system. # The process of Conversion

## Decimal to Binary Subtract the highest possible power of 2 from the decimal number - here, 4 from 5 - and continue subtracting the highest possible power from the remainder, marking a 1 in each binary place column where subtraction occurs and a 0 where it doesn't . Here. one 4, no 2 and one 1 gives binary 101.

## Binary to Decimal Add the values of all the binary places occupied by 1s. Here, to convert the 12- digit binary number 100101101001, add the place values of 2048,256,64,32,8 and 1. The result is the decimal number 2409.

## Binary to Octal Starting with the righmost digit, group the binary digits in threes, treating each three as a seperate binary number with the place values of 4,2 and 1. The sum of each of trio's place values equals one octal digit. Here, the sums of the values of each of the four groups ar 4,5, 5 and 1, making octal 4551.

## Binary to Hexidecimal Again from the right, group the binary digits in fours, treating each four as 1 binary number with the place values 8, 4, 2 and 1. The sum of each group's place values equals one hexidecimal digit. Here, the sums of the three groups are 9, 6 and 9, making hexidecimal 969. Using the same rules as in decimal addition, start by adding the figures in the rightmost, or 1s column: 1 + 1. The result - 2 - is expressed in binary as 10 (one - zero). Write down the 0 and carry the 1. In the 2s column, 1 + 1 again equals 2, or binary 10;write down the 0 and carry the 1 into the 4s column. The result is 100, the binary equivalent of decimal 4.  