NUMBERING SYSTEMS
AUTHOR : ALAN SMITH
FROM : CLARKSVILLE COMMODORE
USERS GROUP
To program effectively you must have an understanding of how the Computer stores numbers . Also you must be able to convert from one numbering system ( base ) to another . Human beings understand the Base 10 numbering system . Computers on the other hand store items using the Binary ( base 2 ) numbering system because the computers electronic circuitry only has two states - the circuit is either ON or OFF . These two conditions can best be represented by a numbering system that only has two digits , 0 and 1 . In advanced programming you may want to change only one Bit in a Byte so you must be able to read Binary numbers . An eight bit word computer can only have the numbers 0 through 255 stored in a single Byte but these can be single digit numbers such as 0 - 9 or double digit numbers such as 10 - 99 or even triple digit numbers 100 - 255 . If numbers were to be stored in Denary the length of a byte would vary from 1 to 3 bits this would make programming extremely difficult . Since each Byte must be the same length a system must be used that will accomplish this .
Binary representations of the numbers 0 - 255 fill the requirement nicely . Later if you program in Assembly Language , Hexadecimal codes are used because the numbers 0 - 255 can be represented by 2 Hex digits . We use ten digits ( 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 & 0 ) in Base 10 to represent any number from 0 to as high as we desire to count . If we were to start counting in Base 10 we would say 1 2 3 4 5 6 7 8 9 after the count of 9 we have ran out of digits and need some way to continue the count . We then place a 0 in the extreme right hand column to signify that we are starting the count over we then place a 1 in the next column to the left to signify that we have been through all of the digits in our numbering system 1 time . We then go back to the extreme right hand column and start counting units again that is 11 12 13 14 etc . When we have used all of our digits again - we place a 0 in the right column and a 2 in the left column to indicate that we have gone through the unit count 2 times . We call the Right hand Column the Units Column and the left Column the Tens column - to keep track of the number of times we have gone through the tens column we add another column to the left ( the Hundreds column ). Each column to the left has a value of 10 times the column to its immediate right .
Base two ( Binary ) uses exactly the same system except instead of 10 digits we only have two digits to work with . The right most column contains the units the next column to the left contains the Twos the next the Fours the next the Eights and so on . Notice that each column to the left has a value that is Two times that of the column to its immediate right .
A number such as 212 in Base Ten means that we have Two Hundreds plus 1 Ten plus 2 units ( ones ). The same number in Binary would be written 11010100 indicating that we have one 128 plus one 64 plus zero 32 ' s plus one 16 plus zero 8 ' s plus one 4 plus zero 2 ' s plus zero 1 ' s . 128 + 64 + 16 + 4 = 212 . It is possible to use any base as a numbering system . The Japanese Abacus or Soriban use the Bi - Quinary ( 2 fives ) numbering system . The Mayan civilization used base 20 . With just a little thought and practice you will be able to translate from any numbering system to another .