Algorithm Math Delphi

Title: Convert hexadecimal to binary
Hexadecimal format of a number is a reduced binary format of this number. Use HexToBin function to convert hexadecimal to binary format.
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;