Actualizado el 26 de Junio del 2018 (Publicado el 23 de Mayo del 2018)
637 visualizaciones desde el 23 de Mayo del 2018
2,7 MB
34 paginas
Creado hace 10a (01/01/2015)
Lenguaje TIMBA!
Fundamentos de la Informática – Int. a la Programción !
Int. a la Computación!
Area de Servicios – Dpto. De Informática - FCFMyN !
2015!
Orígenes
Lenguaje Timba
! El
lenguaje
“TIMBA”
recibe
este
nombre
por:
Terribly
Imbecile
Machine
for
Boring
Algorithms.
! Fue
desarrollado
por
un
equipo
de
trabajo
en
la
UNSL,
como
un
lenguaje
sencillo
de
programación
para
trabajar
con
la
estructura
de
pilas.
! El
equipo
fue
dirigido
por
el
Ing.
Hugo
Ryckeboer
que
en
la
actualidad
es
aún
Profesor
de
nuestra
Casa.
Area de Servicios – Dpto. De Informática – FCFMyN - UNSL
Lenguaje Timba
Introducción
Se
denomina
algoritmo
a
un
grupo
3inito
de
operaciones
organizadas
de
manera
lógica
y
ordenada
que
permite
solucionar
un
determinado
problema.
!
Se
trata
de
una
serie
de
instrucciones
o
reglas
establecidas
que,
por
medio
de
una
sucesión
de
pasos,
permiten
arribar
a
un
resultado
o
solución.
Area de Servicios – Dpto. De Informática – FCFMyN - UNSL
Programa!
Lenguaje Timba
! Un algoritmo es una herramienta para resolver un problema
computacional bien definido.!
! La especificación del problema da la relación deseada entre la
entrada y la salida. (Enunciado)!
! El algoritmo describe un procedimiento computacional para lograr esa
relación entre entrada y salida.!
! Un programa es la especificación de un algoritmo en un lenguaje de
programación para que se pueda ejecutar en un procesador.!
Area de Servicios – Dpto. De Informática – FCFMyN - UNSL
El Lenguaje TIMBA!
Lenguaje Timba
! Maneja pilas de cartas y tiene sólo tres operaciones
elementales sobre ellas.!
! No es posible una gran capacidad de programación.!
! Permite definir pilas y consta de las operaciones elementales sobre
las pilas de tomar y depositar cartas, e invertir la carta que en
ese momento se analiza. !
Area de Servicios – Dpto. De Informática – FCFMyN - UNSL
Programa en TIMBA!
Lenguaje Timba
! Un programa es una secuencia de órdenes o
sentencias a un ejecutor, UCP.!
! UCP es responsable de los resultados y del
análisis de errores y reconoce las pilas por su
nombre, las operaciones tomar y depositar,
las estructuras de control y un ente especial,
llamado CARTA o LA CARTA.!
Area de Servicios – Dpto. De Informática – FCFMyN - UNSL
Programa en TIMBA!
! Consta
de
dos
partes:
Lenguaje Timba
! una
definición
del
proceso
algorítmico
!
los
datos
de
pila.
Separadas
entre
sí
por
el
símbolo
“;”
! La
definición
del
proceso
comienza
con
las
palabras
claves:
DEFINICION DE PROGRAMA,
y
las
sentencias
que
describen
el
algoritmo
a
conQnuación,van
separadas
entre
sí
por
“,”.
Area de Servicios – Dpto. De Informática – FCFMyN - UNSL
Programa en TIMBA!
! Las
sentencias
son
de
tres
Qpos:
Lenguaje Timba
Operativas:
De selección:
Iterativas.
actúan
sobre
las
pilas
o
la
carta
ordenan a UCP cursos alternativos del
proceso!
ordenan
a
UCP
la
realización
de
una,
ninguna
o
varias
veces
un
bloque
de
sentencias
Area de Servicios – Dpto. De Informática – FCFMyN - UNSL
Sentencias Operativas!
! Actúan
sobre
las
pilas
o
la
carta.
Lenguaje Timba
! Comienzan
siempre
por
un
verbo
en
impera0vo,
que
es
interpretado
por
UCP
como
una
orden.
! Los
verbos
posibles
son:
a. TOME;
b. INVIERTA;
c. DEPOSITE.
Area de Servicios – Dpto. De Informática – FCFMyN - UNSL
Sentencias de Selección!
! Permiten
ordenar
a
UCP
cursos
alternaQvos
del
flujo
de
proceso,
bajo
Lenguaje Timba
ciertas
condiciones
verificables
en
ejecución.
! Comienzan
con
SI,
seguido
de
la
condición
y
las
sentencias
a
ejecutar
si
ésta
es
verdadera.
! Si
no
hay
dos
secuencias
alternaQvas,
la
sentencia
SI
finaliza
con
las
palabras
claves
SINO NADA MAS.
! Si
hay
una
secuencia
a
realizar
si
la
condición
fuera
falsa,
se
la
incluye
entre
las
palabras
claves
SINO
y
NADA MAS.
Area de Servicios – Dpto. De Informática – FCFMyN - UNSL
Sentencias Iterativas!
Lenguaje Timba
! Permiten
ordenar
a
UCP
la
realización
de
una,
ninguna
o
varias
veces
un
bloque
de
sentencias,
bajo
control
de
una
condición
verificable
en
ejecución.
! Comienzan
siempre
con
MIENTRAS,
que
es
seguido
por
la
condición,
el
bloque
a
ejecutar
y
la
palabra
clave
REPITA.
Area de Servicios – Dpto. De Informática – FCFMyN - UNSL
Pilas!
! Su
descripción
de
datos
comienza
por
las
palabras
clave
“UCP
EJECUTE CON LAS SIGUIENTES CARTAS:”,
seguida
por
la
descripción
de
las
pilas,
separadas
por
“,”
y
es
de
una
de
las
dos
formas:
Lenguaje Timba
1. Descripción
de
pila
vacía;
2. Descripción
de
contenido
de
pila.
PILA <nombre> NO TIENE CARTAS
PILA <nombre> TIENE <lista de cartas>
Pila Vacia
Pila
Area de Servicios – Dpto. De Informática – FCFMyN - UNSL
Sintaxis de TIMBA!
! Para
escribir
correctamente
los
programas
en
un
lenguaje,
se
deben
Lenguaje Timba
especificar
las
reglas
a
tener
en
cuenta.
! El
conjunto
de
reglas
forma
la
sintaxis
del
lenguaje.
! Usaremos
lo
siguiente:
! <
>,
! [
],
! {
},
! *
! Palabras
claves
de
TIMBA
!
Signos
de
puntuación
Area de Servicios – Dpto. De Informática – FCFMyN - UNSL
Sintaxis de TIMBA!
! Las
palabras
en
mayúscula
son
palabras
claves
de
TIMBA,
y
deben
Lenguaje Timba
escribirse
como
aparecen.
! Las
palabras
en
minúscula
entre
corchetes
angulares
deben
reemplazarse
por
su
definición.
! Si
aparecen
dos
o
más
ítems
entre
llaves,
se
elige
entre
ellos
aquél
que
se
ajuste
al
problema
a
resolver.
! Si
ítem
está
entre
corchetes
se
puede
optar
por
escribirlo
o
no.
!
Si
un
ítem
está
entre
corchetes
seguidos
de
un
asterisco
∗,
se
puede
omiQr
el
ítem
o
escribirlo
una,
dos
o
más
veces.
Area de Servicios – Dpto. De Informática – FCFMyN - UNSL
Ejemplo!
Lenguaje Timba
! Problema:
Se
Qene
una
pila
de
3
cartas
con
el
1
de
oros,
el
2
de
copas
(ambas
boca
arriba)
y
el
3
de
bastos
boca
abajo
y
se
quiere
inverQr
ésta
úlQma
para
dejarlas
todas
boca
arriba.
DEFINICION DE PROGRAMA
INVIERTA LA CARTA,
DEPOSITELA EN PILA A;
UCP EJECUTE CON LAS SIGUIENTES CARTAS:
PILA A TIENE 1 DE OROSh - 2 DE COPASh - 3 DE BASTOS.
TOME DE PILA A,
Area de Servicios – Dpto. De Informática – FCFMyN - UNSL
UCP Ejecuta!
DEFINICION DE PROGRAMA
Lenguaje Timba
TOME DE PILA A,
INVIERTA LA CARTA,
DEPOSITELA EN PILA A;
UCP EJECUTE CON LAS SIGUIENTES CARTAS:
PILA A TIENE 1 DE OROSh - 2 DE COPASh - 3 DE BASTOS.
PILA A
Area de Servicios – Dpto. De Informática – FCFMyN - UNSL
Sentencias!
! Son
el
elemento
consQtuQvo
de
TIMBA
y
la
mínima
unidad
lógica.
! Son
de
dos
grandes
Qpos:
OperaBvas
y
de
Control.
! Las
operaQvas
realizan
cambios
sobre
las
pilas,
o
estado
de
la
carta
que
Lenguaje Timba
UCP
analiza
en
ese
momento:
“la
carta
que
UCP
Qene
en
la
mano”.
! Las
de
control
permiten
controlar
la
secuencia
de
operaciones,
sin
ser
operaciones
en
sí:
SI
y
MIENTRAS.
Area de Servicios – Dpto. De Informática – FCFMyN - UNSL
Sentencias!
! Cuando
en
una
descripción
formal
aparece
la
palabra
sentencias,
se
Lenguaje Timba
quiere
simbolizar:
! Donde
formalmente
<sentencia>
puede
ser:
Area de Servicios – Dpto. De Informática – FCFMyN - UNSL
Sentencias Operativas!
! Son
tres,
formalmente:
Lenguaje Timba
Ejemplo: TOME DE PILA A
Ejemplo: DEPOSITELA EN PILA A
Ejemplo: INVIERTA LA CARTA
Area de Servicios – Dpto. De Informática – FCFMyN - UNSL
Sentencias Operativas!
! La
carta
que
figura
al
tope
de
la
pila
es
tomada.
! Cualquier
referencia
a
CARTA
se
interpretará
como
a
la
úlBma
carta
Lenguaje Timba
tomada,
que
no
haya
sido
depositada.
! DEPOSITE
ordena
dejar
la
carta
que
Qene
en
la
mano
en
ese
momento,
en
una
pila
determinada.
! La
pila
debe
ser
declarada
en
la
segunda
parte
del
programa.
Ejemplo: PILA A TIENE 1 DE OROSh - 2 DE COPASh - 3 DE BASTOS.
Comentarios de: Lenguaje TIMBA (0)
No hay comentarios