Está en la página 1de 8

INSTITUTO TECNOLOGICO DE TUXTLA GUTIERREZ

INGENIERIA EN SISTEMAS COMPUTACIONALES

FUNDAMENTOS DE PROGRAMACION

RESUMEN DE LA UNIDAD 1

MAURICIO GURGUA GUTIERREZ (11270733)

1.1 Clasificacin del software. El software se divide en dos categoras: A) Software de sistema: Indica a la computadora como usar sus propios componentes. Cuando enciendes la computadora sta ejecuta varios pasos para ser usada: Dentro encuentran Los sistemas operativos los ms populares son: Dos, Unix , OS/2 o Windows NT de Microsoft , Windows en su ltima versin, etc. La otra categora esta el: B) Software de aplicacin. Son el tipo de software que hacen de la computadora una herramienta til para el usuario, existen varias categoras: Aplicaciones de negocios Aplicaciones de utileras Aplicaciones personales Aplicaciones entretenimiento En las aplicaciones de negocios encontramos: a) Los procesadores de palabras, los cuales te permiten crear prcticamente cualquier tipo de documento Ej. Word, Word perfect etc. b) Las hojas de clculo; stas despliegan una matriz muy grande de columnas y renglones, las que al ser interceptadas forman las celdas que es la zona en donde se captura texto, nmeros frmulas etc. c) Las bases de datos te permiten la organizacin de los datos guardados en la computadora as como la bsqueda de datos especficos . d) Los grficos son usados para crear ilustraciones, grficas y tablas con calidad profesional basadas en datos numricos generalmente importados de otro programa. Las Utileras Ayudan a administrar y dar mantenimiento a la computadora, te ayudan a correr los diferentes programas, recuperar informacin, aumentar la eficiencia de la mquina y organizar la informacin del sistema.

Las Personales Son programas diseados para quitar lo tedioso a las tareas personales. Ej. el control de cheques, agenda de direcciones, operaciones bancarias, envo de correo electrnico etc. Las de Entretenimiento Aqu encontramos a los videojuegos. Ej. Carmen San Diego, los de astronoma, aprender el cuerpo humano etc. 1.2 Algoritmo Un algoritmo es un conjunto finito de instrucciones o pasos que sirven para ejecutar una tarea o resolver un problema. De un modo ms formal, un algoritmo es una secuencia finita de operaciones realizables, no ambiguas, cuya ejecucin da una solucin de un problema. La resolucin de un problema exige el diseo de un algoritmo que resuelva el problema, como lo muestra la siguiente figura: Ejemplo 1 Algoritmo para asistir a clases: 1. Levantarse 2. Baarse 3. Vestirse 4. Desayunar 5. Cepillarse los dientes 6. Salir de casa 7. Tomar el autobs 8. Llegar al IT 2. 9. Buscar el aula 10. Ubicarse en un asiento

1.3 Lenguaje de Programacin Es un conjunto de palabras, smbolos y reglas sintcticas mediante los cuales puede indicarse a la computadora los pasos a seguir para resolver un problema Estos lenguajes se clasifican en tres grandes categoras: Lenguaje Mquina, Lenguaje de Bajo nivel (ensamblador), Lenguaje de Alto nivel.

Lenguaje Mquina Son aqullos que estn escritos en lenguajes directamente inteligibles por la mquina (computadora), ya que sus instrucciones son cadenas binarias (cadenas o series de caracteres de dgitos 0 y 1) que especifican una operacin y las posiciones (direccin) de memoria implicadas en la operacin se denominan instrucciones de mquina o cdigo mquina. El cdigo mquina es el conocido cdigo binario. Las instrucciones en lenguaje mquina dependen del hardware de la computadora y, por tanto, diferirn de una computadora a otra. Lenguajes de Bajo Nivel: Son ms fciles de utilizar que los lenguajes mquina, pero al igual que ellos, dependen de la mquina en particular. El lenguaje de bajo nivel por excelencia es el ensamblador. Las instrucciones en lenguaje ensamblador son instrucciones conocidas como nemotcnicos. Por ejemplo, nemotcnicos tpicos de operaciones aritmticas son : en ingls: ADD, SUB, DIV, etc. ; en espaol: SUM, RES, DIV, etc. El programa original escrito en lenguaje ensamblador se denomina programa fuente y el programa traducido en lenguaje mquina se conoce como programa objeto, el cual ya es directamente entendible por la computadora Lenguajes de Alto Nivel Estos lenguajes son los ms utilizados por los programadores. Estn diseados para que las personas escriban y entiendan los programas de un modo mucho ms fcil que los lenguajes mquina y ensambladores. Un programa escrito en lenguaje de alto nivel es independiente de la mquina (las instrucciones no dependen del diseo del hardware o de una computadora en particular), por lo que estos programas son portables o transportables. Los programas escritos en lenguaje de alto nivel pueden ser ejecutados con poca o ninguna modificacin en diferentes tipos de computadoras. 1.4 Programa Es un conjunto de instrucciones escritas en un lenguaje de programacin que indican a la computadora la secuencia de pasos para resolver un problema. 1.5 programacin.

Es la implementacin de un algoritmo en un determinado lenguaje de programacin, conformando un programa. 1.6 Paradigmas de programacin El aumento en la complejidad de los grandes sistemas de software ha propiciado el desarrollo de lenguajes de programacin ms expresivos. La tendencia en los lenguajes de programacin ha ido de los lenguajes que dicen al computador qu hacer ( lenguajes imperativos) , hacia los lenguajes que describen abstracciones clave en el dominio del problema ( lenguajes declarativos). Generaciones de lenguajes de programacin Wegner clasific algunos de los lenguajes de programacin de alto nivel ms populares en generaciones, de acuerdo con las caractersticas en que fueron pioneros. Lenguajes de primera generacin ( 1954-1958): FORTRAN I : Expresiones matemticas. ALGOL 58: Expresiones matemticas. Flowmatic : Expresiones matemticas. IPL V :Expresiones matemticas. Estn tambin los: Lenguajes de segunda generacin ( 1959-1961): FORTRAN II : ALGOL 60 : COBOL : Subrutinas, compilacin separada Estructuras de bloques, tipos de datos. Descripcin de datos, manejo de archivos.

Lisp: Procesamiento de listas, apuntadores, recoleccin de basura Lenguajes de tercera generacin ( 1962-1970): PL/1: FORTRAN + ALGOL + COBOL ALGOL 68 : Sucesor riguroso de ALGOL 60. Pascal: Sucesor sencillo de ALGOL 60. Simula : Clases, abstraccin de datos.

1.7 Editores de Texto No debe confundirse con procesador de texto. Un editor de texto es un programa que permite crear y modificar archivos digitales compuestos nicamente por texto sin formato, conocidos comnmente como archivos de texto o texto plano. El programa lee el archivo e interpreta los bytes ledos segn el cdigo de caracteres que usa el editor. Hoy en da es comnmente de 7- 8-bits en ASCII o UTF-8, rara vez EBCDIC. Por ejemplo, un editor ASCll de 8 bits que lee el nmero binario 0110 0001 (decimal 97 hexadecimal 61) en el archivo lo representar en la pantalla por la figura a, que el usuario reconoce como la letra "a" y ofrecer al usuario las funciones necesarias para cambiar el nmero binario en el archivo. Los editores de texto son incluidos en el sistema operativo o en algn paquete de software instalado y se usan cuando se deben crear o modificar archivos de texto como archivos de configuracin, scripts o el cdigo fuente de algn programa. El archivo creado por un editor de texto incluye por convencin en DOS y Microsoft Windows la extensin .txt, aunque pueda ser cambiada a cualquier otra con posterioridad. Tanto Unix como Linux dan al usuario total libertad en la denominacin de sus archivos. Diferencia entre texto "plano" y archivos de texto con diagramacin Los editores de textos "planos" se distinguen de los procesadores de textos en que se usan para escribir slo texto, sin formato y sin imgenes, es decir sin diagramacin. El texto plano es representado en el editor mostrando todos los caracteres presentes en el archivo. Los nicos caracteres de formateo son los caracteres de control del respectivo cdigo de caracteres. En la prctica, estos son: salto de lnea, tabulacin horizontal y retorno de carro. El cdigo de caracteres ms usado en el ao 2007 es el ASCII. Los documentos creados por un procesador de texto generalmente contienen ms caracteres de control para darle al texto un formato o diagramacin particular, a menudo protegidos de ser copiados por una Marca registrada como por ejemplo negrilla, cursiva, columnas, tablas, tipografa, etc. En un comienzo se utilizaron tales formatos slo en Autoedicin, pero hoy se utilizan incluso en el procesador de texto ms sencillo. Los procesadores de texto pueden en la mayora de los casos almacenar un texto plano en un archivo de texto plano, pero se le debe ordenar explcitamente que se desea esa opcin, de otra manera podra guardarlo con algn formato especial.

1.8 Compiladores Un compilador es un programa informtico que traduce un programa escrito en un lenguaje de programacin a otro lenguaje de programacin, generando un programa equivalente que la mquina ser capaz de interpretar. Usualmente el segundo lenguaje es lenguaje de mquina, pero tambin puede ser simplemente texto. Este proceso de traduccin se conoce como compilacin. Un compilador es un programa que permite traducir el cdigo fuente de un programa en lenguaje de alto nivel, a otro lenguaje de nivel inferior (tpicamente lenguaje de mquina). De esta manera un programador puede disear un programa en un lenguaje mucho ms cercano a como piensa un ser humano, para luego compilarlo a un programa ms manejable por una computadora. Proceso de compilacin Es el proceso por el cual se traducen las instrucciones escritas en un determinado lenguaje de programacin a lenguaje maquina. Adems de un traductor, se pueden necesitar otros programas para crear un programa objeto ejecutable. 1.9 Ejecutables Normalmente la creacin de un programa ejecutable (un tpico.exe para Microsoft Windows o DOS) conlleva dos pasos. El primer paso se llama compilacin (propiamente dicho) y traduce el cdigo fuente escrito en un lenguaje de programacin almacenado en un archivo a cdigo en bajo nivel (normalmente en cdigo objeto, no directamente a lenguaje mquina). El segundo paso se llama enlazado en el cual se enlaza el cdigo de bajo nivel generado de todos los ficheros y subprogramas que se han mandado compilar y se aade el cdigo de las funciones que hay en las bibliotecas del compilador para que el ejecutable pueda comunicarse directamente con el sistema operativo, traduciendo as finalmente el cdigo objeto a cdigo mquina, y generando un mdulo ejecutable. Estos dos pasos se pueden hacer por separado, almacenando el resultado de la fase de compilacin en archivos objetos (un tpico.obj para Microsoft Windows, DOS o para Unix); para enlazarlos en fases posteriores, o crear directamente el ejecutable; con lo que la fase de compilacin se almacena slo temporalmente. Un programa podra tener partes escritas en varios lenguajes (por ejemplo C, C++ y Asm), que se podran compilar de forma independiente y luego enlazar juntas para formar un nico mdulo ejecutable. (Investigar etapas del proceso)

1.10 Consola de lneas de Comandos Las CLI pueden emplearse interactivamente, escribiendo instrucciones en alguna especie de entrada de texto, o pueden utilizarse de una forma mucho mas automatizada (batch), leyendo comandos desde un archivo de scripts. Esta interfaz existe casi desde los comienzos de la computacin, superada en antigedad solo por las tarjetas perforadas y mecanismos similares. Existen, para diversos programas y sistemas operativos, para diversos hardware, y con diferente funcionalidad. Por ejemplo, las CLI son parte fundamental de los Shells y/o Emuladores de Terminal. Aparecen en todos los desktops (Gnome, KDE, Windows) como un mtodo para ejecutar aplicaciones rpidamente. Aparecen como interfaz de lenguajes interpretados tales como Java, Python, Ruby o Perl. Tambin se utilizan en aplicaciones cliente-servidor, en DBs (Postgres, MySQL, Oracle), en clientes FTP, etc. Las CLI son un elemento fundamental de aplicaciones de ingeniera tan importantes como Matlab y Autocad La contraparte de CLI es la interfaz grfica de usuario (GUI) que ofrece una esttica mejorada y una mayor simplificacin, a costa de un mayor consumo de recursos computacionales, y, en general, de una reduccin de la funcionalidad alcanzable. Asimismo aparece el problema de una mayor vulnerabilidad por complejidad.

También podría gustarte