function getbcdnumber(str: string): string;
var
str1, str2: string;
i, j: Integer;
m: double;
begin
str2 := '';
for j := 1 to Length(str) div 4 do
begin
str1 := copy(str, 1 + (j - 1) * 4, 4);
m := 0;
for i := 1 to 4 do
begin
if str1[i] = '1' then
begin
m := m + power(2, 4 - i);
end;
end;
str2 := str2 + FloatToStr(m)
end;
result := str2;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
str, str1, str2: string;
i, j: Integer;
m: double;
begin
str := '10010110';
ShowMessage(getbcdnumber(str));
end;