20
TRABAJO DE INTRODUCCION A LA COMPUTACION

Trabajo de introduc computa

  • Upload
    sampdp

  • View
    179

  • Download
    3

Embed Size (px)

Citation preview

TRABAJO DE INTRODUCCION A LA COMPUTACION

1. En computación, representación visual de cosas en forma digital. Suele estar representadas por miles de pixeles (llamado raster) que, vistos en conjunto, forman una fotografía, un gráficos, etc. o pueden estar hechas por vectores.

Las imágenes pueden guardarse en distintos formatos gráficos, cada uno con distintas posibilidades y limitaciones. Entre los formatos más populares: BMP (gráfico/fotográfico sin compresión), GIF (gráfico/animaciones), JPG (fotográfico con compresión), etc.

2. Tipo de archivos en donde se guardan todos los datos de un CD, un DVD, un disco duro, etc. para hacer una copia de seguridad, para clonarlos o para facilitar su transporte, etc. Se guardan en formatos como ISO, BIN, etc.

Imagen

Formatos de ficheros gráficos y de imagen

Formatos de gráficos de mapa de bits (rasterizados)

art • bmp • cin • cpt • dpx • exr • fpx • gif• iff, ilbm, lbm• jpeg, jpg • jpg2, jp2• mng • pbm• pcd • pcx • png • ppm• psd • sgi, rgb, rgba, int, inta, bw • tga, tpic • tiff, tif • raw • wbmp • xbm • xcf • xpm

Formatos de gráficos vectoriales

ai• cdr • cgm• dxf • dwg • fh • fla• ps • svg, svgz • swf• sxd • wmf • xalm• xar

Formatos rasterizados y vectoriales

eps• pdf • pict, pct, pic • px • pgm• psp

Formatos de metaficheros eps• pict

El programa compilador traduce las instrucciones en un lenguaje de alto nivel a instrucciones que la computadora puede interpretar y ejecutar. Para cada lenguaje de programación se requiere un compilador separado. El compilador traduce todo el programa antes de ejecutarlo. Los compiladores son, pues, programas de traducción insertados en la memoria por el sistema operativo para convertir programas de cómputo en pulsaciones electrónicas ejecutables (lenguaje de máquina).

COMPILADOR

Ejemplo

Es un programa informático capaz de analizar y ejecutar otros programas, escritos en un lenguaje de alto nivel. Los intérpretes se diferencian de los compiladores en que mientras estos traducen un programa desde su descripción en un lenguaje de programación al código de máquina del sistema, los intérpretes sólo realizan la traducción a medida que sea necesaria, típicamente, instrucción por instrucción, y normalmente no guardan el resultado de dicha traducción.

INTERPRETADOR

Ejemplo

Lenguaje de programación

Es cualquier lenguaje artificial, el cual, se utiliza para definir adecuadamente una secuencia de instrucciones que puedan ser interpretadas y ejecutadas en una computadora.

Los lenguajes de alto nivel

Logran la independencia del tipo de máquina y se aproximan al lenguaje natural. 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.

• 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 hardware 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.

Uso

FORTRAN, en informática, acrónimo de FORmula TRANslation (traducción de fórmulas). El primer lenguaje de programación de alto nivel para computadoras, desarrollado de 1954 a 1958 por Jim Backus, y el padre de muchos de los conceptos fundamentales de alto nivel, como variables, expresiones, instrucciones, instrucciones condicionales y repetitivas, subrutinas compiladas de forma independiente y entrada y salida con formato. El FORTRAN es un lenguaje compilado

Ejemplo

Se trata de un termino no aceptado por todos, pero

que 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.

• Son precisos para ciertas aplicaciones como la creación de sistemas operativos, ya que permiten un manejo abstracto (independiente de la máquina, a diferencia del lenguaje ensamblador), pero sin perder mucho del poder y eficiencia que tienen los lenguajes de bajo nivel.

• Es que en el primero es posible manejar las letras como si fueran números (en Pascal no), por el contrario, en Pascal es posible concatenar las cadenas de caracteres con el operador suma y copiarlas con la asignación (en C es el usuario el responsable de llamar a las funciones correspondientes).

• Estos lenguajes están orientados a procedimientos. Los procedimientos se componen de procesos.

Uso

Lenguajes de Medio nivel

BASIC se puede ejecutar el programa en desarrollo, "al vuelo" o en modo intérprete (en realidad pseudo-compila el programa muy rápidamente y luego lo ejecuta), y también se permite la generación del programa en código ejecutable (exe). Tal programa generado en disco puede luego ser ejecutado fuera del ambiente de programación (incluso en modo stand alone, dependiendo de los requisitos de DLL´s), aunque será necesario que las librerías DLL requeridas se encuentren instaladas en el sistema para su apropiada ejecución.Visual Basic provee soporte para empaquetado y distribución, es decir, permite generar un módulo instalador que contiene el programa ejecutable y las bibliotecas DLL necesarias para él. Con ese módulo la aplicación generada se distribuye y puede ser instalada en cualquier equipo (con sistema compatible).

Ejemplo

Son lenguajes totalmente dependientes de la máquina, es decir que el programa que se realiza con este tipo de lenguajes no se pueden migrar o utilizar en otras maquinas.

Al estar prácticamente diseñados a medida del hardware, aprovechan al máximo las características del mismo.

Dentro de este grupo se encuentran:

• El lenguaje maquina: este lenguaje ordena a la máquina las operaciones fundamentales para su funcionamiento. Cnsiste en la combinación de 0's y 1's para formar las ordenes entendibles por el hardware de la maquina. Este lenguaje es mucho más rápido que los lenguajes de alto nivel. La desventaja es que son bastantes difíciles de manejar y usar, además de tener códigos fuente enormes donde encontrar un fallo es casi imposible.

• El lenguaje ensamblador es un derivado del lenguaje maquina y esta formado por abreviaturas de letras y números llamadas mnemotécnicos. Con la aparición de este lenguaje se crearon los programas traductores para poder pasar los programas escritos en lenguaje ensamblador a lenguaje máquina. Como ventaja con respecto al código máquina es que los códigos fuentes eran más cortos y los programas creados ocupaban menos memoria. Las desventajas de este lenguaje siguen siendo prácticamente las mismas que las del lenguaje ensamblador, ñadiendo la dificultad de tener que aprender un nuevo lenguaje difícil de probar y mantener.

Lenguajes de bajo nivel

Son instrucciones que ensamblan los grupos de conmutadores necesarios para expresar una mínima lógica aritmética. Están íntimamente vinculados al hardware. Por norma general están disponibles a nivel firmware, cmos o chip set. Estos lenguajes están orientados a procesos. Los procesos se componen de tareas. Contienen tantas instrucciones como la arquitectura del hardware así haya sido diseñada.

Uso

La tecnología CISC (Complex Instruction Set Computer) nació de la mano de Intel, creador en 1971 del primer microchip que permitiría el nacimiento de la informática personal. Más concretamente, sería en 1972 cuando aparecería el 8080, primer chip capaz de procesar 8 bits, suficiente para representar números y letras. Con la posibilidad de colocar todos los circuitos en un solo chip y la capacidad de manejar número y letras nacería la cuarta generación de ordenadores, la de los conocidos como PC u ordenadores personales.Los microprocesadores CISC tienen un conjunto de instrucciones que se caracteriza por ser muy amplio y permitir operaciones complejas entre operandos situados en la memoria o en los registros internos.Este tipo de arquitectura dificulta el paralelismo entre instrucciones, por lo que en la actualidad la mayoría de los sistemas CISC de alto rendimiento implementan un sistema que convierte dichas instrucciones complejas en varias instrucciones simples, llamadas generalmente microinstrucciones.

Ejemplo

C es un lenguaje de programación de propósito general que ofrece economía sintáctica, control de flujo y estructuras sencillas y un buen conjunto de operadores. No es un lenguaje de muy alto nivel y más bien un lenguaje pequeño, sencillo y no está especializado en ningún tipo de aplicación. Esto lo hace un lenguaje potente, con un campo de aplicación ilimitado y sobre todo, se aprende rápidamente. En poco tiempo, un programador puede utilizar la totalidad del lenguaje.

LENGUAJE C

Características•Un núcleo del lenguaje simple, con funcionalidades añadidas importantes, como funciones matemáticas y de manejo de archivos, proporcionadas por bibliotecas.

•Es un lenguaje muy flexible que permite programar con múltiples estilos. Uno de los más empleados es el estructurado "no llevado al extremo" (permitiendo ciertas licencias de ruptura).

•Un sistema de tipos que impide operaciones sin sentido.

•Usa un lenguaje de preprocesado, el preprocesador de C, para tareas como definir macros e incluir múltiples archivos de código fuente.

•Acceso a memoria de bajo nivel mediante el uso de punteros.

•Interrupciones al procesador con uniones.

•Un conjunto reducido de palabras clave.

•Por defecto, el paso de parámetros a una función se realiza por valor. El paso por referencia se consigue pasando explícitamente a las funciones las direcciones de memoria de dichos parámetros.

•Punteros a funciones y variables estáticas, que permiten una forma rudimentaria de encapsulado y polimorfismo.

•Tipos de datos agregados (struct) que permiten que datos relacionados (como un empleado, que tiene un id, un nombre y un salario) se combinen y se manipulen como un todo (en una única variable "empleado").

• Recolección de basura nativa, sin embargo se encuentran a tal efecto bibliotecas como la "libgc" desarrollada por Sun Microsystems. o el Recolector de basura de Boehm.

• Soporte para programación orientada a objetos, aunque la implementación original de C++ fue un preprocesador que traducía código fuente de C++ a C.

• Encapsulación.

• Funciones anidadas, aunque GCC tiene esta característica como extensión.

• Polimorfismo en tiempo de código en forma de sobrecarga, sobrecarga de operadores y sólo dispone de un soporte rudimentario para la programación genérica.

• Soporte nativo para programación multihilo y redes de computadores.

Características

Uso

• Hecho principalmente para la fluidez de programación en sistemas UNIX. Se usa también para el desarrollo de otros sistemas operativos como Windows o GNU/Linux. Igualmente para aplicaciones de escritorio como GIMP, cuyo principal lenguaje de programación es C.

• Es muy usado en aplicaciones científicas (para experimentos informáticos, físicos, químicos, matemáticos, entre otros, parte de ellos conocidos como modelos y simuladores), industriales (industria robótica, cibernética, sistemas de información y base de datos para la industria petrolera y petroquímica.

• Predominan también todo lo que se refiere a simulación de máquinas de manufactura), simulaciones de vuelo (es la más delicada, ya que se tienen que usar demasiados recursos tanto de hardware como de software para desarrollar aplicaciones que permitan simular el vuelo real de una aeronave.

• Se aplica por tanto, en diversas áreas desconocidas por gran parte de los usuarios noveles.

• Los ordenadores de finales de los 90 son varios órdenes de magnitud más potentes que las máquinas en que C se desarrolló originalmente. Programas escritos en lenguajes de tipo dinámico y fácil codificación (Ruby, Python, Perl...) que antaño hubieran resultado demasiado lentos, son lo bastante rápidos como para desplazar en uso a C. Aun así, se puede seguir encontrando código C en grandes desarrollos de animaciones, modelados y escenas en 3D en películas y otras aplicaciones multimedia.

• C es el lenguaje común para programar sistemas embebidos. El código ligero que un compilador C genera, combinado con la capacidad de acceso a capas del software cercanas al hardware son la causa de su popularidad en estas aplicaciones.

• C demuestra comodidad de uso particularmente valiosa en sistemas embebidos es la manipulación de bits. Los sistemas contienen registros mapeados en memoria (en inglés, MMR) a través de los cuales los periféricos se configuran. Estos registros mezclan varias configuraciones en la misma dirección de memoria, aunque en bits distintos.