Lenguaje de bajo nivel: Un lenguaje de programacin de
caractersticas bajo nivel es aquel en el que sus instrucciones ejercen
un control directo sobre el hardware y estn condicionados por la estructura fsica de la computadora que lo soporta. El uso de la palabra bajo en su denominacin no implica que el lenguaje sea inferior a un lenguaje de alto nivel, si no que se refiere a la reducida abstraccin entre el lenguaje y el hardware. Por ejemplo, se utiliza este tipo de lenguajes para programar tareas crticas de los Sistemas Operativos, de aplicaciones en tiempo real o controladores de dispositivos. Los lenguajes de bajo nivel, tambin llamados lenguajes ensambladores, permiten al programador escribir instrucciones de un programa usando abreviaturas del ingls, tambin llamadas palabras nemotcnicas, tales como: ADD, DIV, SUB, etc. 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 mquina hay que utilizar un programa llamado ensamblador, como se muestra en la siguiente figura:
Figura - Funcionamiento de un ensamblador.
Figura - Funcionamiento de un ensamblador. http://es.wikipedia.org/wiki/Lenguaje_de_bajo_nivel http://www.carlospes.com/minidiccionario/lenguaje_de_bajo_nivel.php
Lenguaje de alto nivel: Un lenguaje de programacin se caracteriza por expresar los algoritmos de una manera adecuada a la capacidad cognitiva humana, en lugar de la capacidad ejecutora de las mquinas.
En los primeros lenguajes, la limitacin era que se orientaban a un rea especfica y sus instrucciones requeran de una sintaxis predefinida. Se clasifican como lenguajes procedimentales o lenguajes de bajo nivel. Otra limitacin de estos es que se requiere de ciertos conocimientos de programacin para realizar las secuencias de instrucciones lgicas. Los lenguajes de alto nivel se crearon para que el usuario comn pudiese solucionar un problema de procesamiento de datos de una manera ms fcil y rpida.
Por esta razn, a finales de los aos 1950 surgi un nuevo tipo de lenguajes de programacin que evitaba estos inconvenientes, a costa de ceder un poco en las ventajas. Estos lenguajes se llaman de tercera generacin o de nivel alto, en contraposicin a los de bajo nivel o de nivel prximo a la mquina.
Un lenguaje de alto nivel permite al programador escribir las instrucciones de un programa utilizando palabras o expresiones sintcticas muy similares al ingls. Por ejemplo, en C se pueden usar palabras tales como: case, if, for, while, etc. para construir con ellas instrucciones como:
if( numero > 0 ) printf( "El nmero es positivo" )
que traducido al castellano viene a decir que: si numero es mayor que cero, entonces, escribir por pantalla el mensaje: "El nmero es positivo".
sta es la razn por la que a estos lenguajes se les considera de alto nivel, porque se pueden utilizar palabras de muy fcil comprensin para el programador. En contraposicin, los lenguajes de bajo nivel son aquellos que estn ms cerca del "entendimiento" de la mquina. Otros lenguajes de alto nivel son: Ada, BASIC, COBOL, FORTRAN, Pascal, etc.
Otra carcterstica importante de los lenguajes de alto nivel es que, para la mayora de las instrucciones de estos lenguajes, se necesitaran varias instrucciones en un lenguaje ensamblador para indicar lo mismo. De igual forma que, la mayora de las instrucciones de un lenguaje ensamblador, tambin agrupa a varias instrucciones de un lenguaje mquina . Un lenguaje de alto nivel permite al programador escribir las instrucciones de un programa utilizando palabras o expresiones sintcticas muy similares al ingls. Por ejemplo, en C se pueden usar palabras tales como: case, if, for, while, etc. para construir con ellas instrucciones como:
if( numero > 0 ) printf( "El nmero es positivo" )
que traducido al castellano viene a decir que: si numero es mayor que cero, entonces, escribir por pantalla el mensaje: "El nmero es positivo".
sta es la razn por la que a estos lenguajes se les considera de alto nivel, porque se pueden utilizar palabras de muy fcil comprensin para el programador. En contraposicin, los lenguajes de bajo nivel son aquellos que estn ms cerca del "entendimiento" de la mquina. Otros lenguajes de alto nivel son: Ada, BASIC, COBOL, FORTRAN, Pascal, etc.
Otra carcterstica importante de los lenguajes de alto nivel es que, para la mayora de las instrucciones de estos lenguajes, se necesitaran varias instrucciones en un lenguaje ensamblador para indicar lo mismo. De igual forma que, la mayora de las instrucciones de un lenguaje ensamblador, tambin agrupa a varias instrucciones de un lenguaje mquina.
Figura - Relacin entre las instrucciones de alto nivel, ensamblador y mquina.
Herman Hollerith (Buffalo, Nueva York, 29 de febrero de 1860 17 de noviembre de 1929) est considerado como el primer informtico, es decir, el primero que logra el tratamiento automtico de la informacin, aunque fue una mujer algunos aos antes, Ada Lovelace quien est considerada la primera informtica de la historia (Informtica = Informacin + automtica). Tambin est dentro de los creadores de la primera computadora en el mundo. Hollerith observ que la mayor parte de las preguntas contenidas en los censos se podan contestar con un S o un NO. Entonces ide una tarjeta perforada, una cartulina en la que, segn estuviera perforada o no en determinadas posiciones, se contestaba este tipo de preguntas. La tarjeta tena 80 columnas.
El Gobierno de los Estados Unidos eligi la mquina tabuladora de Hollerith (considerada por algunos como la primera computadora) para elaborar el censo de 1890. Se tardaron slo 3 aos en perforar unas 56 millones de tarjetas. Esto permiti que el censo de ese pas se realizara de una manera ms fcil. Hollerith patent su mquina en 1889. Un ao despus incluy la operacin de sumar con el fin de utilizarla en la contabilidad de los Ferrocarriles Centrales de Nueva York. En 1896, Hollerith fund la empresa Tabulating Machine Company, con el fin de explotar comercialmente su invento. En 1911, dicha compaa se fusion con Computing Scale Company, International Time Recording Company y Bundy Manufacturing Company, para crear la Computing Tabulating Recording Corporation (CTR). El 14 de febrero de 1924, CTR cambi su nombre por el de International Business Machines Corporation (IBM), cuyo primer presidente fue Thomas John Watson, que curiosamente no estaba muy convencido del futuro que podan tener estas mquinas. Hollerith muri en el 17 de Noviembre de 1929 a los 69 aos, a causa de un ataque al corazn.
http://es.wikipedia.org/wiki/Herman_Hollerith Microprocesador: La evolucin del microprocesador El microprocesador surgi de la evolucin de distintas tecnologas predecesoras, bsicamente de la computacin y de la tecnologa de semiconductores. El inicio de esta ltima data de mitad de la dcada de 1950; estas tecnologas se fusionaron a principios de los aos 1970, produciendo el primer microprocesador. Dichas tecnologas iniciaron su desarrollo a partir de la segunda guerra mundial; en este tiempo los cientficos desarrollaron computadoras especficas para aplicaciones militares. En la posguerra, a mediados de la dcada de 1940, la computacin digital emprendi un fuerte crecimiento tambin para propsitos cientficos y civiles. La tecnologa electrnica avanz y los cientficos hicieron grandes progresos en el diseo de componentes de estado slido (semiconductores). En 1948 en los laboratorios Bell crearon el transistor.
En los aos 1950, aparecieron las primeras computadoras digitales de propsito general. Se fabricaron utilizando tubos al vaco o bulbos como componentes electrnicos activos. Mdulos de tubos al vaco componan circuitos lgicos bsicos, tales como compuertas y flip- flops. Ensamblndolos en mdulos se construy la computadora electrnica (la lgica de control, circuitos de memoria, etc.). Los tubos de vaco tambin formaron parte de la construccin de mquinas para la comunicacin con las computadoras.
Para la construccin de un circuito sumador simple se requiere de algunas compuertas lgicas. La construccin de una computadora digital precisa numerosos circuitos o dispositivos electrnicos. Un paso trascendental en el diseo de la computadora fue hacer que el dato fuera almacenado en memoria. Y la idea de almacenar programas en memoria para luego ejecutarlo fue tambin de fundamental importancia (Arquitectura de von Neumann).
La tecnologa de los circuitos de estado slido evolucion en la dcada de 1950. El empleo del silicio (Si), de bajo costo y con mtodos de produccin masiva, hicieron del transistor el componente ms usado para el diseo de circuitos electrnicos. Por lo tanto el diseo de la computadora digital se reemplazo del tubo al vaco por el transistor, a finales de la dcada de 1950.
A principios de la dcada de 1960, el estado de arte en la construccin de computadoras de estado slido sufri un notable avance; surgieron las tecnologas en circuitos digitales como: RTL (Lgica Transistor Resistor), DTL (Lgica Transistor Diodo), TTL (Lgica Transistor Transistor), ECL (Lgica Complementada Emisor).
A mediados de los aos 1960 se producen las familias de circuitos de lgica digital, dispositivos integrados en escala SSI y MSI que corresponden a baja y mediana escala de integracin de componentes. A finales de los aos 1960 y principios de los 70 surgieron los sistemas a alta escala de integracin o LSI. La tecnologa LSI fue haciendo posible incrementar la cantidad de componentes en los circuitos integrados. Sin embargo, pocos circuitos LSI fueron producidos, los dispositivos de memoria eran un buen ejemplo.
Las primeras calculadoras electrnicas requeran entre 75 y 100 circuitos integrados. Despus se dio un paso importante en la reduccin de la arquitectura de la computadora a un circuito integrado simple, resultando uno que fue llamado microprocesador, unin de las palabras Micro del griego -, pequeo, y procesador. Sin embargo, es totalmente vlido usar el trmino genrico procesador, dado que con el paso de los aos, la escala de integracin se ha visto reducida de micro mtrica a nanomtrica; y adems, es, sin duda, un procesador.
El primer microprocesador fue el Intel 4004,1 producido en 1971. Se desarroll originalmente para una calculadora y result revolucionario para su poca. Contena 2.300 transistores, era un microprocesador de arquitectura de 4 bits que poda realizar hasta 60.000 operaciones por segundo trabajando a una frecuencia de reloj de alrededor de 700 KHz. El primer microprocesador de 8 bits fue el Intel 8008, desarrollado a mediados de 1972 para su uso en terminales informticos. El Intel 8008 integraba 3300 transistores y poda procesar a frecuencias mximas de 800Khz. El primer microprocesador realmente diseado para uso general, desarrollado en 1974, fue el Intel 8080 de 8 bits, que contena 4500 transistores y poda ejecutar 200.000 instrucciones por segundo trabajando a alrededor de 2MHz. El primer microprocesador de 16 bits fue el 8086. Fue el inicio y el primer miembro de la popular arquitectura x86, actualmente usada en la mayora de los computadores. El chip 8086 fue introducido al mercado en el verano de 1978, pero debido a que no haba aplicaciones en el mercado que funcionaran con 16 bits, Intel sac al mercado el 8088, que fue lanzado en 1979. Llegaron a operar a frecuencias mayores de 4Mhz. El microprocesador elegido para equipar al IBM Personal Computer/AT, que caus que fuera el ms empleado en los PC-AT compatibles entre mediados y finales de los aos 1980 fue el Intel 80286 (tambin conocido simplemente como 286); es un microprocesador de 16 bits, de la familia x86, que fue lanzado al mercado en 1982. Contaba con 134.000 transistores. Las versiones finales alcanzaron velocidades de hasta 25 MHz. Uno de los primeros procesadores de arquitectura de 32 bits fue el 80386 de Intel, fabricado a mediados y fines de la dcada de 1980; en sus diferentes versiones lleg a trabajar a frecuencias del orden de los 40Mhz. El microprocesador DEC Alpha se lanz al mercado en 1992, corriendo a 200 MHz en su primera versin, en tanto que el Intel Pentium surgi en 1993 con una frecuencia de trabajo de 66Mhz. El procesador Alpha, de tecnologa RISC y arquitectura de 64 bits, marc un hito, declarndose como el ms rpido del mundo, en su poca. Lleg a 1Ghz de frecuencia hacia el ao 2001. Irnicamente, a mediados del 2003, cuando se pensaba quitarlo de circulacin, el Alpha an encabezaba la lista de los microprocesadores ms rpidos de Estados Unidos.2 Los microprocesadores modernos tienen una capacidad y velocidad mucho mayores, trabajan en arquitecturas de 64 bits, integran ms de 700 millones de transistores, como es en el caso de las serie Core i7, y pueden operar a frecuencias normales algo superiores a los 3GHz (3000MHz). El microprocesador es la parte de la computadora diseada para llevar acabo o ejecutar los programas. Este viene siendo el cerebro de la computadora, el motor, el corazn de esta mquina. Este ejecuta instrucciones que se le dan a la computadora a muy bajo nivel haciendo operaciones lgicas simples, como sumar, restar, multiplicar y dividir. El microprocesador, o simplemente el micro, es el cerebro del ordenador. Es un chip, un tipo de componente electrnico en cuyo interior existen miles (o millones) de elementos llamados transistores, cuya combinacin permite realizar el trabajo que tenga encomendado el chip. http://www.monografias.com/trabajos11/micro/micro.shtml#ixzz3EBgra c7e http://es.wikipedia.org/wiki/Microprocesador#Historia_de_los_micropro cesadores GOBOL El lenguaje COBOL (acrnimo de COmmon Business-Oriented Language, Lenguaje Comn Orientado a Negocios) fue creado en el ao 1959 con el objetivo de crear un lenguaje de programacin universal que pudiera ser usado en cualquier ordenador, ya que en los aos 1960 existan numerosos modelos de ordenadores incompatibles entre s, y que estuviera orientado principalmente a los negocios, es decir, a la llamada informtica de gestin. COBOL fue dotado de unas excelentes capacidades de autodocumentacin. Una buena gestin de archivos y una excelente gestin de los tipos de datos para la poca, a travs de la conocida sentencia PICTURE para la definicin de campos estructurados. Para evitar errores de redondeo en los clculos que se producen al convertir los nmeros a binario y que son inaceptables en temas comerciales, COBOL puede emplear y emplea por defecto nmeros en base diez. Para facilitar la creacin de programas en COBOL, la sintaxis del mismo fue creada de forma que fuese parecida al idioma ingls, evitando el uso de smbolos que se impusieron en lenguajes de programacin posteriores. Pese a esto, a comienzos de los ochenta se fue quedando anticuado respecto a los nuevos paradigmas de programacin y a los lenguajes que los implementaban. En la revisin de 1985 se solucion, incorporando a COBOL variables locales, recursividad, reserva de memoria dinmica y programacin estructurada.
En la revisin de 2002 se le aadi orientacin a objetos, aunque desde la revisin de 1974 se poda crear un entorno de trabajo similar a la orientacin a objetos, y un mtodo de generacin de pantallas grficas estandarizado.
Antes de la inclusin de las nuevas caractersticas en el estndar oficial, muchos fabricantes de compiladores las aadan de forma no estndar. En la actualidad este proceso se est viendo con la integracin de COBOL con Internet. Existen varios compiladores que permiten emplear COBOL como lenguaje de scripting y de servicio web. Tambin existen compiladores que permiten generar cdigo COBOL para la plataforma .NET y EJB. ASSEMBLER: Fue el primer lenguaje que se desarroll. Este lenguaje representa las instrucciones que posee la CPU.Como funciona un compilador de Assembler? A partir de un archivo de texto que es compilado a cdigo de mquina. Este compilador "traduce" los cdigos de la CPU a su equivalente binario. Se utiliza en pequeos componentes electrnicos y tambin para generar programas de alta velocidad. Muchos juegos tienen rutinas (partes de programas) en Assembler. ALGOL: Otro lenguaje, uno de los primeros, de propsito general (est en desuso). FORTRAM: (Frmula Translate). Fue utilizado para frmulas matemticas. (reemplazado) FIRTH: (Lenguaje derivado del Fortram.) PASCAL: Lenguaje de propsito general, con programacin estructurada. Incorpora una forma de programar eficiente y moderna. C: Fue generado por Demis Ritchie Y Robert Kernigan. Creadores del Unix como Sistema Operativo, siendo un lenguaje mucho ms flexible que el Pascal. Si bien es multipropsito est orientado especialmente para juegos y programas Windows. JAVA: Corre en cualquier tipo de sistema. Fue creado por SUN, siendo su competidor el C# (c sharp). Usado especialmente en Internet, Aplicaciones Multimedia, Sonido y Video. Funciona perfectamente en Windows, Solaris, Mac y otros. COBOL: Lenguaje orientado a negocios, datos, informacin, etc. para empresas. COBOL (lenguaje comn de programacin orientado a negocios). FOX-PRO/VISUAL FOX PRO/CLIPPER: Aprovechando las bases de datos de dbase se fue desarrollando y tuvo su auge hacia el 86 y 87. El Clipper era el competidor de Fox Pro. LISP: (List Procesor) Orientado a la inteligencia artificial, sin gran utilidad para fines comerciales. Se usa principalmen- te en Medicina, Qumica e Ingeniera. No es un lenguaje comercial , hay poca demanda y pocos programadores. APL: (A programing languaje) Est orientado al clculo. PERL: Se utiliza mucho por su facilidad para presentar informacin en Internet (formularios cgi etc.) DELPHI: Fue creado con un concepto similar al de Visual Pascal, siendo en su aspecto exterior parecido al Visual Basic, siendo sinembargo muy diferente. PROLOG: Lenguaje bsico de programacin. SMALLTALK: Programacin orientada a objetos. BASIC: Es un lenguaje de propsito general muy difundido. VISUALBASIC: La continuacin del Basic, hecha por Microsoft. Basic significa "Beginers All purpose Simbolic Instruccion Code" El Basic evoluciona al Quick Basic y finalmente en Windows al Visual Basic, conservando muy poco o nada de su antecesor, el actual Visual Basic se hizo popular a partir de la versin 3. Ya en la versin 4 empez a compilar datos tanto en 16 como en 32 bits. En la versin 5 migr directamente a 32 bits. Por el momento este lenguaje no es adecuado para crear juegos y multimedia en 3D para lo cual un lenguaje adecuado sera el C++. Resulta en cambio muy adecuado para manejar bases de datos medianas y pequeas.
NIVELES DE LENGUAJE
El lenguaje de programacin acta de intermediario entre los que desea el programador y lo que entiende el procesador. Es considerado un lenguaje de alto nivel cuando oculta la complejidad del harware y es de bajo nivel cuando interacta con l.
COMPILADORES E INTRPRETES
Los compiladores generan a partir de un lenguaje llamado cdigo fuente, un programa ejecutable para su distribucin. En cambio el interprete toma instruciones y las va procesando sin generar ningn cdigo y es mucho ms lento que el compilado. http://es.wikipedia.org/wiki/COBOL http://visualbasic.ar.tripod.com/lenguajesdeprogramacion.html