One of the points that I try to get across the IT Pros
taking my PowerShell classes is that if it works, then it is correct. That does not take efficacy into
consideration. However, when you are scripting (or writing software) you need to
accept that there are multiple paths to success. We are going to take a look at the Convert
class of .Net to make some numeric conversions.
There are 3 numeric bases that are common in the computer
science world. Decimal because we as
humans like it. Binary, because that is
how a computer works. Hexadecimal
because it allows us to represent 4 bits with a single character. Yes there are other reasons but let’s just
keep this simple.
The last time I checked, the convert class provide over 290
overloaded static methods to help you perform conversions. Below I provided the code to convert between
our big 3.
#region Convert to Base 16
----------------------------------------------------
# From Base 2
[Convert]::ToString(11001100,16)
# From Base
10
[Convert]::ToString(154,16)
"{0:X4}"
-f 154
#endregion Convert to Base 16
-------------------------------------------------
#region Convert to Base 10
----------------------------------------------------
# From Base 2
[Convert]::ToInt32(10110010,2)
# From Base
16
[Convert]::ToInt32("FA",16)
#endregion Convert to Base 10
-------------------------------------------------
#region Convert to Base 2
----------------------------------------------------
# From Base
10
[Convert]::ToString(100,2)
# From Base
16
[Convert]::ToString([Convert]::ToInt32("FA",16),2)
#endregion Convert to Base 2
-------------------------------------------------
Comments