Konversi bilangan Heksadesimal ke Biner

Friday, February 5, 2010 ·



Bagi anda yang sering berhubungan dengan interface mikrokontroler dan PC kadang memerlukan konversi bilangan heksadesimal ke dalam bentuk Biner. Sebenarnya Delphi telah menyediakan fungsi HexToBin sendiri, tapi kali ini kita coba untuk mengkonversi bilangan heksadesimal dengan tipe data string dan menghasilkan bilangan biner dalam bentuk string juga.

Coba perhatikan fungsi berikut ini


function HexToBin(HexStr: string): string;
const
  BinArray: array[0..15, 0..1] of string =
    (('0000', '0'), ('0001', '1'), ('0010', '2'), ('0011', '3'),
     ('0100', '4'), ('0101', '5'), ('0110', '6'), ('0111', '7'),
     ('1000', '8'), ('1001', '9'), ('1010', 'A'), ('1011', 'B'),
     ('1100', 'C'), ('1101', 'D'), ('1110', 'E'), ('1111', 'F'));
  HexAlpha: set of char = ['0'..'9', 'A'..'F'];
var
  i, j: Integer;
begin
  Result:='';
  HexStr:=AnsiUpperCase(HexStr);
  for i:=1 to Length(HexStr) do
    if HexStr[i] in HexAlpha then
    begin
      for j:=1 to 16 do
        if HexStr[i]=BinArray[j-1, 1] then
          Result:=Result+BinArray[j-1, 0];
    end
    else
    begin
      Result:='';
      ShowMessage('This is not hexadecimal number');
      Break;
    end;
  if Result<>'' then
   while (Result[1]='0')and(Length(Result)>1) do
     Delete(result, 1, 1);
end;


dan berikut dara penggunaannya dalam program


procedure TForm1.Button1Click(Sender: TObject);
begin
  Label1.Caption := HexToBin(Edit1.Text);
end;

  • Digg
  • Delicious
  • Facebook
  • Mixx
  • Google
  • Furl
  • Reddit
  • StumbleUpon
  • Technorati
  • 0 comments:

    About this blog

    Hello my friend, I'm sure that you Microcontroller-holic and Delphi lover. Here I try to share some notes about microcontroller especially in AVR family and Delphi projects. Hope you can share your experiences in building some related projects.



    If you interested to download something here, please note that there will be a page that drive you to the exact download link, please click "Skip Ad" button on right-top of the page, and you'll find the link. It's all FREE.

    Followers

    Site Sponsors