universidad latina

36
UNIVERSIDAD LATINA INFORMATICA VII (Programación e implementación de sistemas) INTRODUCCIÓN

Upload: jett

Post on 06-Jan-2016

44 views

Category:

Documents


0 download

DESCRIPTION

UNIVERSIDAD LATINA. INFORMATICA VII (Programación e implementación de sistemas). INTRODUCCIÓN. QUE ES PROGRAMACIÓN. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: UNIVERSIDAD LATINA

UNIVERSIDAD LATINA

INFORMATICA VII (Programación e implementación de sistemas)

INTRODUCCIÓN

Page 2: UNIVERSIDAD LATINA

QUE ES PROGRAMACIÓN

La programación informática es el proceso de diseñar, codificar, depurar y mantener el código fuente de programas computacionales. El código fuente es escrito en un lenguaje de programación.

Page 3: UNIVERSIDAD LATINA

CUAL ES EL PROPOSITO DE LA PROGRAMACION

El propósito fundamental es la creación de programas, software y/o sistemas de información para la toma de decisiones.

Es la creación de programas que tengan un comportamiento deseado.

Page 4: UNIVERSIDAD LATINA

CUALES SON LOS REQUISITOS PARA LA PROGRAMACIÓN.

El proceso de escribir código requiere:

• conocimientos en varias áreas distintas,• además del dominio del lenguaje a utilizar, • algoritmos especializados, • lógica formal y• la utilización de un compilador adecuado. Programar no involucra necesariamente otras tareas tales como el análisis y diseño de la aplicación (pero sí el diseño del código), aunque sí suelen estar fusionadas en el desarrollo de pequeñas aplicaciones.

Page 5: UNIVERSIDAD LATINA

PROGRAMA.Es un conjunto de instrucciones organizadas de acuerdo al lenguaje (generalmente de alto nivel) con que se vaya a operar y nos permite, a través de estas, realizar funciones o tareas especificas de cómputo

Page 6: UNIVERSIDAD LATINA

DEFINICIÓN DE PROGRAMAS DE SISTEMA.Son aplicaciones de utilidad que se suministran con el Sistema Operativo pero no forman parte de él. Ofrecen un entorno útil para el desarrollo y ejecución de programas, siendo algunas de las tareas que realizan:

•Manipulación y modificación de archivos.(editores)•Información del estado del sistema.(monitores)•Soporte a lenguajes de programación.(compiladores)•Comunicaciones.(redes)

Page 7: UNIVERSIDAD LATINA

QUE ES UN LENGUAJE DE PROGRAMACION.

Un lenguaje de programación es un idioma artificial diseñado para expresar procesos que pueden ser llevadas a cabo por máquinas como las computadoras.

Está formado por un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones.

Al proceso por el cual se escribe, se prueba, se depura, se compila y se mantiene el código fuente de un programa informático se le llama programación.

Page 8: UNIVERSIDAD LATINA

CARACTERISTICAS DEL LENGUAJE DE PROGRAMACIÓN.

Los programas para ser entendidos por la computadora se codifican en lenguaje binario (ceros y unos), esta codificación se conoce como lenguaje maquina.

De acuerdo a su nivel de abstracción entre mas lejano es un lenguaje a la computadora, se le domina de alto nivel, de lo contrario es de bajo nivel.

Page 9: UNIVERSIDAD LATINA

Lenguaje de máquina.

Es el lenguaje de mas bajo nivel que consiste en la combinación de 0s y 1s para formar las ordenes entendibles por el hardware.

Son mucho mas rápidos que un lenguaje de alto nivel y tienen como desventaja que generan enormes códigos fuente donde encontrar un error es casi imposible además de tener un conocimiento profundo de la arquitectura del equipo que se utilice.

Page 10: UNIVERSIDAD LATINA

CARACTERISTICAS DEL LENGUAJE DE PROGRAMACIÓN. (sistemas numéricos)

Donde base r puede se : binario, octal, decimal o hexadecimal de los mas utilizados en computación.

Page 11: UNIVERSIDAD LATINA

CARACTERISTICAS DEL LENGUAJE DE PROGRAMACIÓN. (Ejercicios)

Ejemplo 1:

Hacer la siguiente conversión de binario a decimal.

Convertir (11011)2, a base 10 (decimal)

Page 12: UNIVERSIDAD LATINA

CARACTERISTICAS DEL LENGUAJE DE PROGRAMACIÓN. (Ejercicios)Ejemplo 1.

Convertir (11011)2, a base 10 (decimal)De base r a base 10 se multiplica

Desarrollo:

(11011)2 = 1*24 + 1*23 + 0*22 + 1*21 + 1*20

=16 + 8 + 0 + 2 + 1

= (27)10

Page 13: UNIVERSIDAD LATINA

CARACTERISTICAS DEL LENGUAJE DE PROGRAMACIÓN. (Ejercicios)

Ejemplo 2:

Convertir (B2A)16 a base 10 (decimal).

Page 14: UNIVERSIDAD LATINA

CARACTERISTICAS DEL LENGUAJE DE PROGRAMACIÓN. (Ejercicios)Ejemplo 2:

Convertir (B2A)16 a base 10 (decimal).

Expresando el número en notación polinomial usando base 10 para cada cantidad tenemos:

(B2A)16 = (11*162 + 2*161 + 10*160)10

= (11*256 + 2*16 + 10 )10

= (2858)10

Page 15: UNIVERSIDAD LATINA

CARACTERISTICAS DEL LENGUAJE DE PROGRAMACIÓN. (Ejercicios)Ejemplo 2:

Convertir (B2A)16 a base 10 (decimal).

Expresando el número en notación polinomial usando base 10 para cada cantidad tenemos:

(B2A)16 = (11*162 + 2*161 + 10*160)10

= (11*256 + 2*16 + 10 )10

= (2858)10

Page 16: UNIVERSIDAD LATINA

CARACTERISTICAS DEL LENGUAJE DE PROGRAMACIÓN. (Ejercicios)

Ejemplo 3:

Convertir (25)10 a base 2, 8 y 16.

De base 10 a base r se divide

Page 17: UNIVERSIDAD LATINA

CARACTERISTICAS DEL LENGUAJE DE PROGRAMACIÓN. (Ejercicios)

Page 18: UNIVERSIDAD LATINA

CARACTERISTICAS DEL LENGUAJE DE PROGRAMACIÓN. (Ejercicios)

Page 19: UNIVERSIDAD LATINA

Lenguaje CEl lenguaje C es un lenguaje de programación creado en 1972 por Dennis M. Ritchie en los Laboratorios Bell. Es un lenguaje orientado a la implementación de Sistemas Operativos, como Unix y Linux. C es un excelente lenguaje que permite manipular las estructuras de datos en los niveles de memoria principal del computador y es el lenguaje de programación más adecuado para crear software de sistemas, aunque también se utiliza para crear aplicaciones. C es un lenguaje fuertemente tipificado de medio nivel pero con muchas características de bajo nivel. Dispone de las estructuras típicas de los lenguajes de alto nivel pero, a su vez, dispone de construcciones del lenguaje que permiten un control a muy bajo nivel. Los compiladores suelen ofrecer extensiones al lenguaje que posibilitan mezclar código en ensamblador con código C o acceder directamente a memoria o dispositivos periféricos.

Page 20: UNIVERSIDAD LATINA

Lenguaje C++El nombre C++ fue propuesto por Rick Mascitti en el año 1983, cuando el lenguaje fue utilizado por primera vez fuera de un laboratorio científico. Antes se había usado el nombre "C con clases". En C++, la expresión "C++" significa "incremento de C" y se refiere a que C++ es una extensión del lenguaje C. El propósito de su creación fue el extender al exitoso lenguaje de programación C con mecanismos que permitan la manipulación de objetos. En ese sentido, desde el punto de vista de los lenguajes orientados a objetos, el C++ es un lenguaje híbrido.Posteriormente se añadieron facilidades de programación genérica, que se sumó a los otros dos paradigmas que ya estaban admitidos (programación estructurada y la programación orientada a objetos). Por esto se suele decir que el C++ es un lenguaje de programación multiparadigma. Una particularidad del C++ es la posibilidad de redefinir los operadores, y de poder crear nuevos tipos que se comporten como tipos fundamentales.

Page 21: UNIVERSIDAD LATINA

Practica 1:

Desarrolla un sistema conversor que:

Mostrará tres opciones: 1 .- Convertir un numero decimal a binario; 2.- Convertir un numero Binario a Decimal; 3.- Salir del Sistema.

Page 22: UNIVERSIDAD LATINA

main(){ unsigned long n; char op;

for(;;) { op = menu(); switch(op) { case '1': printf("\nConversor Decimal -> Binario\n"); printf("Introduza un numero Decimal: "); scanf("%lu",&n); printf("Numero Binario correspondente: "); printf("%lu",conversor(n,2,10)); break; case '2': printf("\nConversor Binario -> Decimal\n"); printf("Introduza un numero Binario: "); scanf("%lu",&n); printf("Numero Decimal correspondente: "); printf("%lu",conversor(n,10,2)); break; case 'S': case 's': exit(0); break; default: printf("\nOpcion invalida!\n"); }//switch getch(); }//for}

#include <stdio.h>#include <conio.h>#include <stdlib.h>

char menu(){char c;printf("\n");printf("1 - Decimal -> Binario\n");printf("2 - Binario -> Decimal\n");printf("S - Salir\n");printf("\nSeleccione opcion: ");c = getche();return c;}

unsigned long conversor(unsigned long n1,int base1,int base2){ unsigned long alg,mult=1,n2=0; while (n1 > 0) { alg = n1 % base1; n1 /= base1; n2 += (alg*mult); mult *= base2; } return n2;}

Page 23: UNIVERSIDAD LATINA

Lenguaje ensamblador

Es un derivado del lenguaje de máquina donde en lugar de usar ceros y unos esta formado por abreviaturas de letras y números llamadas mnemotécnicos.Para usar un lenguaje ensamblador se requiere un lenguaje traductor, es decir un lenguaje que permita pasar los programas escritos en lenguaje ensamblador a lenguaje de máquina.Los lenguajes ensambladores generan códigos fuente muy pequeños que los generados en código de máquina y su desventaja es que la programación es difícil y tediosa, repetitiva y propensa de errores

Page 25: UNIVERSIDAD LATINA

Lenguaje de alto nivel

Surge a partir de la aparición de las macroinstrucciones que son instrucciones escritas en un lenguaje diferente al lenguaje maquina pero entendidas por esta.

El lenguaje de alto nivel es un lenguaje muy similar al lenguaje humano, que usa palabras o comandos del lenguaje natural como el ingles.

Page 26: UNIVERSIDAD LATINA

Lenguaje C Sharp

El lenguaje C Sharp o C# (pronunciado sharp en inglés) es un lenguaje de programación orientado a objetos desarrollado y estandarizado por Microsoft como parte de su plataforma .NET, que después fue aprobado como un estándar por la ECMA (ECMA-334) e ISO (ISO/IEC 23270). Su sintaxis básica deriva de C/C++ y utiliza el modelo de objetos de la plataforma .NET, similar al de Java, aunque incluye mejoras derivadas de otros lenguajes.

Page 27: UNIVERSIDAD LATINA

Practica 2.-

Desarrolla una clase en Visual C# que: Simule un cajero automático con las funciones básicas de depósito, retiro y saldo como se muestra en el ejemplo. El sistema debe validar un password y mandará un mensaje de error si se retira mas de lo disponible en caja.

Page 28: UNIVERSIDAD LATINA

QUE SON LOS INTERPRETES

Es un programa que realiza la traducción y ejecución de forma simultánea. Es decir un intérprete lee el código fuente y lo va ejecutando al mismo tiempo.

Traduce un programa de alto nivel a lenguaje de máquina de manera distinta a un compilador: el interprete no traduce un programa fuente en un solo paso sino que va traduciendo y ejecutando instrucción por instrucción, hasta que traduce y ejecuta una instrucción pasa a la siguiente.

Page 29: UNIVERSIDAD LATINA

QUE SON LOS COMPILADORES

Un compilador es un programa que traduce un programa fuente escrito en lenguaje fuente y da como resultado un programa objeto que ya puede procesar la computadora.

Page 30: UNIVERSIDAD LATINA

LENGUAJE COMPILADO

El lenguaje C/C++ se conoce como un lenguaje compilado.

Existen dos tipos de lenguaje: interpretados y compilados. Los interpretados son aquellos que necesitan del código fuente para funcionar (P.ej: PHP y Python). Los compilados convierten el código fuente en un archivo objeto y éste en un programa. Este es el caso del lenguaje C/C++ y C Sharp.

Page 31: UNIVERSIDAD LATINA

QUE ES UN COMPILADOR

Un compilador es un programa que permite traducir el código fuente de un programa en lenguaje de alto nivel (C, C++ O C Sharp), a otro lenguaje de nivel inferior (típicamente lenguaje de máquina), generando un programa equivalente que la máquina será capaz de interpretar o (.EXE). Sin embargo también puede ser un código intermedio (bytecode), o simplemente texto. Este proceso de traducción se conoce como compilación.

Page 32: UNIVERSIDAD LATINA

CARACTERÍSTICAS DE UN COMPILADORGeneralmente un compilador se divide en dos partes:

* Front End: parte que analiza el código fuente, comprueba su validez, genera el árbol de derivación y rellena los valores de la tabla de símbolos. Parte que suele ser independiente de la plataforma o sistema operativo para el que funcionará.

* Back End: parte en donde se genera el código máquina exclusivo para una plataforma a partir de lo analizado en el front end.

Por lo general el resultado del back end no puede ser ejecutado directamente, se necesita pasar por un proceso de enlazado (linker).

Existen varios tipos de compiladores: Compiladores cruzados, Compiladores optimizadores, Compiladores de una sola pasada, Compiladores de varias pasadas, Compiladores JIT (Just In Time).

Page 33: UNIVERSIDAD LATINA

QUE SON LOS SISTEMAS OPERATIVOS

• Son los programas instalados en el software o en el firmware que hacen utilizable el hardware, ponen la capacidad de cómputo del hardware al servicio del usuario y administran cuidadosamente el hardware para lograr un buen rendimiento.

• Es el programa o conjunto de programas que efectúan la gestión de los procesos básicos de un sistema informático, y permite la normal ejecución del resto de las operaciones.

Page 34: UNIVERSIDAD LATINA

QUE ES EL FIRMWAREEs un bloque de instrucciones de máquina para propósitos específicos, grabado en una memoria de tipo de solo lectura (ROM), y establece la lógica de más bajo nivel que controla los circuitos electrónicos de un dispositivo de cualquier tipo

Imagen de la arquitectura de la computadora compuesta por una serie de capas de abstracción: hardware, firmware, ensamblador, kernel, sistema operativo y aplicaciones

Page 35: UNIVERSIDAD LATINA

AUTOMATIZAR.

El principio básico de automatizar es que el hombre no intervenga en un proceso sistemático real, y si lo hace deberá ser lo menos posible, a medida de que esto se lleve a cabo, el proceso o actividad logrará su automatización, cabe señalar que el proceso de automatizar depende de ciertas actividades metódicas previamente programadas ordenadamente y que pueden ser repetitivas mediante ciclos.

Page 36: UNIVERSIDAD LATINA

CONSTRUCCIÓN DE LA AUTOMATIZACIÓN.Es el conjunto de métodos que sirven para realizar tareas repetitivas en una computadora.

Algunos métodos para la automatización de tareas son la programación simple, los macros, los intérpretes y las bombas lógicas (códigos ocultos). También hay algunos programas específicos que automatizan tareas. Incluso los virus informáticos utilizados de forma benéfica podrían considerarse otro método para la automatización de tareas.