assuming that $c contains just one character,
as I believe it does from reading your code.
Note that Perl uses a dot rather than a plus sign
to concatenate strings.
The Perl ord function returns the ord value (0-255)
of a character while the Perl chr function
does the reverse.

Given your lack of Perl experience, rather than attempting
to convert the whole script all at once, I suggest you
start by writing a number of very short Perl test programs,
liberally sprinkled with print statements, so you
can see what is going on.
That should slowly build your confidence without overwhelming you.
For example, you could start by running this little test program: