This page implements jan Misali's base naming system (as explained in their YouTube video), an unambiguous way of naming numeric bases that should feel familiar and reasonably readable, without being decimal-centric.
Base # | Name | Abbreviation |
---|---|---|
Enter a numeric base to get the name and abbreviation.
Bases can be negative or fractional.
To interpret the base in another base, append "
Watch jan Misali's video for full details,
but an abbreviated summary of the system
is that it's based on factorizing the base
and speaking each factor using familar latin/greek-derived names.
A number of values are "root" values,
which have set pronunciations as prefixes or finals:
all the numbers 0-13,
plus the numbers 16, 17, 20, 36, and 100.
Non-root composites are split into a pair of factors;
generally the pair that are closest together
(like 4*6 for 24, rather than 3*8 or 2*12),
but if a pair would use less roots in total it's chosen instead
(like 6*100 for 600, which uses two roots,
rather than 24*25, which uses a total of four roots, 4*6*5*5).
These factors are then further broken down, if necessary.
Non-root primes are named after their preceding composite,
with an "un-" prefix indicating "one more than".
(like 19 being "untriseximal", since 18 is "triseximal").
When a prime is part of a prefix itself,
it uses a "hen-" prefix and "-sna" suffix around itself instead.
There's a few other small tweaks for readability,
like avoiding confusion with the existing "X-decimal" system
(so 60 becomes 6*10 and is "hexagecimal",
rather than, uh, "hexadecimal"),
or handling when one root would end in a vowel and the next would start with a vowel,
but otherwise you then just read off the factors,
and can reconstruct the base from its name just as easily
by multiplying the components.
For example, "triquinary" means 3*5, as it's the name for 15.
A more complex example is "heptabiseptimal", or 7*2*7, for 98.
A much more complex example is "hentrihexasnabisuboptimal",
which is (1 + 3*6) * 2 * 17, for base 646.
Each base also has an abbreviation,
which is *not* intended to be human-computable or -reversible,
just easily readable.
The precise mechanics of that are explained in the video;
they're a bit too fiddly to really explain here.
in N
",
like "14 in 16
"" to produce "vigesimal";
otherwise it defaults to base 10.
What's going on here?
The NumberBase
constructor is also exposed on this page,
so you can play with it yourself in your browser console.