Clasificación de los programas

programación, es un lenguaje que puede ser utilizado para controlar el comportamiento de una máquina, particularmente una computadora. Consiste en un conjunto de reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos, respectivamente. Aunque muchas veces se usa lenguaje de programación y lenguaje informático como si fuesen sinónimos, no tiene por qué ser así, ya que los lenguajes informáticos engloban a los lenguajes de programación y a otros más, como, por ejemplo, el LIGHT
Pueden usarse para crear programas que controlen el comportamiento físico y lógico de una máquina, para expresar algoritmos con precisión, o como modo de comunicación humana.
El ordenador sólo entiende un lenguaje conocido como código binario o código máquina, consistente en ceros y unos. Es decir, sólo utiliza 0 y 1 para codificar cualquier acción.
Los lenguajes más próximos a la arquitectura harreare se denominan lenguajes de bajo nivel y los que se encuentran más cercanos a los programadores y usar
ios se denominan lenguajes de alto nivel.
Programación de alto nivel

Un lenguaje de alto nivel permite al programador escribir las instrucciones de un programa utilizando palabras o expresiones sintácticas muy similares al inglés. Por ejemplo, en se pueden usar palabras tales como: case, et.
Los lenguajes de alto nivel logran la independencia del tipo de máquina y se aproximan al lenguaje natural. Los lenguajes de alto nivel, también denominados lenguajes evolucionados, surgen con posterioridad a los anteriores, con los siguientes objetivos, entre otros:
Lograr independencia de la máquina, pudiendo utilizar un mismo programa en diferentes equipos con la única condición de disponer de un programa traductor o compilador, que lo suministra el fabricante, para obtener el programa ejecutable en lenguaje binario de la máquina que se trate. Además, no se necesita conocer el harreare específico de dicha máquina.
Aproximarse al lenguaje natural, para que el programa se pueda escribir y leer de una forma más sencilla, eliminando muchas de las posibilidades de cometer errores que se daban en el lenguaje máquina, ya que se utilizan palabras (en inglés) en lugar de cadenas de símbolos sin ningún significado aparente.
Incluir rutinas de uso frecuente como son las de entrada/salida, funciones matemáticas, manejo de tablas, etc, que figuran en una especie de librería del lenguaje, de tal manera que se pueden utilizar siempre que se quieran sin necesidad de programarlas cada vez.
Se puede decir que el principal problema que presentan los lenguajes de alto nivel es la gran cantidad de ellos que existen actualmente en uso (FORRARAN, LISO, ALGO, COLOMBO, APLAZA,, PROLOGO, MODULAR, ALGODONAL, PASCAL, SIMULA,, EUCLIDIANO,además de las diferentes versiones o dialectos que se han desarrollado de algunos de ellos
Lograr independencia de la máquina, pudiendo utilizar un mismo programa en diferentes equipos con la única condición de disponer de un programa traductor o compilador, que lo suministra el fabricante, para obtener el programa ejecutable en lenguaje binario de la máquina que se trate. Además, no se necesita conocer el harreare específico de dicha máquina.
Aproximarse al lenguaje natural, para que el programa se pueda escribir y leer de una forma más sencilla, eliminando muchas de las posibilidades de cometer errores que se daban en el lenguaje máquina, ya que se utilizan palabras (en inglés) en lugar de cadenas de símbolos sin ningún significado aparente.
Incluir rutinas de uso frecuente como son las de entrada/salida, funciones matemáticas, manejo de tablas, etc, que figuran en una especie de librería del lenguaje, de tal manera que se pueden utilizar siempre que se quieran sin necesidad de programarlas cada vez.
Se puede decir que el principal problema que presentan los lenguajes de alto nivel es la gran cantidad de ellos que existen actualmente en uso (FORRARAN, LISO, ALGO, COLOMBO, APLAZA,, PROLOGO, MODULAR, ALGODONAL, PASCAL, SIMULA,, EUCLIDIANO,además de las diferentes versiones o dialectos que se han desarrollado de algunos de ellos
Programación de bajo nivel
Un lenguaje de programación de bajo nivel de abstracción es el que proporciona un conjunto de instrucciones aritmeticológicas sin la capacidad de encapsular dichas instrucciones en funciones que no estén ya contempladas en la arquitectura del . permite al programado rescribir instrucciones de un programa usando abreviaturas del inglés, también llamadas palabras mercadotécnicas, tales Un programa escrito en un lenguaje ensamblador tiene el inconveniente de que no es comprensible para la computadora, ya que, no está compuesto por ceros y unos. Para traducir las instrucciones de un programa escrito en un lenguaje ensamblador a instrucciones de un lenguaje máquina hay que utilizar un programa llamado ensamblador.
Variantes.
En este tipo de lenguajes se trabaja a nivel de instrucciones, es decir, su programación es al más fino detalle, además, está completamente orientado a la máquina.
Variantes.
En este tipo de lenguajes se trabaja a nivel de instrucciones, es decir, su programación es al más fino detalle, además, está completamente orientado a la máquina.
- Adaptación - Máxima entre programación y aprovechamiento del recurso de la máquina.
- Velocidad - Máxima al contar con un acceso directo a los recursos, sin capas intermedias.
- Potabilidad - Mínima por estar restringido a las especificaciones del fabricante.
- Abstracción - Mínima por depender completamente de la técnica del hardware.
- Uso - Requiere de la máxima atención y de una organización estructurada en base a los planos del harreare y del objetivo del software.
Programación lenguaje maquina
Se trata de un termino no aceptado por todos, pero q seguramente habrás oído. Estos lenguajes se encuentran en un punto medio entre los dos anteriores. Dentro de estos lenguajes podría situarse C ya que puede acceder a los registros del sistema, trabajar con direcciones de memoria, todas ellas características de lenguajes de bajo nivel y a la vez realizar operaciones de alto nivel.
Generaciones
La evolución de los lenguajes de programación se puede dividir en 5 etapas o generaciones.
• Primera generación: lenguaje maquina.
• Segunda generación: se crearon los primeros lenguajes ensambladores.
• Tercera generación: se crean los primeros lenguajes de alto nivel.
• Cuarta generación. Son los lenguajes capaces de generar código por si solos, son los llamados con lo cuales se pueden realizar aplicaciones sin ser un experto en el lenguaje. Aquí también se encuentran los lenguajes orientados a objetos, haciendo posible la re utilización d partes del código para otros programas. Visual, Natural Abades….
• Quinta generación: aquí se encuentran los lenguajes orientados a la inteligencia artificial. Estos lenguajes todavía están poco desarrollados.
Pasos para elaborar un programa
Las fases que se siguen para desarrollar sistemas comunicacionales se conoce como ciclo de vida del software y esencialmente consta de cinco etapas: 1. Especificación de Requerimientos. 2. Análisis. 3. Diseño. 4. Cumplimentación y Pruebas. 5. Mantenimiento. De acuerdo a como se suceden las fases del ciclo de vida del software, han sido propuestos dos modelos para el desarrollo de sistemas: el modelo cascada y el modelo espiral. ANÁLISIS Y DISEÑO DE SISTEMAS En el modelo cascada, el resultado de cada fase es alimentado a la siguiente, terminándose el proceso con el mantenimiento. En esta última fase se efectúan los cambios necesarios para que el sistema siga funcionando ante nuevas necesidades. El software termina su vida cuando deja de cumplir con el propósito para el que fue creado, y ya no es posible seguir actualizándolo. El modelo espiral elimina la fase de mantenimiento, por lo que cualquier modificación al sistema deberá cumplir con todas las fases nuevamente. Esto obliga a que cada fase sea muy bien hecha y esté documentada. Las fases del desarrollo de sistemas. La figura 2-3 muestra el desarrollo de sistemas (o programas) como un proceso de caja negra, entra una serie de requerimientos y a la salida se obtiene el sistema. En esta sección se explicará cada fase. Especificación de Requerimientos. Este es el primer paso para poder construir el sistema. Consiste en elaborar una lista que indique : 1. ¿Qué necesito? 2. ¿Cuál es el esbozo del problema? 3. ¿Qué espero lograr con el sistema? 4. ¿Con qué recursos cuento actualmente? 5. ¿Qué posibilidades tengo de obtener más recursos? No se puede desarrollar un buen sistema sin antes haber comprendido el problema y la teoría asociada. Si desea ser muy formal incluya también una exposición de motivos
Clasificación de los algoritmos
Hay dos clasificaciones para los algoritmos:
- Algoritmos informales
- Algoritmos multinacionales
Los algoritmos informales son aquellos que no se realizan para una computadora, sino se diseñan para ser ejecutados por el ser humano. Todos los días ejecutas algoritmos informales en todas tus actividades: al prepararte para tus clases, al vestirte, al cocinar, al regresar a casa, entre otros.
Los algoritmos multinacionales son los que se crean para que una computadora sea quien ejecute los pasos y obtener el resultado esperado. Se aprovecha la velocidad de procesamiento del ordenador para darnos un resultado mucho más confiable.
1.-Ordenamiento Burbuja
El ordenamiento burbuja es el algoritmo más fácil ya que es conceptual para iniciar. Consiste en repetir a través de una lista, comparando los elementos de a dos en dos. Si un elemento es mayor que el que está en la siguiente posición se intercambian. A continuacion las ventajas y desventajas:
Ventajas:
· Una implementan elemental.
· No necesita otra memoria.
Desventajas:
· Muy pausado .
· Realiza numerosas comparaciones.
· Realiza numerosos intercambios.
El ordenamiento burbuja es el algoritmo más fácil ya que es conceptual para iniciar. Consiste en repetir a través de una lista, comparando los elementos de a dos en dos. Si un elemento es mayor que el que está en la siguiente posición se intercambian. A continuacion las ventajas y desventajas:
Ventajas:
· Una implementan elemental.
· No necesita otra memoria.
Desventajas:
· Muy pausado .
· Realiza numerosas comparaciones.
· Realiza numerosos intercambios.
2.-Ordenamiento por Selección
Este algoritmo es algo sencillo ya que busca el componente mas pequeño de la lista
· Lo intercambias con el elemento ubicado en la primera posición de la lista.
· Buscas el segundo elemento más pequeño de la lista.
· Lo intercambias con el elemento que ocupa la segunda posición en la lista.
· Repites este proceso hasta que hayas ordenado toda la lista.
Ventajas:
· Fácil cumplimentación.
· No requiere memoria adicional.
· Realiza pocos intercambios.
· Rendimiento constante: poca diferencia entre el peor y el mejor caso.
Desventajas:
· Lento.
· Realiza numerosas comparaciones.


Este comentario ha sido eliminado por el autor.
ResponderEliminar