@Mathematica
encode[n_]:=Module[{numberToLetter},
numberToLetter[nx_]:=CharacterRange["A","Z"]//
MapIndexed[{#1,#2[[1]]}&,#]&//
Select[#,#[[2]]==nx&]&//
#[[1,1]]&;
n//
IntegerDigits[#,26]&//
Map[numberToLetter,#]&//
StringJoin
];
decode[str_]:=Module[{letterToNumber},
letterToNumber[strx_]:=CharacterRange["A","Z"]//
MapIndexed[{#1,#2[[1]]}&,#]&//
Select[#,#[[1]]==strx&]&//
#[[1,2]]&;
str//
Characters//
Map[letterToNumber,#]&//
FromDigits[#,26]&
];
In[1] := encode[125]
Out[1] = "DU"
In[2] := decode["DBA"]
Out[2] = 2757
QE1hdGhlbWF0aWNhCgplbmNvZGVbbl9dOj1Nb2R1bGVbe251bWJlclRvTGV0dGVyfSwKCgludW1iZXJUb0xldHRlcltueF9dOj1DaGFyYWN0ZXJSYW5nZVsiQSIsIloiXS8vCgkJTWFwSW5kZXhlZFt7IzEsIzJbWzFdXX0mLCNdJi8vCgkJU2VsZWN0WyMsI1tbMl1dPT1ueCZdJi8vCgkJI1tbMSwxXV0mOwoKCW4vLwoJCUludGVnZXJEaWdpdHNbIywyNl0mLy8KCQlNYXBbbnVtYmVyVG9MZXR0ZXIsI10mLy8KCQlTdHJpbmdKb2luCl07CgpkZWNvZGVbc3RyX106PU1vZHVsZVt7bGV0dGVyVG9OdW1iZXJ9LAoKCWxldHRlclRvTnVtYmVyW3N0cnhfXTo9Q2hhcmFjdGVyUmFuZ2VbIkEiLCJaIl0vLwoJCU1hcEluZGV4ZWRbeyMxLCMyW1sxXV19JiwjXSYvLwoJCVNlbGVjdFsjLCNbWzFdXT09c3RyeCZdJi8vCgkJI1tbMSwyXV0mOwoKCXN0ci8vCgkJQ2hhcmFjdGVycy8vCgkJTWFwW2xldHRlclRvTnVtYmVyLCNdJi8vCgkJRnJvbURpZ2l0c1sjLDI2XSYKXTsKCkluWzFdIDo9IGVuY29kZVsxMjVdCk91dFsxXSA9ICJEVSIKCkluWzJdIDo9IGRlY29kZVsiREJBIl0KT3V0WzJdID0gMjc1Nwo=