Numbers in your Conlang

This topic comes up every once in awhile on the conlang forums - numbers in your conlang. This post goes out to you, Janko Gorenc. ;)

Usually the biggest issue of these threads is simply, what base do you want for your number system and why? The base for your number system basically means, how many numbers are there, before you go up to the next "place" in the numeral system? Now, most of the world uses a base 10 number system, and its probably because people have 10 fingers. But we could have had a base 5 number system, and a lot of conlangers play with this. Or, you might be developing a language and culture for an alien culture that has 12 fingers, or six limbs, or nine tentacles! Whatever base you want, for whatever reason, I wanted to provide a brief tutorial on how to calculate or translate base 10 numbers into another base, or vice versa. If you want to know more about number systems before diving into this, read these Wikipedia articles on number systems.

You're going to have to do some dividing. Get out a piece of paper and pencil. Lets start with something simple: let's turn 100 into base 12. Make three columns by drawing four vertical lines. In the right-most column, write 120 at the top. Right underneath that, write 1. In the next column, write 121 at the top, and underneath it, 12. In the next column, write 122 at the top, and underneath it, 144. These three columns represent the "places" of numbers in base 10. 1, 10, 100; in each of these columns we will write how many times the number goes into it, starting at the left-most column. 100 is too small for this column, so we go to the next column. 100 goes into 12 eight times, so write an 8 in this column. Eight times 12 is 96, and in long division we then subtract 96 from 100, leaving a remainder of 4. Aha, 100 in base 12 is 84! 12 in base 12 is 10, and 24 is 20. 2,345 is 1,435. Catching on? (For a four digit number, you have to add a fourth column, 12 with a little 3, and write 1,728 underneath it, for 12x12x12) If you want more examples, comment me.

This brings up another point: at some point, you need to have names for your numbers in your conlang.  After making all those letters for your alphabet, coming up with as many numbers as are in in your base system should be easy. Also, how will numbers be represented in the orthography of your conlang? Here's an example from my own conlang. I decided to make the numbers representative of shapes the use the same number of strokes as the number, and then the simple shapes combine to create higher numbers.


Anonymous said...

Great post explaining a complicated subject - it falls much in line with what programmers learn when converting decimal to binary, octal, or hexadecimal.

One does not have to limit their symbol set to a 10 base. Any base less than that of decimal falls within the decimal set (0-9) so there are no complications. However, more symbols need to be considered past the decimal set. For example, hexadecimal uses A-F (what we consider letters) to represent the values of 10-15 respectively. So a number like 1000 would be written 3E8 and 27 becomes 1B in hexadecimal.

You started to delve into this subject in your third paragraph; letters and numbers are merely symbols that we assign meaning. I hope this comment helps those considering symbols past the decimal level.

Arne Duering said...

hiya, very interesting your blog, i am also working on artificial languages, one is called Duirún:, the other one is Europún, a combination of European languages:, keep in touch:, cheers arne

Anonymous said...

I don't really understand the concept of how to change numbers between bases. Could you post some more examples on that?

Unknown said...

Great blog and a very goos post!! this is something new and very informative!

anti climb fence