Yeli

Páginas: 7 (1609 palabras) Publicado: 11 de noviembre de 2012
Lenguajes de Programación I
Asignaciones


Ayud. Mezzanotte, Martín









Lenguajes de Programación I
- Cursada 2006 -
Ingeniería de Sistemas

[pic]

Facultad de Ciencias Exactas
Universidad Nacional del Centro
de la Provincia de Buenos Aires

Lenguajes de Programación I
AsignacionesObjetivos

• Ejemplificar situaciones de asignación en esquemas de asignación por copia de valores.
• Ejemplificar situaciones de asignación en esquemas de asignación por copia de referencias.
• Analizar situaciones análogas entre asignaciones y pasajes de parámetros.
• Exponer relaciones conceptuales importantes entre las asignaciones y otros temas relevantes de la materia, como porejemplo: Administración de memoria, diferencias y similitudes entre lenguajes dinámicos orientados a objetos y lenguajes tipo Algol, entre otros.


Temario


Variables

• Distinción entre Valor, Referencia y Nombre.

Asignaciones entre variables

• Concepto: ¿Qué sucede en la sentencia “a:=b”?
• Ejemplificación en lenguaje C: Orientado a asignación por copia.
•Ejemplificación en lenguaje Java: Orientado a asignación por referencia.
• Comparación entre ambos esquemas de asignación:
o Existencia de ambos datos en asignaciones por copia.
o Creación de alias y generación de garbage en asignaciones por referencia.
o Similitud con los esquemas de pasajes de parámetros
• Asignación por referencia explícita (Lenguaje C) eimplícita (Lenguajes dinámicos orientados a objetos).

Otras Asignaciones

• Asignaciones con expresiones.
• Asignaciones con funciones.
• Asignaciones con constantes.



Variables


Concepto de Variable:
Valor, Referencia y Nombre




En primer lugar, recordaremos algunos conceptos importantes con respecto al manejo de variables.
De cada variable es posibledistinguir:
Su valor. Es decir, el dato que se almacena en la variable.
Su referencia. O sea, la dirección de memoria donde está almacenado el valor de la variable.
Su nombre. Es decir, un identificador que permite referenciar en lenguaje natural una dirección de almacenamiento.
De esta forma, podemos entender las variables como ternas de la siguiente forma:[pic]
Fig. 1: Representación de una variable.




Por ejemplo:
[pic]

Asignaciones entre variables


Concepto de Asignación:
¿Qué sucede en la sentencia "a:=b”?


Es importante entender correctamente qué tratamiento lleva a cabo el lenguaje de una sentencia de asignación:
En una asignación entre dos variables, el lenguaje realiza diferentes acciones almanipular las variables del lado izquierdo y derecho de la sentencia. Con respecto al lado izquierdo, se utiliza el nombre de la variable para acceder a la celda de la memoria que éste referencia, con el objetivo de almacenar el dato obtenido desde el lado derecho. Para esto, la variable del lado derecho debe sufrir una extracción de valor (Desreferencing).
Veamos un ejemplo de un programa simple,codificado en lenguaje C:


Ejemplo 1
[pic]


Puede observarse la existencia de los datos, ya que la sentencia de incremento en b no tuvo ningún efecto sobre el valor de a.
Veamos ahora dos ejemplos similares codificados en lenguaje Java:


Ejemplo 2
º[pic]
Puede observarse la existencia de los datos, ya que la sentencia de incremento en b no tuvo ningún efecto sobre elvalor de a.

Ejemplo 3


[pic]
[pic]


En el segundo caso, cuando se utilizó objetos de tipo “Entero”, puede observarse que el comportamiento de la sentencia de asignación es diferente: en este caso no hubo copia del valor de la variable sino de su referencia, ya que de lo contrario la sentencia de incremento de b no hubiese afectado el valor de a.
Esquemas de...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • yeli
  • yeli
  • yeli
  • Yeli
  • Yeli
  • yeli
  • ENSAYO DE CONOCIMIENTO YELI
  • yeli examen de lapso de bio

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS