#!/usr/bin/perl -w use strict; print ' AB in 10 base => ', base10('AB'), "\n"; print ' IV in 10 base => ', base10('IV'), "\n"; sub base10{ my ( %base26, @letters, $sum ); @letters = reverse split '', shift; @base26{ 'A'..'Z' } = 1..26; $sum += $base26{ $letters[$_] } * 26**$_ for 0..$#letters; return $sum; } __END__ Output : AB in 10 base => 28 IV in 10 base => 256