Está en la página 1de 60

completa para la enseñanza de la programación.

El lector debe complementar el estudio d


algoritmia, con el estudio de uno o varios lenguajes de programación. Le recomendamos
encarecidamente que realice todos los algoritmos presentados en este libro, usando su le
programación favorito. Para el aprendizaje de los lenguajes de programación más popular
sugerimos consultar (y por qué no, también colaborar con) los otros wikilibros de program
Finalmente, invitamos al lector a practicar: la única forma de aprender a nadar, es lanzars
nadar. Se tratará de incluir, en medida de lo posible, ejercicios al final de cada sección. Al
capítulo se sugerirán algunos proyectos de programación que puede realizar. La realizació
proyectos es beneficiosa por varios motivos: primero, ayudará a afianzar los conocimiento
en cada sección; segundo permitirá aplicar las técnicas estudiadas en problemas práctico
la programación puede convertirse en un hobbie que brinda muchas satisfacciones.
En sus inicios, la programación de computadoras se basó exclusivamente en el modelo im
(también denominado procedimental), que semeja más la forma en que la máquina manej
instrucciones u órdenes.
Conforme la programación de computadoras fue utilizándose para resolver nuevos tipos d
se requirió la creación de nuevos modelos o paradigmas para el desarrollo de las aplicacio
La programación orientada a objetos es una forma de concebir un programa de computad
puede pensar en un programa como una lista de instrucciones que le indica a la computad
hacer, o un paquete de pequeños programas que responden a eventos específicos indica
entrada del usuario.
La programación orientada a objetos ve a un programa como un conjunto de objetos que
entre sí para resolver un problema.
El modelo orientado a objetos sirve para desarrollar sistemas de software con un alto grad
complejidad. Este modelo es tan importante que se creó el OMG (Object Management Gr
de Administración de Objetos, una agrupación no lucrativa) para establecer las normas qu
INTRODUCCIÓN DE FUNDAMENTOS DE PROGRAMACIÓN DESDE CERO

INTRODUCCIÓN

Aunque pueda parecer extraño, buena parte de los quebraderos de cabeza a los que
nos enfrentamos programando derivan de no saber bien lo que queremos hacer.
Esto responde al siguiente esquema:

No podemos pretender desarrollar un programa simplemente en base a ideas,


intuiciones, nociones. Necesitaremos métodos y esquemas claros que raramente
estarán en nuestra cabeza. Necesitarán de un trabajo de desarrollo.

El buen programador, al igual que el buen proyectista en arquitectura, ha de tener


claros cuáles son los pasos que va dando para desarrollar una construcción sólida.
La precipitación, la falta de reflexión o las prisas por terminar son malas consejeras.

Del maravilloso mundo de la programación de ordenadores. Se estudiarán los


fundamentos de la algoritmia
Algoritmia: Es la ciencia y arte de diseñar algoritmos para la resolución sistemática
de problemas de cualquier índole.
Es una Está sustentada en un
ciencia conjunto de modelos
matemáticos.

ALGORITMIA

Es un arte Requiere de grandes


dosis de heurística y
creatividad.
Esto es lo que no es recomendable hacer

Lo cual implica, simplemente, comenzar una tarea sin la preparación


necesaria. En el ejemplo del edificio sólo en situaciones de extrema sencillez
(por ejemplo levantar un cuarto) el resultado será satisfactorio. En el resto de
los casos la falta de método llevará a defectos o colapsos debido a la
ausencia de proyecto, planos, cálculos, etc.

No podemos pretender desarrollar un programa simplemente en base a ideas,


intuiciones, nociones. Necesitaremos método y esquemas claros que
raramente estarán en nuestra cabeza. Necesitarán de un trabajo de
desarrollo.
El buen programador, al igual que el buen proyectista en arquitectura, ha de
tener claros cuáles son los pasos a ir dando para desarrollar una construcción
sólida. La precipitación, la falta de reflexión o las prisas por terminar son malas
consejeras.
ALGORITMO: Definición

Es un conjunto de pasos
lógicos ordenados,
secuencialmente y finita,
escritos de tal forma que
permiten visualizar la
solución de un problema
determinado en un momento
específico.

Ing. Sonia Alexandra Pinzón Nuñez


- Ing. Rocío Rodríguez Guerrero
ALGORITMO: Caracteríticas
LEGIBLE
CONCRETO

Debe realizar las EFICIENTE


FINITO Debe
Debe generar
estar
indicarbien
un
el
Debe
operaciones
Debe
funciones
estar
tener
libre
u
con
Debe
mismo ser...
estructurado
orden
resultado
de
terminar
operaciones
un
demínimo
errores.
en algún
de
para
siempre
realización
para su que
fácil
de
se
utilización
las
(Validado)
momento
que fuede
entendimiento.
cada
siga.
paso.
recursos.
creado.
NO
DEFINIDO
AMBIGUO
PRECISO
Aun cuando el estudiante no tenga una experiencia previa en la programación de
ordenadores, es seguro que a lo largo de su vida ha ejecutado muchos algoritmos.

Un algoritmo es la especificación detallada de los pasos necesarios para llevar a


cabo una tarea específica. En la escuela, por ejemplo, aprendimos una serie de
pasos para realizar sumas, restas, multiplicaciones y divisiones, estos son
algoritmos (de hecho debemos la palabra 'algoritmo' al matemático
musulmán MUHAMMAD IBN MUSA AL-JWARIZMI.

Una receta de cocina es uno de los ejemplos más claros de algoritmo.


El conjunto de trámites que debe realizar en cualquier institución pública para la
expedición de un documento, como por ejemplo, la licencia de conducir, también es
un algoritmo.

Un programa es un algoritmo hecho para ser ejecutado por un ordenador.


Por lo expuesto anteriormente, se pretende mostrar aspectos de la algoritmia: por un
lado, se presentarán técnicas que ya son clásicas en la programación, y por otro lado,
se intentará mostrar los problemas que pueden surgir al convertir la especificación del
algoritmo en un programa que se ejecute satisfactoriamente.
Una receta de
Una analogía muy ilustrativa es la de comparar un algoritmo con:
cocina

Mientras que el programa sería análogo al: plato preparado


siguiendo dicha receta

Si usted es un cocinero novato, aun cuando tenga la receta de cocina en su mano y


siga metódicamente todos sus pasos, puede encontrar que al final el plato no es todo
lo apetitoso que usted desea, es ahí donde entra en juego el arte, la capacidad de
innovar y refinar la receta con un toque personal. Así como esa capacidad de integrar
la parte científica y técnica con la parte artística hace la diferencia entre el cocinero
novel y el chef más avezado; también la hace entre un programador principiante y un
experto.
Quienes pueden hacer un
algoritmo
Toda persona, implícitamente y
diariamente diseña y realiza
algoritmos, para dar solución a
situaciones cotidianas de forma
natural.
Sin embargo el programador
diseña el algoritmo consciente de
que al realizar cada paso
obtendrá la solución de un
problema específico
Preparar café
Ingredientes Preparación Café preparado
1.Ponga una tasa de agua en el recipiente
. Agua para calentar sobre la estufa.
. Azúcar. 2. Calienta el agua hasta justo antes de
.Café hervir.
3. Vacíe el agua caliente en una tasa.
4.Agregue las cucharadas de café que
desee.
5. Agregue las cucharadas de azúcar que
desee.
6. Revuelva hasta que los ingredientes se
mezclen adecuadamente.
PROGRAMA

ALGORITMO NATURAL
DIAGRAMACIÓN

Inicio

agua,azucar,cafe

1. Ponga una tasa de agua en el recipiente para calentar sobre la


estufa.
2. Calienta el agua hasta justo antes de hervir.
3. Vacíe el agua caliente en una tasa.
4. Agregue las cucharadas de café que desee.
5. Agregue las cucharadas de azúcar que desee.
6. Revuelva hasta que los ingredientes se mezclen adecuadamente.

Café
preparado

Fin
ALGORITMO: Cómo se hace?
El no programador haría lo siguiente:

Buscar la página de cines


en elSupongamos
diario local y mirar
que si
ve la película
deseamos anunciada.
ir al cine a verSila
la ve anunciada
tercera mira
película deen
Laqué
cine la hacen
Guerra delasy se va a
Galaxias,
verla. Si noprocedemos?
¿cómo la ve anunciada,
espera a los estrenos de
lasemana que viene.

Ing. Sonia Alexandra Pinzón Nuñez


- Ing. Rocío Rodríguez Guerrero
ALGORITMO: Cómo se hace?
El programador sin embargo, lo haría de
este otro modo:
Buscar la página de cines en el diario
1
local, con fecha de hoy

2 Revisar la cartelera de arriba abajo y de izquierda


a derecha, buscando entre los títulos existentes.

3 Si se encuentra el título La Guerra de las


Galaxias, no seguir buscando. Apuntar el
nombre del cine, su dirección y los horarios

Si no se encuentra el título en la cartelera,


4
esperar una semana y volver a empezar el
proceso a partir del punto 1 de esta lista.
Ing. Sonia Alexandra Pinzón Nuñez
- Ing. Rocío Rodríguez Guerrero
ALGORITMO: Otro ejemplo
Encender un automóvil
1. Poner la llave.
2. Asegurarse que el cambio esté en neutro.
3. Pisar el el acelerador.
4. Girar la llave hasta la posición “arranque”.
5. Si el motor arranca antes de 6 seg, dejar
la llave en la posición “encendido”.
6. Si el motor no arranca antes de 6 seg,
volver al paso 3 (como máximo 5 veces).
7. Si el auto no arranca, llamar a la grúa.

Ing. Sonia Alexandra Pinzón Nuñez


- Ing. Rocío Rodríguez Guerrero
ALGORITMO: Requisitos

Seguir los pasos del Debe Definirse del


Por ejemplo:
algoritmo debe sellevarnos problema
SiLos
No sealgoritmos
requiere
debemos crean el
hallar
omitir la
aparalaresolver
resolución del
velocidad de un
contexto de nuestrosautomóvil, Debe estar dentro
problema.
problemas.
es necesario, definir si la
algoritmos. de contexto
Siempre que sea posible
Es importante
distancia
Es debeque
necesario juntoen
ser
establecer
seguiremos
al
lo algoritmo,
metros, que kilómetros,
personalmente se necesita
los
etc y
pasosy Debe resolver el
eldescribamos
tiempo
dónde se debeclaramente
estará dado en
comenzar.
de nuestro que éste
el problema
segundos
algoritmo
u horas, ya nos que problema
para comprobar
resolver.que puede
son
lapermitevelocidad
efectivamente correctos y Debe evitar la
representarse en Km/h ó
conducen efectivamente a ambigüedad
mts/seg.
la solución esperada.

Ing. Sonia Alexandra Pinzón Nuñez


- Ing. Rocío Rodríguez Guerrero
ALGORITMO: Técnicas de Diseño

Top Down
Está
Es una técnica
técnica de permite
diseño
dividir el problema Divide y vencerás
descendente donde se en
pequeñas partes, a las
realiza un refinamiento
cuales se que
sucesivo, les da solución
permite
por
darleseparado, luego se
una organización a
integran las soluciones
las instrucciones, en
para
formaresolver el problema
de módulos o
principal.
bloques.

Ing. Sonia Alexandra Pinzón Nuñez


- Ing. Rocío Rodríguez Guerrero
ALGORITMO: Técnicas de Representación

Diagrama de Flujo
Es una técnica
Está técnica quepermite
permite representar
representar el algoritmo
Pseudocódigo
gráficamenteunlas lenguaje
mediante
operaciones estructurado,
más y
estructuras que
facilitando su se van a
posterior Inicio
realizar, mediante una
codificación. Instrucción 1
simbología estándar, con Instrucción 2
un único punto de inicio y Si condición entonces
Instrucción 3
uno de finalización. ..
.
Instrucción n
Fin

Ing. Sonia Alexandra Pinzón Nuñez


- Ing. Rocío Rodríguez Guerrero
PSEUDOCÓDIGO:Cómo se Hace?
Cada instrucción que se va a realizar
1
debe comenzar por un verbo, ejemplo:
Muestre, Haga, Lea, etc.

2 Se debe mantener una identación o sangría


sobre el margen izquierdo para identificar
fácilmente el comienzo y final de las estructuras

3 La representación de las estructuras son


similares u homónimas de los lenguajes de
programación, ejemplo: inicio, fin, mientras
que, repita_hasta, si_entonces_sino, etc.

Ing. Sonia Alexandra Pinzón Nuñez


- Ing. Rocío Rodríguez Guerrero
PSEUDOCÓDIGO:Cómo se Hace?
Inicio : Denota el punto de inicio del algoritmo.

Leer : Denota la acción de introducir datos o variables


desde un dispositivo estándar de entrada.

Imprimir : Representa la acción de enviar datos desde


variables a un dispositivo estándar de salida.

Calcular : Denota la realización de cualquier operación


aritmética que genere valores para ser
almacenados en una variable.

Fin: Denota el punto de finalización del algoritmo.

Ing. Sonia Alexandra Pinzón Nuñez


- Ing. Rocío Rodríguez Guerrero
DIAGRAMA DE FLUJO: Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
Permite para
realización
indicar la
de un
Entradaindicar
proceso el punto
de matemático,
datos de
desde
inicio
un y finalización
dispositivo
o una operación del
estándar
de
diagrama
asignación

Ing. Sonia Alexandra Pinzón Nuñez


- Ing. Rocío Rodríguez Guerrero
DIAGRAMA DE FLUJO: Simbología
Lectura
Inicio
Proceso
Captura
Fin
Permite indicar la
Se utiliza
Permite para
realización
indicar la
de un
Entradaindicar
proceso el punto
de matemático,
datos de
desde
inicio
un y finalización
dispositivo
o una operación del
estándar
de
diagrama
asignación

Ing. Sonia Alexandra Pinzón Nuñez


- Ing. Rocío Rodríguez Guerrero
DIAGRAMA DE FLUJO: Simbología

Conectores
Impresión
Decisión
Flujo Permiten enlazar los
Permiten
Permitedar establecer
continuidad una
símbolos de un sentido
al condición
diagrama relacional
si la página ó
único pueden ser
lógica
o áreaque dela
Indica puede
trabajo tomar
realizaciónesta
de
horizontales o verticales.
unllena,
valor de verdadero
operaciones eldecírculo
salida a se
o
un
Estas no
dispositivopueden
estándar
falso,
utilizadecomo
este un
símbolo
conector se
entrecruzarse
(el deducen
monitory cada una
dentro deolaimpresor.)
2misma
flujos
de ellas debe tener un
página, el alternativos
otro símbolo de
único símbolo de partida
se defineejecución.
como un
y un único símbolo de
conector a otra página.
destino.

Ing. Sonia Alexandra Pinzón Nuñez


- Ing. Rocío Rodríguez Guerrero
DIAGRAMA DE FLUJO: Simbología
Estructuras de Decisión (Condición)

Decisión
Decisión
Decisión
DecisiónMúltiple
Simple
Compuesta
Anidada
Caso
Si condición
condición entonces
Val1:
Si condición entonces
Instrucciones
Si condición entonces
Instrucciones
Si No Val2:
Instrucciones
Condición Si
si condición
no entonces
Instrucciones
No No
No
Si
Condición
Condición
No siVal3:
no
Instrucciones
Si condición entonces
Condición
Si No
Condición
Val1 Val2 Condición
Val3 Otro Instrucciones
Instrucciones
Instrucciones
Si Si si no
Otros:
Instrucciones
Instrucciones
Fin Caso

Ing. Sonia Alexandra Pinzón Nuñez


- Ing. Rocío Rodríguez Guerrero
DIAGRAMA DE FLUJO: Simbología
Estructuras de Ciclo

Ciclo
Ciclo
Ciclo Para
Mientras
Hasta ..
.
.
Para v=valini, v=valfinal, inc
.
. Instrucciones
Repita
Mientras
Fin Para que condición
v=valini,v=valfinal, incremento .Instrucciones
Instrucciones .. Instrucciones
No Hasta que condición
Condición Fin Mientras
.. variable
v:..
Instrucciones
Si No valini:
.. valor inicial
Condición valfinal: valor final
Instrucciones inc: incremento
Si

Ing. Sonia Alexandra Pinzón Nuñez


- Ing. Rocío Rodríguez Guerrero
ALGORITMO: Fases de Diseño
Definición del problema

Análisis del problema

Selección de la mejor alternativa

Diagramación

Prueba de escritorio

Ing. Sonia Alexandra Pinzón Nuñez


- Ing. Rocío Rodríguez Guerrero
ALGORITMO: Selección de Alternativa
Solución ..1
Solución ..3
Se debe tener en cuenta
el principio de que las
cosas siempre se podrán
hacer de una mejor
forma.
Solución ..2

La que produce los Solución ..5


Lo importante
Analizado el problema es
resultados Esperados en el
Posiblemente tengamos
determinar cuál
menor tiempo y al menor
varias formas
es la mejorde resolverlo
alternativa
costo
Ing. Sonia Alexandra Pinzón Nuñez
- Ing. Rocío Rodríguez Guerrero
ALGORITMO: Diagramación
Dibujar
gráficamente
la lógica de la
alternativa
seleccionada
Una vez que
sabemos
cómo resolver el
Plasmar la
problema solucion
mediante el
Pseudocódigo

Ing. Sonia Alexandra Pinzón Nuñez


- Ing. Rocío Rodríguez Guerrero
ALGORITMO: Prueba de Escritorio
Esta prueba consiste en:

Es Recomendable
Al
Serealizar
Dar lo datos
utiliza
diferentes anterior
parase
de
puede ycomprobar
Dar diferentes
corroborar
entrada datos
si el
que todos
considerar
de entrada al programa
el
algoritmo
los posibleses
algoritmo correcto
casos, aún loso
plasmado
de si hay necesidad
enexcepción o cualquier
no
esperados, para asegurar
de hacer
herramienta
seguir ajustes
presenta
la secuencia indicada
que el programa no
(volver
la al paso anterior)
solución al
produzca errores en
problema
ejecución inicialse
cuando
hasta
presentenobtener
estos los
casos.
resultados

Ing. Sonia Alexandra Pinzón Nuñez


- Ing. Rocío Rodríguez Guerrero
Dato

La palabra proviene del latín datum, forma


del verbo dare “dar”, que significa“Lo que es
dado”

Representación de una información de


manera adecuada para su tratamiento por un
ordenador
Dato
Son representaciones simbólicas de
objetos, hechos, instituciones,
conocimientos.
Ejemplos
15
25º C
25 m
31-10-2005
Febrero
María Pérez
Información

Los datos organizados o procesados


adquieren significado y proporcionan
conocimiento o desencadenan un
comportamiento sobre los hechos u
objetos que lo originaron

La información se resumen en :
Datos + significado
Información
Un grupo de datos es información

• Datos: 19- Marzo – Maria – 20 ptos.

• Información: El 19 de marzo se publicó en


acta la calificación de 20 ptos para María

El principal objetivo de la información


consiste en aumentar el conocimiento o
reducir la incertidumbre.
Información

Ejemplos
Juan tiene 15 años
25º C fue la temperatura de esta mañana.
El edificio “Robles” mide 25 m de altura
La fecha de hoy es 31-10-2005
Febrero tiene 28 días y 29 si el año es bisiesto.
María Pérez es un nombre muy común
Problema
Es un asunto o un conjunto de cuestiones que
se plantean para ser resueltas.

La naturaleza de los problemas varía con el


ámbito o el contexto: problemas matemáticos,
químicos, filosóficos, etc.

Es importante que al abordar un problema se


tenga una descripción simple y precisa del
mismo, de lo contrario resultaría complejo
modular, simular, o programar su solución en
un ordenador.
Problema
Un programador es una persona que resuelve
problemas, y para llegar a ser un programador
eficaz se necesita aprender a resolver problemas
de un modo riguroso y sistemático

Problema Diseño Algoritmo

Análisis Programa
Problema
Algunos de los pasos para solucionar un problema son:

Análisis: consiste en el estudio detallado del problema.


Se debe identificar los datos de entrada, de salida y la
descripción del problema.

Diseño del algoritmo, que describe la secuencia


ordenada de pasos que conduce a la solución de un
problema dado.
 Expresar el algoritmo como un programa en un
lenguaje de programación adecuado (Fase de
Codificación)

 Ejecución y validación del programa por el


computador
Algoritmo

Etimología: Proviene del nombre del


matemático persa Mohammed Al-khowanzmi,
cuyo apellido traducido al latín es Algorismus

Conjunto de acciones que especifican la


secuencia de operaciones realizar, en orden,
para resolver un problema

Los algoritmos son independientes tanto del


lenguaje de programación como del
computador que los ejecuta.
Algoritmo

 Finito: un algoritmo siempre debe terminar después de un


número finito de pasos

 Definido: si se sigue un algoritmo dos veces se debe obtener el


mismo resultado

 Preciso: indicar exactamente el orden de realización de


las instrucciones
Algoritmo

Ejemplo tradicional de un algoritmo: Cambiar la rueda


pinchada de un coche
Algoritmo

1. Buscar herramientas, rueda de repuesto y triángulo


de señalización
2. Ubicar el triángulo en el lugar adecuado

3. Ir al lugar de la rueda averiada

4. Sacar las tuercas

5. Colocar el gato

6. Levantar el coche
Algoritmo

7. Sacar la rueda

8. Colocar la rueda de Repuesto

9. Colocar las tuercas

10. Apretar las tuercas

11. Guardar las herramientas

FIN
Algoritmo
Fases de Desarrollo de un Algoritmo

Fase Producto
Análisis Especificación

Diseño Algoritmo

Codificación Programa

Compilación Prog. Ejecutable


Interpretación
Pruebas Aplicación
Algoritmo
Fase de Análisis: consiste en el estudio detallado del
problema con el fin de obtener una serie de documentos
(especificación) en los cuales quedan totalmente definido
el proceso a seguir en la automatización

Estudio detallado Documentos de Especificación


Algoritmo
Diseño: consiste en la realización del algoritmo que
resuelve el problema de acuerdo a la especificación dada
en la fase anterior. El algoritmo se representa mediante
pseudocódigo.
Algoritmo PRUEBA
Inicio
Variables
A,B,C: entero
Leer(A,B)
CA+B
Escribir (C)

Documentos de Fin
Especificación
Algoritmo
Codificación: consiste en la traducción del algoritmo a
un programa escrito en un lenguaje de programación

Algoritmo Sumar
Inicio
Variables
A,B,C: entero
Leer(A,B)
CA+B
Escribir (C)
Fin Programa escrito
en un Lenguaje de Programación
Algoritmo
Compilación/Interpretación: consiste en obtener el
programa ejecutableobjeto a partir del programa fuente.

Programa Ejecutable

Programa fuente
Algoritmo
Prueba: consiste en determinar si el programa funciona
correctamente y realiza las operaciones que esperamos
de él.

Programa Ejecutable Aplicación


Lenguajes de programación

Lenguaje: conjunto de reglas y convenciones que se utilizan


para comunicar información.

Lenguaje de Programación: es un lenguaje que permite la


traducción de un algoritmo para que sea entendible por el
computador. Son los lenguajes utilizados para escribir
programas de ordenadores.
Tipos de Lenguaje de Programación:

 Lenguaje de Máquina

 Lenguaje de Bajo Nivel (Ensamblador)

 Lenguaje de Alto Nivel


Lenguaje de máquina
Son aquellos que están escritos en lenguaje
directamente inteligibles por la máquina, ya que sus
instrucciones son cadenas binarias (0’s ,1’s) que
especifican una operación.

Las instrucciones en lenguaje máquina dependen del


Hardware de la computadora, difiere de una PC a otra.

La ventaja de los lenguajes máquina es que ofrecen


mayor velocidad de ejecución.

Existen algunas desventajas: dificultad y lentitud en la


codificación, poca fiabilidad, los programas no son
portables.
Ejemplo Lenguaje Máquina

11001010 00010111 11110101 00101011


00010111 11110101 00101011 00101011
11001010 00010111 11110101 00101011
00010111 11110101 00101011 00101011
11001010 11110101 00101011 00101011
11001010 11001010 11110101 00101011
11001010 11110101 00101011 00101011
11001010 00010111 11110101 00101011
00010111 11110101 00101011 00101011
11001010 11110101 00101011 00101011
Lenguaje de bajo nivel

Son lenguajes que permiten escribir programas con


instrucciones similares al lenguaje humano.

Son más fáciles de utilizar que los lenguajes de


máquina, pero éstos también dependen de la máquina en
particular.
El mejor ejemplo es el lenguaje ensamblador

Un programa escrito en lenguaje ensamblador requiere


una fase de traducción.
Entre las desventajas tenemos: que este lenguaje
depende de la máquina y demanda una mayor exigencia
para los programadores, ya que deben conocer tanto las
técnicas de programación así como el interior de la
máquina
Ejemplo Lenguaje Ensamblador
; HOLA.ASM
STACK SEGMENT STACK ; Segmento de pila
DW 64 DUP (?) ; Define espacio en la pila
STACK ENDS

DATA SEGMENT ; Segmento de datos


SALUDO DB "Hola mundo!!",13,10,"$" ; Cadena
DATA ENDS

INICIO: ; Punto de entrada al programa


MOV AX,DATA ; Pone dirección en AX
MOV DS,AX ; Pone la dirección en los registros
MOV DX,OFFSET SALUDO ; Obtiene dirección del mensaje
MOV AH,09H ; Función: Visualizar cadena
INT 21H ; Servicio: Funciones alto nivel DOS
MOV AH,4CH ; Función: Terminar
INT 21H
CODE ENDS
END INICIO ; Marca fin y define INICIO
Lenguaje de alto nivel
Son los más utilizados por los programadores

Son independientes de la máquina

Los programas escritos en estos lenguajes son


portables

Aumento de la ocupación de la memoria

Las estructuras de los programas se basan en reglas


sintácticas
Ejemplos: C, C++, Pascal, Ada, Prolog, Smalltalk, Visual
Basic, Delphi, Java,...
Ejemplo Lenguaje alto nivel

#include <stdio.h>

int main(void)
{
printf("Hola, Mundo\n");
}
Traductores de Lenguaje

Traductores de Lenguajes: son programas que traducen


a su vez los programas fuentes escritos en lenguajes de
alto nivel a código máquina. Estos se dividen en
intérpretes y compiladores.
Etapas de programación
Código Fuente Errores
léxicos
Modificación del Tiempo de
programa fuente Compilador compilación

APLICACIÓN
Existen No
BUENA PROGRAMACIÓN
Errores Código objeto
Errores
lógicos Linkado/
Tiempo de
Interpretación
pruebas
Existen Programa
Errores Ejecutable
Errores de
ejecución
No Tiempo de
Existen ejecución
Errores Pruebas

También podría gustarte