Ich würder mal vermuten
zeichen := '01';
und
dual ist einfach ein String der eine Dualzahl (Binär) enthält.
Ich vermute mal, das es ein Teil aus der dieser einen Zahlentypumwandlung ist.
... zu Dezimal: (so in etwa sah das doch aus)
Delphi-Quellcode:
zeichen := '0123456789ABCDEF';
T := 2; {2 bis 16 - 2 = Binär / 16 = Hexadezimal}
dual := '010101010';
dezimalzahl := 0;
for i := 1 to length(dual) do
dezimalzahl := Dezimalzahl * T + pos(UpperCase(dual[i]), zeichen) - 1;