tema 7 9-sistema de tipos-predefinidos-2010

17
CONCEPTOS 2010 TIPOS DE DATOS SISTEMA DE TIPOS: conjunto de reglas usadas por un lenguaje para estructurar y organizar sus tipos. Componente semántica importante.

Upload: lautaro-albertuz

Post on 10-Feb-2016

214 views

Category:

Documents


0 download

DESCRIPTION

fgf

TRANSCRIPT

Page 1: Tema 7 9-Sistema de Tipos-predefinidos-2010

CONCEPTOS 2010

TIPOS DE DATOS

• SISTEMA DE TIPOS: conjunto de reglas usadas por un lenguaje para estructurar y organizar sus tipos.

• Componente semántica importante.

Page 2: Tema 7 9-Sistema de Tipos-predefinidos-2010

CONCEPTOS 2010

TIPOS DE DATOS

tipo

• capturan la naturaleza de los datos del problema que serán manipulados por los programas.

• los lenguajes de programación se diferencian en la definición y comportamiento de los tipos.

conjunto de valores conjunto de operaciones

Page 3: Tema 7 9-Sistema de Tipos-predefinidos-2010

CONCEPTOS 2010

TIPOS DE DATOSObjeto instancia del tipo

(l-valor, r-valor) • Operaciones: única forma de manipular los

objetos instanciados• las operaciones protegen a los objetos de usos

ilegales• Tipo: comportamiento abstracto de un

conjunto de objetos y un conjunto de operaciones.

• Programas: funciones que mapean datos de entrada en datos de salida.

Page 4: Tema 7 9-Sistema de Tipos-predefinidos-2010

CONCEPTOS 2010

TIPOS DE DATOS

VALORESQ D

U E

I F

E I

N N

E

ELEMENTALES

DEFINIDOS POR EL USUARIO

PREDEFINIDOS

COMPUESTOS

Enteros

Reales

Booleanos

Caracter

string

enumerados ArrayRegistrosetc

+ COMPORTAMIENTO

TADS

Page 5: Tema 7 9-Sistema de Tipos-predefinidos-2010

CONCEPTOS 2010

TIPOS DE DATOS

• Los lenguajes proveen los tipos predefinidos y los constructores.

• permiten instanciar o crear objetos de datos.

• Constructores: pueden crearse tipos nuevos

• definidos por el usuario: predefinidos y constructores

nuevos comportamientosnuevas estructurasTADtipo

Page 6: Tema 7 9-Sistema de Tipos-predefinidos-2010

CONCEPTOS 2010

Dominio de un tipoDOMINIO DE UN TIPO: conjunto de valores posibles

• Un literal es una constante cuyo valor esta dado por una secuencia de símbolos.

• dominio son solamente valores atomicos entonces el tipo es escalar, elemental o primitivo.

• Si los valores del dominio están compuestos por un conjunto de datos entonces el tipo es estructurado o compuesto

Page 7: Tema 7 9-Sistema de Tipos-predefinidos-2010

CONCEPTOS 2010

TIPOS PREDEFINIDOS

reflejan el funcionamiento del hardsubyacente y son una abstracción de él.

sus valores son un string de bits que se interpreta, a través de las instrucciones de maquina, de diferentes formas de acuerdo al tipo al que pertenezcan.

Page 8: Tema 7 9-Sistema de Tipos-predefinidos-2010

CONCEPTOS 2010

Propiedades de los tipos predefinidos

• mecanismo de clasificación de los datos manejados por un lenguaje

• son la forma de proteger a los datos contra usos indebidos

• instanciar un tipo para crear un dato indica cuales son las operaciones que legalmente pueden aplicársele.

• Las ventajas de los tipos predefinidos son: – Invisibilidad de la representación– Verificación estática – Desambiaguar operadores– Control de precisión

Page 9: Tema 7 9-Sistema de Tipos-predefinidos-2010

CONCEPTOS 2010

Invisibilidad de la representación

• El programador no tiene acceso al stringde bits subyacente que representa un valor de un cierto tipo.

• Los cambios no se ven como un nuevo string, sino como un nuevo valor

• Estilo de programación: • Modificabilidad:

Page 10: Tema 7 9-Sistema de Tipos-predefinidos-2010

CONCEPTOS 2010

Verificación estática

• Si el lenguaje exige la declaración de variables, entonces las operaciones ilegales sobre una variable pueden ser detectadas por el traductor

Page 11: Tema 7 9-Sistema de Tipos-predefinidos-2010

CONCEPTOS 2010

Desambiguar operadores

• Operadores polimórficos - genéricos -o sobrecargados

• uso moderado de la sobrecarga puede contribuir a la simplicidad de un Lenguaje de Programación.

• uso excesivo de la sobrecarga puede generar programas que sean difíciles de entender

Page 12: Tema 7 9-Sistema de Tipos-predefinidos-2010

CONCEPTOS 2010

Control de precisiónalgunos lenguajes permiten controlar la precisión de los datos numéricos.

• ADA. Enteros: shortinteger,integer ,largeinteger

• optimización de espacio para el traductor • insertar chequeos en tiempo de ejecución

para monitorear los valores de las variables.

Page 13: Tema 7 9-Sistema de Tipos-predefinidos-2010

CONCEPTOS 2010

TIPOS PREDEFINIDOS ELEMENTALES

- NUMEROSREALES

ENTEROS

- BOOLEANOS

- CARACTERES

Page 14: Tema 7 9-Sistema de Tipos-predefinidos-2010

CONCEPTOS 2010

NUMEROS: CONVERSIONES

Capacidad de adecuar los tipos cuando están mezclados.

* Por tabla* Por el tipo del resultado: examinar la

expresión determinando el tipo del resultado y convirtiendo todo a ese tipo.

* Prefijo de tipo: se convierte al tipo indicado. Pedido de conversión explícito

Page 15: Tema 7 9-Sistema de Tipos-predefinidos-2010

CONCEPTOS 2010

BOOLEANOS

Valores true Operaciones and false or

not

-

ALGOLPASCAL ADA

PL/1

C

FALSE TRUE

true y false son literales

cualquier stringcon bits 0 o vacio

cualquier stringcon bits 1

FALSE,TRUE: enumerado predefinido que puede ser redefinido

variable, o constante cuyo valor sea = 0

variable, o constante cuyo valor no sea = 0

Page 16: Tema 7 9-Sistema de Tipos-predefinidos-2010

CONCEPTOS 2010

CARACTERES- STRING

Es el tipo que mas ha evolucionado

• Fortran y Algol.60 apenas considerados• PL/1: tipo string de caracteres y

operaciones de manipulación• Pascal: char y string como vectores de

char con un máximo de longitud fija. SNOBOL4 es un lenguaje especializado en el manejo de texto.

• Modula y C los string son arreglos de char

O

Page 17: Tema 7 9-Sistema de Tipos-predefinidos-2010

CONCEPTOS 2010

CARACTERES- STRING

.dinámica

Longitud

máxima

estática

libre

limitada