Antônio, why reinvent the wheel...? as already pointed out by Henry yesterday: http://freepascal.org/docs-html/rtl/strutils/dec2numb.html http://freepascal.org/docs-html/rtl/strutils/numb2dec.html it is as easy as: Uses strutils; Procedure IncrementHex(Var HexS:String); Begin HexS := dec2numb(numb2dec(HexS) + 1); End; Cheers, A.