تبدیل مبناها
کد:
کد PHP:
Type
  TBaseRange
=2..32;
Const
  
sDigits='0123456789ABCDEFGHIJKLMNOPQRSTUV';
Function 
IntToAnyBase(num:int64;Base:TBaseRange):string;
var
  
tmp1,tmp3:int64;
  
str:string;
begin
  str
:='';
  
tmp3:=num;
  
repeat
    tmp1
:=tmp3 mod Base;
    
tmp3:=tmp3 div Base;
    
str:=copy(sDigits,tmp1+1,1)+str;
  
until not(tmp3<>0)       ;
  
Result:=str;
end;

Function 
AnyBaseToInt(num:string;Base:TBaseRange):int64;
var
  
sum:int64;i:longint;
  
token:string;
begin
  sum
:=0;
  for 
i:=1 to length(num) do begin
    token
:=uppercase(num[i]);
    
sum:=Base*sum+(pos(token,sDigits)-1);
  
end;
  
result:=sum;
end

__________________