Numbering Systems.
Humans use as reference counting, a numbering system based on the number ten (10). This numbering system is known as the DECIMAL system, and has its origin in the use of the fingers of the hands as Assistant principal of count. For number greater than ten, the decimal system, although a little erratic at the beginning (eleven, twelve, etc.), regulates subsequently, with the use of consistent groups (twenty, twenty-one, thirty, thirty-one, and so…).
In the case of computers, such as electrical equipment for the purpose, the count is slightly different since limitations allow only can to distinguish States of a component such as a switch with its OFF and ON positions.
In this way, we have the conventional representation used for the interpretation of these conditions, is to use the number 0 to symbolize the condition of OFF, and the number 1 for the ON condition.
This system of numbering which based their principle in the use of two digits, we will call binary system, and from this moment we must accept it as the only way to “direct” communication that understands one computer either.
Let’s see now how it is carried out numerical interpretation, by a computer, using this elementary numbering system.
We had previously defined to the memory of the computer as a series of boxes composed of groups of BITS (eight in our case), and who called BYTES. Each of these BITS could take any one of the values 0 and 1, allowing us to get “words” like for example:
00011001
From the point of view of the binary numbering system, this word is known as a “string of binary digits”, and corresponds to a value in the DECIMAL numbering system.
The correspondence in the decimal system, of any binary number, is obtained by applying the concept of numerical BASE. In general, for any numbering system, can be defined as BASE numeric number that gives origin to the beginning of the count. Thus, for the DECIMAL system we can talk about BASE 10, system binary will use BASE 2, etc.
For example, the decimal number 743 can be represented as:
(7X102) + (4X101) + (3X100)
= 700 + 40 + 3
= 743
Similarly, a binary number as represented by the string 00011001 can be carried to its decimal equivalent using the same principle:
(1X24) + (1X23) + (0X22) + (0X21) + (1X20)
= 16 + 8 + 0 + 0 + 1
= 25
As we can see, the binary systems and DECIMAL work similarly, except that the number of digits required to express any number, is greater in the event that we do so with binary digits. Indeed, if we had used decimal digits for the expression of number 25, we would have only had to use 2, while to express this issue using binary digits (11001) require 5.
Obviously, while the computers only understand and operate with binary numbers, its big advantage over human beings is the speed which perform enormous amounts of operations per second, still working with those long strings of zeros and ones that are so difficult to understand for us and much more, to memorize.
Because of this, man has devised different notation systems that contribute to an easier communication with computers. One of these systems is based on the use of the numbering system HEXADECIMAL, which consists of the use of the numerical base 16.
The following table shows the elements that make up the hexadecimal numbering system, as well as his correspondence with elements of the decimal and binary numbering systems .
HEX. DEC. BIN.
0……………………………..0……………………….0000
1……………………………..1……………………….0001
2……………………………..2……………………….0010
3……………………………..3……………………….0011
4……………………………..4……………………….0100
5……………………………..5……………………….0101
6……………………………..6……………………….0110
7……………………………..7……………………….0111
8……………………………..8……………………….1000
9……………………………..9……………………….1001
A……………………………..10………………………1010
B……………………………..11………………………1011
C……………………………..12………………………1100
D……………………………..13………………………1101
E……………………………..14………………………1110
F……………………………..15………………………1111
TABLE 1
Here is an example of numerical representation in the case of the hexadecimal number 2F:
2F = (2X161) + (FX160)
= 32 + (Fx1)
= 32 + 15
= 47 in decimal.
Number 47 decimal is represented as 101111 in binary, and is clear that the use of 2F is much easier to visualize and understand.
While it is true that through the use of hexadecimal numbering can either be directly understood by the computer, it is not less that operators can facilitate his work of conversion because of the peculiarity of the relationship between the two systems, which consists of the following:
- The base of the binary system is 2
- The base of the hexadecimal system is 16
- The fourth power of 2 is 16.
Together with the fact that a byte can be divided into two groups of 4 bits, and these groups to allow the application of the following rules:
- To convert hexadecimal to binary, you have to convert each hexadecimal digit by the four corresponding bits in binary (see table 1).
- To convert binary to hexadecimal, you should break the binary number into groups of four bits (from right to left) and then replace each of the groups by the corresponding hexadecimal digit.
In this way, and if we take into account that in our case we have as reference unit a byte (eight-bit group), we will have to “casually”, the greatest number in binary within the byte (11111111), coincides with the greatest number expressed by a number (FF) two-digit hexadecimal, it is 255, the greatest number possible expressed serious 1111111111111111 (16 numbers one) and this would be represented in hexadecimal as FFFF is not more than 65536.
As we can see, there is a curious relationship between these numbers that we wanted to illustrate. For example, when referring to the memory capacity of a computer, we had said that this average in kilobytes and its multiples, and that these were nothing more than a group of multiples of 1024 bytes. This indicates, that if we are talking about a computer with 64 K we are referring to a real capacity of 1024 X 64 = 65536 bytes…
All these “coincidences” have a logical explanation, but enter more deeply into such explanations, it would involve too much away from the objective of this website, so we leave them for a later opportunity.