BASE :

accuracy | base | buttons | constants | contact | detail view | legal | ops | precedence | prefs | terms | usage

... oh dear golly. In addition to the base import command always available, you can have your display and default interpretation occur in any base from 2 to 36. 10 is normal, and the Calc Thingy engine really likes base 10, but 2 is cool because it's binary, and 36 is cool because you can type things like mike+jenny.

Since _base is an importer and not an evaluator, it is not legal te say (ff+fe)_base16 as _base looks to its left for a number, and instead finds a ')' ... that'd be bad. Please don't do that. You could instead type (ff_base16 + fe_base16) and that should make everyone happy. Birds will sing. Clouds will part. Sunshine and rainbows will trickle down from the heavens above.

I decided recently not to allow the wierd base 1, because it has a lot of rules unique to it. I might put it back later, it's neat! Bases above 10 use lower case letters as their numbers. Above base 14 you must use a capital E for e notation. E notation is also in the base you specify. 100101100101.1001010101e1011 is what a base 2 number would look like.

100101100101.1001010101e1011_base 2 is the same as 10010110010110010101010_base 2 and 4926634.0_base 10, but you could plainly see that for yourself.

_base ... the base import instant evaluator. _base is a binary operator that evaluates upon legalization of the expression. (when you hit tab) It does not evaluate with the other numbers, and is not part of the calculator's normal engine. It instantly evaluates the number on the left as if you wrote it in the base defined by the number on the right, and puts it into the equation in the current base. (nb) The base you define is interpreted in base 10, ie 11111111_base2 means the same thing and evaluates to the same numerical value no matter what base you are in. ff_base16 is worth 255 in base 10, and if you enter this while your displayed base is 36, it shows 73, which are all the same number.

All this just to say that in base 36 to import 35 from base 10 you'd write 35_base10 and you would not write 35_base a. If I did it the other way then reminders about what base you were doing work in would be meaningless as all bases think of themselves as base 10. How arrogant of them, no? So base is always written as a base 10 number, but e notation interprets the number in the working base so that it continues to simply mean "move the decimal point, idiot!" ... And it is legitimate to call the decimal point a decimal point even in other bases for the "all bases think they are base 10" reasoning mentioned before. Have I confused you? It's a confusing subject. I hope this calculator helps in making it more clear even if the help documentation doesn't do anything for you.

Spaces are really useful for looking at numbers when your default base is higher than 10 but are still generally ignored by the calc engine. Even though they are inserted for prettiness so that you can figure out what the calculator is thinking. Base switching is limited to numbers smaller than 2^63 or roughly 9e18, so if you type in a 30 digit long number in base 10 and expect it to convert to another base, check it. It may have been truncated, or the calculator may throw an error message back at you.

Modifying the base with stuff in the edit field should automatically adjust all numbers to an appropriate equivalent in the new base. If you write 10101+10010 and evaluate it ... and then realize you meant to be in base 2, you should undo, copy the value, change the working base to 2, and paste the value back in.

keyboardically speaking you'd:
apple-z
apple-a
apple-c
apple-b
2
enter
apple-v

accuracy | base | buttons | constants | contact | detail view | legal | ops | precedence | prefs | terms | usage