Dichos valores, que serán enviados desde la rutina invocante, son llamados argumentos.
La subrutina usa los valores asignados a sus parámetros para alterar su comportamiento en tiempo de ejecución.
Existen cinco formas de pasar un argumento a una función (subrutina) o procedimiento: por valor, por referencia, por resultado, por valor-resultado y por nombre.
Se tendrán dos valores duplicados e independientes, con lo que la modificación de uno no afecta al otro.
Aquí se exponen unos ejemplos que demuestran las diferencias de estos tipos: