views:

183

answers:

9

As a embedded systems programmer I always need to make lots of base conversions (dec to hex, hex to bin and so on...), and I must admit: Windows 7 calculator is a good calc, but too limited in my point of view. I work a lot with communications protocols and it`s common to need some base conversion in this field of knowledge.

I`m looking for a calculator software (not a hardware one), to help with base conversions, but it must also support scientific calc. Can anyone help on this?

Since this subject is intended to help programmers, I did not ask this in SuperUser.com.

Thanks.

A: 

I'll wager you could throw one together in under an hour which meets your needs perfectly (as you'll have catered to them) in C# or VB.

Caleb Thompson
I'll wager you're wrong. If Windows calc is not sufficient, an hour will not be enough... _I'd_ wager calc would take several days work to replicate.
John
Do you think? Even with all of the built-in math functions in .net? Seems to me that if someone just focused on functionality they could whip something together pretty quick. And since calc isn't doing what he wants, he probably wouldn't need to reproduce all of its functionality. I put together a calculator for an assignment before I knew much about .net at all. I ran into a couple of problems caused by me being dumb, but it didn't take any longer than a couple of hours to get a lot of functionality.
Caleb Thompson
+5  A: 

When it comes to conversions, I just use Google.

92 in hex
-> 92 = 0x5c
0x5c in binary
-> 0x5c = 0b1011100
0b01101100 in octal
-> 0b01101100 = 0o154
Justin Ardini
Google is by far the best programmer's calculator out there. No installation, you already use it, just learn all the tricks. It supports binary, hex, and octal, as well as tricks like `1992 in roman numerals`.
drharris
+1  A: 

bc is pretty awesome.

Carl Norum
You beat me to it.
mpez0
+2  A: 

The shell of an interpreted language would probably be the most readily-expansible way to do this. Probably Python is the most obvious choice, with a decent math package in the standard library and numpy readily available for more complex calculations. Not so great if you prefer pushing buttons to typing, but hey, you asked on stackoverflow.. :)

intuited
+1  A: 

For quick stuff I use SpeedCrunch, which is a free, cross-platform calculator with a host of built-in functions, constants, and base conversions (use the Settings > Result Format menu for this).

Ben Hoffstein
Loved this calc!
RHaguiuda
A: 

check the following it may be helpful
http://www.jeetblog.com/ecalc-free-advanced-online-calculator/

Space Cracker
+1  A: 

I use a Chrome extension called Chromey Calculator:

Chromey Calculator is a scrolling calculator for Chrome. Results are generated using Google and Wolfram|Alpha. To the power of Google and Wolfram|Alpha, Chromey Calculator adds three main features: 1) Persistent printer tape style history 2) Persistent links to original source of each result 3) Persistent user variables

NOTE: Many, but not all Wolfram|Alpha queries are supported.

Davy8
A: 

I use Ruby's irb (Interactive Ruby shell). Ruby understands hex and binary literals, all the basic math functions, and in addition to access to the full-blown programming language functionality with variables, classes, etc.

0x800
=> 2048
0b1111
=> 15
a = 64; b=128
(a+b).to_s 2  # output in base 2
=> "10111111"
include Math
cos(PI)
=> -1.0

If you want even more numerical functions, you can also access modules that bring in GNU Scientific Lib classes. If python is more along your taste, I'm pretty sure that Python also has an interactive console and access to scientific libs.

Digikata
+1  A: 

I've heard very good things about Soulver. I don't have any firsthand experience, though, since it doesn't run on any of the operating systems I use, it only runs on OSX and iPhoneOS. What I particularly like about it is that it doesn't make hit some stupid buttons with your mouse. Hey Microsoft, ever heard of this cool new invention called "the keyboard"?

Another nice one is Frink, which is not so much a calculator but a programming language for scientific calculations and conversions.

Jörg W Mittag