65.9K
CodeProject is changing. Read more.
Home

Computer Conversions (Hexadecimal, Decimal, Octal and Binary)

starIconstarIconstarIcon
emptyStarIcon
starIcon
emptyStarIcon

3.10/5 (20 votes)

Feb 5, 2007

CPOL
viewsIcon

57943

downloadIcon

2129

An article to demonstrate how to convert from one base 2, 8, 10 or 16 to another of base 2, 8, 10, 16

Sample image

Introduction

This code was written to show how to convert from Hexadecimal, Decimal, Octal or Binary out to a Hexadecimal, Decimal, Octal or Binary value. Many functions demonstrate Hex2Bin, Bin2Hex, Hex2Dec, Dec2Hex, etc. This code will show you how easy it is to convert between any of these bases (2, 8, 10, 16).

Background

It is good to understand how binary conversions work. Take a look here for more information.

Using the Code

Enter an input value, and see what the output value is. It's that easy. Use the arrows to add or subtract the value.

The two main functions that deal with the conversions include Input2Binary() and Binary2Output(). From these functions, you can take any input type and convert it to binary, and then convert that binary value to any output type.

The Input2Binary() function contains this code:

// Convert the current input into binary 
// NOTE: convert string from base 'n'
switch( numberStyle.ToUpper() )
{
    case "HEXADECIMAL":
        currInput = Convert.ToUInt64(txtObject, 16);
        break;
    case "DECIMAL":
        currInput = Convert.ToUInt64(txtObject, 10);
        break;
    case "OCTAL":
        currInput = Convert.ToUInt64(txtObject, 8);
        break;
    case "BINARY":
        currInput = Convert.ToUInt64(txtObject, 2);
        break;
}

The Binary2Output() function contains this code:

// Convert the int to the correct output
switch( numberStyle.ToUpper() )
{
    case "HEXADECIMAL":
        txtObject = Convert.ToString(currVal, 16).ToUpper();
        break;
    case "DECIMAL":
        txtObject = Convert.ToString(currVal, 10);
        break;
    case "OCTAL":
        txtObject = Convert.ToString(currVal, 8);
        break;
    case "BINARY":
        txtObject = Convert.ToString(currVal, 2);
        break;
}

History

  • 5th February, 2007: First version