Hola!
Tabla ASCII:
http://www.asciitable.com/Si observas en la tabla vas a ver que cada caracter tiene su representacion numerica, como el ejercicio especifica en base decimal solo miras esa columna. Lo que tenes que hacer es:
1º Leer un caracter del archivo, con fgetc por ejemplo.
2º Verificar a que corresponde el caracter: minuscula, mayuscula, numeros o guion. Esto lo podes hacer con varios if, ejemplo si el caracter es mayuscula:
if(ch>=65&&ch<=90)
hacer la operacion correspondiente
3º Despues de identificar el caracter y operar(sumando o restando), convertir ese numero a binario(hay varios post de como convertir o busca en google ó mejor aun intenta hacerlo y plantea dudas sino te sale)
4º Convertir los 3 primeros digitos y los 3 ultimos a decimal. Si pudist hacer la conversion a binario, este paso no deberia costarte mucho ya que solo es hacer un par de cuentas mas
5º Volver al paso 1
Te recomiendo q intentes hacer los pasos que te marque(despues pregunta el resto)
Saludos