pascal
Universidad de Valladolid
Campus de Segovia
______________________
LABORATORIO:
INTRODUCCIÓN A LAS
UNIDADES EN TURBO
PASCAL
UNIDADES EN TURBO PASCAL 7.0
• Concepto de unidad
• Estructura de una unidad
• Creación de unidades
• Utilización de las unidades estándar
• Identificadores idénticos en distintas
unidades
• Síntesis final
CONCEPTO DEUNIDAD
•
•
•
•
Es un conjunto de constantes, tipos de datos, variables,
procedimientos y funciones encapsuladas bajo un mismo
identificador.
Poseen una estructura bien definida.
Las unidades pueden ser predefinidas (estándar) o definidas
por el usuario.
Turbo Pascal 7.0 posee siete unidades estándar:
– SYSTEM
– GRAPH
– DOS
– CRT
– PRINTER
– TURBO3
– GRAPH3
ESTRUCTURA DE UNAUNIDAD
• Una unidad esta constituida por las siguientes
secciones:
– Cabecera de la unidad
– Sección “Interface” (o sección pública)
– Sección “implementatión” (o sección privada)
– Sección de inicialización
UNIT
INTERFACE
USES ; {opcional}
{declaraciones públicas de objetos exportables}
IMPLEMENTATION
{declaraciones privadas}
{definición de procedimientos y funciones públicas}BEGIN
{código de inicialización} {opcional}
END.
CABECERA DE LA UNIDAD
•
Comienza con la palabra reservada UNIT seguido del
identificador y finalizado con un punto y coma.
•
Un identificador válido está formado por una cadena de 1 a 8
caracteres.
•
El nombre de la unidad puede ser arbitrario pero debe coincidir
con el nombre del fichero que lo contiene.
•
Ejemplo:
– La“UNIT test” debe almacenarse en un fichero denominado
test.pas. Una vez compilado, la extensión del fichero será
TPU (turbo pascal unit).
SECCIÓN INTERFACE
•
Esta parte es la que permite conectar esta unidad con otras
unidades y programas.
•
También es conocida como la sección pública ya que los
objetos declarados en esta sección son exportables al exterior.
•
En estasección se pueden declarar constantes, tipos de datos,
variables*, funciones y procedimientos.
•
En esta sección sólo se declara la cabecera de las funciones y
procedimientos. Su implementación se encuentra en la sección
“implementation”.
EJEMPLO DE DECLARACIÓN
DE SECCIÓN INTERFACE
UNIT rayo;
INTERFACE
USES
Dos, Graph, Crt;
VAR
a,b,c:integer;
FUNCTION Exponencial(a,b:integer):real;
PROCEDURE Dividir(x,y:integer; var cociente:integer);
OJO!. Las variables declaradas en esta sección son en realidad variables
globales, ya que son visibles desde otras unidades y programas.
SECCIÓN IMPLEMENTATION
• Esta sección es estrictamente privada y por tanto su
contenido no es exportable.
• Esta sección contiene los cuerpos de los
procedimientos y funciones declarados en lasección
“interface”.
• Las variables declaradas dentro de esta sección
serán de uso exclusivo para los procedimientos y
funciones de dicha unidad.
EJEMPLO DE DECLARACIÓN DE
SECCIÓN IMPLEMENTATION
IMPLEMENTATION
FUNCTION Exponencial (a,b:integer):real;
VAR
p,i:integer;
BEGIN
p:=1;
for p:=1 to b do
p:=p*a;
exponencial:=p;
END; {exponencial}
PROCEDURE Dividir(x,y:integer; varcociente:integer);
BEGIN
cociente:=x DIV y;
END; {Dividir}
SECCIÓN DE INICIALIZACIÓN
• Esta sección opcional puede contener, por ejemplo,
instrucciones que sirvan para iniciar variables.
• La ejecución de estas instrucciones se efectúa antes
de ejecutar la primera instrucción del programa que
usa dicha unidad.
• En esta sección también se pueden inicializar
cualquier estructura de datosque emplee la unidad.
CREACIÓN DE UNIDADES
•
Una vez que se dispone del código fuente la unidad se compila
de la misma forma que un programa.
•
El archivo obtenido posee la extensión TPU y es un fichero no
ejecutable.
•
Para poder utilizar una unidad se debe declarar su uso en la
sección USES
•
Ejemplo:
Program Prueba;
USES
Utilidad;
CREACIÓN DE UNIDADES...
Regístrate para leer el documento completo.