| INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE CÓMPUTO |

Introducción | Contenido | Bibliografía

Introducción
Contenido
UNIDAD I
UNIDAD II
UNIDAD III
UNIDAD IV
UNIDAD V
UNIDAD VI
UNIDAD VII Introducción 7.1 Diseño, implementación y administración de la tabla de símbolos 7.2 Implantación de bloques y tipos de datos 7.3 Especificación de alcance de variables

7.4 Funciones y procedimientos

7.5 Registros de activación

7.6 Paso de parámetros

7.7 Llamada por valor

7.8 Llamada por referencia

UNIDAD VIII
UNIDAD IX
PROBLEMARIO
Bibliografía

7.6 Paso de Parámetros

> Cuando un procedimiento llama a otro, el método habitual de comunicación entre ellos es a través de nombres no locales y a través de parámetros del procedimiento llamado. En el que se utilizan tanto los nombres no locales como los parámetros ara intercambiar los valores de a[i] y a[j]. Aquí la matriz a es no local al procedimiento intercambio, e i y j son parámetros.

> Existen varios métodos para asociar parámetros actuales y formales: llamada por valor, llamada por referencia, copia y restauración, llamada por nombre y macro expansión. Es importante conocer el método de paso de parámetros que utiliza un lenguaje (o compilador), porque el resultado de un programa puede depender del método empleado.

> ¿Por qué tantos métodos? Los distintos métodos surgen de diferentes interpretaciones en cuanto a lo que representa una expresión. En una asignación como:

> a[i] := a[j]

> la expresión a[j] representa un valor, mientras que a[i] representa una posición de memoria dentro de la que se coloca el valor de a[j]. La decisión de si utilizar la posición o el valor representado por una expresión, viene determinada por el hecho de que la expresión aparezca en el lado izquierdo o en el lado derecho, respectivamente, del signo de asignación. El término valor de lado izquierdo se refiere a la posición de memoria representada por una expresión y el término valor del lado derecho se refiere al valor contenido de una posición de memoria.

> procedure intercambio(i, j; integer);
> var x : integer;
> begin
> x := a[i] ; a[i] := a[j] ; a[j] := x
> end

> Las diferencias entre los métodos de paso de parámetros se basan principalmente en que un parámetro actual representa un valor de lado izquierdo, un valor de lado derecho o el texto del mismo parámetro actual.

> Atrás Siguiente

##### Introducción / Contenido / Unidad I / Unidad II / Unidad III / Unidad IV / Unidad V / Unidad VI / Unidad VII / Unidad VIII / Unidad IX / Problemario / Bibliografía

##### Inicio

##### Créditos

José Sánchez Juárez, Andrés Ortigoza Campos, Fabiola Ocampo Botello