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;