Ich nehme man, daß Du mit 8-Bit-Zeichen arbeitest. Dann xorst Du einfach alle Zeichen und maskierst die 7 Bit (falls alle Zeichen nur 7 Bit haben, ist das eigentlich überflüssig):
Delphi-Quellcode:
function bcc(s: ansistring): byte;
var
t,i: integer;
begin
t := 0;
for i:=1 to length(s) do t := t xor ord(s[i]);
bcc := t and $7f;
end;