Lately I was wondering why we write 134 when we want to say one-hundred thirty four. Why don’t we write 431 and say four thirty one-hundred? Why do we begin with the most significant digit and not the less significant?
The answers to that question are actually quite chaotic. Maybe a bit history about the decimal system will help.
Around the 1st and 4th centuries the Hindu numeral system was invented by Indian mathematics [1]. The revolutionary idea about this number system is that it is designed for positional notation. Basically this means that you change a number to zero if it oversteps nine and add one to the higher significant digit. 09 becomes 10 if you add one, 29 becomes 30 if you add one. The Hindu numeral system used the nine symbols from the Brahmi numerals and added the zero that was needed for the positional system just described [2]. The Brahmi system had specific symbols for ten, twenty … one-hundred, two-hundred. Brahmi script was written left-to-right and it seems that the numbers were written with the most significant number at the left (hundreds, tens, units). Why the most significant number is at the most left stays unclear to me, and maybe is only resolved when we find the ancestors of the Brahmi numbers.
However it becomes even more confusing when the Hindu numeral system is introduced to the Arabic language. Arabic is written and read from right-to-left, so for the reader a number appears first with the units then tens then hundreds and so on [3]. It is quite logic to also speak them this way and it seems it used to be this way [4]. However, now is seems that in Arabic a number is read and spoken from left-to-right, changing the reading direction just for the number. But you still find old fragments, for example 13 is spoken in Arabic as as three ten [5].
Actually you find this in a lot of languages for example [6]:
French: 91 = quatre-vingt-onze = four x twenty + eleven
English: 13 = thirteen = 3 + 10
German: 23 = dreiundzwanzig = 3 + 20
This might be the remains of “counting in a language” which existed much longer than the Hindu numeral system, which was only introduced into Europe in the 10th century.
To make everything a little bit more confusing try to write a telephone number in a language that is written from right-to-left. You have to read/write it from left-to-right since this is the convention for telephone numbers. If you would read it backwards it wouldn’t make any sense for the telephone system. However if you read a number backwards, but leave the power system intact (lowest power at the right) it still would be understandable. You could read 134 as four and thirty and hundred. It will be awkward four you, but this is merely because we are not used to it. But we could see that in some language we are used to it for smaller numbers (like the 23 example for German).
And then we have the binary system. 134 in binary is:
-------------------- 128 64 32 16 8 4 2 1 1 0 0 0 0 1 1 0 = 128 + 4 + 2 --------------------
What is the reading direction? In this example we actually don’t have one because the reading direction is not necessary as long as the lowest power (x * 1) stays on the left and the highest on the right (x * 128). However computer algorithms usually starts with the lowest power working their way up to the highest, for us this looks like they read from the right-to-left if we look a the binary table above. This is actually just a conversion to our thinking because a stream of numbers has no left/right direction, it merely has a beginning and an end [7]. Computers don’t care from which direction they start as long they read every number in the same direction. The two writing/reading systems are called big-endian and little-endian [8]. Where the decimal number 134 in big-endian is stored as 1 3 4 and in little-endian as 4 3 1 when we assume that left is the lowest memory address and right is the highest memory address. And then you get really confused when your assumption is wrong and left means high memory and right means low memory.
If we want to convert “hello” into binary, we first would convert it into ascii-numbers and these numbers into binary:
h e l l o 104 101 108 108 111 01101000 01100101 01101100 01101100 01101111
We don’t know really in which order these zero and ones are stored in. I used to imagine how they are written from left to right into this fictional memory and then imagined an algorithm that reads from right to left to convert these values back to decimal and then to symbols.
It is clear that I image the numbers to be written from left-to-right because thats the convention how we write in the Hindu numeral system. But why do I imagine that it is read from right-to-left?
I think it is because I’m not familiar with the position of the powers values in binary. To explain this, lets go back to the decimal system and Hindu numeral system to see how we actually read a number. If I want to speak out the number 134, the first thing I have to do is to count how many numbers I actually have. In this case I have three numbers, meaning that the first number will be a power of one-hundred, so I can start saying one-hundred … thirty … four. And you know instantly that when you see six numbers (e.g 450000) that it starts with the power of one-hundred-thousand.
In a binary system: What is the power of the first number, when you see six numbers? I do not know, I start counting 1 2 4 8 16 32. This way of counting actually means it becomes easier to start from the opposite direction because then you can work your way up the powers and you don’t have to know the power for a specific number of numbers. This would be the same case for decimal numbers and that’s why I think reading a number from the lowest significant on would make much more sense, because you don’t have to count all number beforehand. And then you would write in a left-to-right language 431 for four thirty one-hundred and in a right-to-left language 134. But we are stuck we this weird notation and my mind is not used to binary numbers at all. I always try to convert them into decimal numbers to make them understandable to me. However this process becomes quite awkward because you change reading/writing directions quite often and mix everything up.
The lesson I learned from this is, that it is amazing how much a numeral system affects our thinking. We see it as normal to say one-hundred thirty four, and in conclusion think that’s why we write it as 134. Not knowing that saying four thirty one-hundred would be also a perfect working system. I never really saw the numeral system at something separate from the language, but it becomes quite clear when you consider that the reading direction stays the same for numbers even if you’re reading from right-to-left. But this convention was brought with time and is actually not so united as we think when we consider all the languages that say some of the small numbers from low significant to high significant number. And what about the remains of the Sexagesimal (60) system that came from the Sumerians: an hour contains sixty minutes.
When we talk about mathematics we think about the decimal system, but the decimal system is merely one representation of numbers. As languages are a representation of a thought. But on the same time the decimal system and the Hindu numerals influences our thinking as does a language system. The decimal system sounds so logical to us, that we have to wonder why some people used other systems and why have they never thought about this clever decimal system. The answer to this is that we only think that decimal numbers make sense because we are already using them. It wouldn’t make sense to not use it when everything around us is represented by it.
The question remains is: What did our language and number systems shape and which thought do they allow and which not.
[2] https://en.wikipedia.org/wiki/Brahmi_numerals
[3] https://en.wikipedia.org/wiki/Arabic_numerals
[4] https://www.theguardian.com/notesandqueries/query/0,5753,-23605,00.html
[5] https://www.youtube.com/watch?v=2iwcaVUAK_4
[6] https://www.quora.com/Why-do-German-speakers-read-numbers-from-right-to-left
[7] https://math.stackexchange.com/questions/891445/why-binary-is-read-right-to-left
[8] https://en.wikipedia.org/wiki/Endianness
[9] https://en.wikipedia.org/wiki/Sexagesimal