When working with micro-controller projects, it is often necessary to perform calculations in binary and hexadecimal forms. While almost all calculator tools (such as calc under Windows and gcalctool in Linux) can handle such tasks, they are designed for general purpose calculations and not geared specifically towards working with digital circuits.
Particularly, it often requires multiple steps when manipulating individual bits (convert number to binary, manipulate bits and then convert the number back to hex or decimal). So, I decided to write a simple program myself to make it easier to use when working with micro-controllers and other digital circuits.
Here is the screen-shot of the application I designed (running under Linux using Mono)
As you can see, there are three groups of number fields. Each group can be used independently of the others. When any field within a group is changed, the results are reflected in all the other fields simultaneously. This makes it handy for number conversions. Furthermore there are 32 check boxes — representing the 32 bit number — divided into 4 bytes and each byte is divided further into two nibbles. These check boxes make bit manipulation very intuitive. The 32-bit layout should satisfy most of the work done in the MCU world.
Here are the source files (C#, Requires Visual Studio .Net 2005 or higher):
BCalc — Source
And here is the binary (Requires .Net framework 2.0 or higher):
BCalc — Binary Only
The latest version can be downloaded here