**Ordinal** numbers are positional. Back in my school days after term exams the clever ones were positioned 1^{st} or 2^{nd} in class. Those near the bottom had a position like 37^{th}. In more modern times we might find that on our 4th or 5th attempt at making a phone connection we hear an automated voice telling us we are 7th in the queue. It is the fault of ordinal numbers. But first choice isn’t always best as divorce lawyers well know.

**Nominal** numbers are references. Find them on a footballer’s shirt, on your house door, identifying your bank account or referring to a seat location at some venue. Your home network and the whole of the world wide web use internet protocol numbers (IP addresses) to identify connected users, servers and other communicating devices. Ian Fleming’s James Bond was known via a nominal number. Clearly some nominal numbers have an order as with ordinal numbers.

**Cardinal** numbers are counting numbers. We have words for them like eight and symbols for them like 6 yet by themselves they are abstract and meaningless. Six is meaningless, 6 of what you ask? Do you mean 6 apples, 6 miles, £6, 6 years, 6 kilograms, 6 atmospheres, 6 Kilowatts or 6 of something else? The list is considerable. However in pure mathematics we often manipulate cardinal numbers without knowing what they refer to.

**Counting isn’t always in Decimal 10’s. **It is most likely man first started counting with his fingers. Our ten based decimal system arose because our two hands comprised of ten digits. If man had evolved with three fingers and a thumb I suggest we would have been counting in eights and 23 instead of meaning 2 lots of 10 plus 3 would mean 2 lots of eight plus 3 digits (19, in our decimal system).

Computers processors only recognise two states and so count in twos. They understand binary numbers like 10, 100, 1000, 1111 and 101101011101100 that in our ten based system equate to 2, 4, 8, 15 and 46,553. Your device processor has a built in instruction set and receives extremely lengthy binary numbers called machine code. It recognises some of those binary numbers as instructions that tell it to expect and how to act on following data or where to get data from. They may tell it to open a port to one of its connected devices (monitor, usb, hard drive, etc) and then send data to that device

Most computer programmers rarely see machine code. They use higher level programming languages to write programs that have set words and symbols put together in a format called syntax. When they have completed their program they submit it to a compiler (written in machine code) that is able to check the language syntax for errors. If none is found it will compile the high level language into machine code that a processor can understand. Hopefully the machine code will tell the processor to do what the programmer intended.

Those who do write machine code use a base 16 number system termed hexadecimal with symbols 1 to 9 followed by A to F (in decimal 10 to 15). Each symbol is 4 binary bits called a nibble (i.e. F is 1111) and 2 symbols together like 9B is 8 bits or a byte. The decimal number 46,553 referred to above in hex is B5D9

We speak of real numbers because the history of mathematics decided there were imaginary numbers. Real numbers can be rational or irrational.

Rational real numbers include whole numbers (natural counting numbers from 1 to infinity plus zero), negative numbers, all fractions and decimals that can be derived from natural number fractions.

Irrational numbers like π, √2 or e. are never ending with no repeat pattern. The two quadrillionth digit has been established for π and e has been established to over 500 billion digits. A lot of mathematical effort has also gone into proving that √2 is irrational and cannot be expressed as a fraction of two natural numbers. We have already said all fractions are rational so whilst it might appear that 0.3333 recurring is never ending it is not irrational because it can be expressed as the fraction 1/3

An elegant explanation Albert.