TAREA 1.
1.- ¿Qué es un lenguaje?
El lenguaje se configura como aquella forma que tienen los seres humanos para comunicarse. Se trata de un conjunto de signos, tanto orales como escritos, que a través de su significado y su relación permiten la expresión y la comunicación humana.
Es el conjunto de sonidos y palabras con que se expresa el pensamiento.
El lenguaje es posible gracias a diferentes y complejas funciones que realiza el cerebro. Estas funciones están relacionadas con lo denominado como inteligencia y memoria lingüística.

2.- ¿Qué es un lenguaje de programación?
Un lenguaje de programación es un idioma artificial diseñado para expresar computaciones que pueden ser llevadas a cabo por máquinas como las computadoras. Puede ser utilizado para controlar el comportamiento de una máquina, particularmente una computadora.
Los lenguajes de programación son herramientas que nos permiten crear programas y software. Entre ellos tenemos Delphi, Visual Basic, Pascal, Java.
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.

3.- ¿Qué es un lenguaje de bajo nivel?
Un lenguaje de programación de bajo nivel es el que proporciona un conjunto de instrucciones aritmético-lógicas sin la capacidad de encapsular dichas instrucciones en funciones que no estén ya contempladas en la arquitectura del hardware.
El lenguaje de programación de bajo nivel es totalmente dependiente de la computadora u ordenador, es decir que no podemos utilizarlo en cualquier otra. Este tipo de lenguaje de programación está prácticamente diseñado a la medida del hardware y aprovecha las características de este. Dentro de este tipo de lenguajes de programación podemos citar al lenguaje máquina y al lenguaje ensamblador.
La programación en un lenguaje de bajo nivel como el lenguaje de la máquina o el lenguaje simbólico tiene ciertas ventajas:
• Mayor adaptación al equipo.
• Posibilidad de obtener la máxima velocidad con mínimo uso de memoria.

4.- ¿Qué es un lenguaje de alto nivel?
Un lenguaje de programación de alto nivel se caracteriza por expresar los algoritmos de una manera adecuada a la capacidad cognitiva humana, en lugar de a la capacidad ejecutora de las máquinas.
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.
Son aquellos que permiten una máxima flexibilidad al programador a la hora de abstraerse o de ser literal. Permiten un camino bidireccional entre el lenguaje máquina y una expresión casi oral entre la escritura del programa y su posterior compilación. Estos lenguajes están orientados a objetos. Los objetos se componen de propiedades cuya naturaleza emerge de procedimientos. Ejemplos: C++, Fortran, Cobol, Lisp.

HISTORIA DE LOS MICROPROCESADORES INTEL.

1971: El Intel 4004.
El 4004 fue el primer microprocesador del mundo, creado en un simple chip, y desarrollado por Intel. Era un CPU de 4 bits y también fue el primero disponible comercialmente.

1972: El Intel 8008.
El i8008 emplea direcciones de 14 bits, pudiendo direccionar hasta 16 KB de memoria. El circuito integrado del i8008, limitado por las 18 patillas de su encapsulado DIP, tiene un un bus compartido de datos y direcciones de 8 bits, por lo que necesita una gran cantidad de circuitería externa para poder ser utilizado.

1974: El Intel 8080.
El Intel 8080 fue un microprocesador temprano diseñado y fabricado por Intel. El CPU de 8 bits fue lanzado en abril de 1974. Corría a 2 MHz, y generalmente se le considera el primer diseño de CPU microprocesador verdaderamente usable.

1978: Los Intel 8086 y 8088.
El 8086 es un microprocesador de 16 bits, tanto en lo que se refiere a su estructura como en sus conexiones externas, mientras que el 8088 es un procesador de 8 bits que internamente es casi idéntico al 8086.

1982: Intel 80186 y 80188.
Los i80186 e i80188 son una mejora del Intel 8086 y del Intel 8088 respectivamente. Al igual que el i8086, el i80186 tiene un bus externo de 16 bits, mientras que el i80188 lo tiene de 8 bits como el i8088, para hacerlo más económico. La velocidad de reloj del i80186 e i80188 es de 6 MHz.

1982: El Intel 80286.
Es un microprocesador de 16 bits de la familia x86, que fue lanzado al mercado por Intel el 1 de febrero de 1982. Cuenta con 134.000 transistores.

1985: El Intel 80386.
El 386 añadió una arquitectura de 32 bits, con capacidad para multitarea y una unidad de traslación de páginas, lo que hizo mucho más sencillo implementar sistemas operativos que usaran memoria virtual.

1989: El Intel 80486.
Son una familia de microprocesadores de 32 bits con arquitectura x86. El procesador Intel 486 fue el primero en ofrecer un coprocesador matemático o FPU integrado; con él que se aceleraron notablemente las operaciones de cálculo.
1993: El Intel Pentium.
El microprocesador de Pentium poseía una arquitectura capaz de ejecutar dos operaciones a la vez, gracias a sus dos pipeline de datos de 32bits cada uno, uno equivalente al 486DX y el otro equivalente a 486SX. Además, estaba dotado de un bus de datos de 64 bits, y permitía un acceso a memoria de 64 bits (aunque el procesador seguía manteniendo compatibilidad de 32 bits para las operaciones internas, y los registros también eran de 32 bits).

1995: EL Intel Pentium Pro.
Lanzado al mercado para el otoño de 1995, el procesador Pentium Pro (profesional) se diseñó con una arquitectura de 32 bits.

1997: El Intel Pentium II.
Los cambios fundamentales respecto a éste último fueron mejorar el rendimiento en la ejecución de código a 32 bits, añadir el conjunto de instrucciones MMX y eliminar la memoria caché de segundo nivel del núcleo del procesador, colocándola en una tarjeta de circuito impreso junto a éste.
El Pentium II se comercializó en versiones que funcionaban a una frecuencia de reloj de entre 166 y 450 MHz. La velocidad de bus era originalmente de 66 MHz, pero en las versiones a partir de los 333 MHz se aumentó a 100 MHz.

1998: El Intel Pentium II Xeon.
Más de 4 GB de memoria que utilizan direccionamiento ampliado 36-bit. 0,25 micras microarquitectura P6 operación del núcleo a 450 MHz y 400 MHz. Ejecución dinámica. Ofrece 400 MHZ 1 MB o 512 KB las opciones de caché L2. 450 MHz ofrece 2 MB, 1 MB o 512 KB de memoria caché L2 opciones. Bus caché L2 funcionando a la misma velocidad como el núcleo del procesador.

1999: El Intel Celeron.
Bus de datos de 64 bits. Celeron es el nombre que lleva la línea de microprocesadores de bajo costo de Intel. El objetivo era poder, mediante esta segunda marca, penetrar en los mercados cerrados a los Pentium, de mayor rendimiento y precio.

1999: El Intel Pentium III.

Front side bus (FSB) de 100MHz. Con el chipset 440JX, habrá un chip de 533 MHz con FSB de 133.
Bus de datos: 32 bits.
Velocidades de reloj desde 450 MHz a 550 MHz en los modelos de 0,25 micras. 600 MHz cuando aparezca la versión de 0,18 micras.
Caché integrada (L2, 2º nivel) de 512 Kb, funcionando a la mitad de la velocidad interna del micro (como en el Pentium II)
32Kb de caché de Nivel 1 (L1) (como en el Pentium II)

1999: El Intel Pentium III Xeon.
Velocidad del reloj: 733 MHz.
Caché L2: 256 KB.
Relación bus/núcleo: 5.5.
Velocidad de FSB: 133 MHz.
Conjunto de instrucciones: 32-bit.

2000: EL Intel Pentium 4.
Bus de datos: 64 bits.
El bus de 400 MHz realmente es un bus de 100 MHz capaz de transferir datos a 400 MHz. Y como cada transferencia involucra 8 bytes, en algún momento pueden estar moviéndose 3,2GB por segundo, frente al 1,06 GB/s en un Pentium III con un bus de 133 MHz.
El Advanced Transfer Cache es un caché L2 de 256KB y se comunica con el núcleo del procesador por un camino de 256 bits de ancho. En un Pentium 4 de 1,4 GHz, la rata de transferencia alcanza los 44,8 GB/s.

2004: El Intel Pentium 4 (Prescott).
Poseen 1 MiB o 2 MiB de caché L2 y 16 KiB de caché L1 (el doble que los Northwood), Prevención de Ejecución, SpeedStep, C1E State, un HyperThreading mejorado, instrucciones SSE3, manejo de 64 bits, también recibió unas mejoras en el sistema de predicción de datos, y tiene un pipeline de 31 etapas, que por cierto, fue unos de los mayores errores de dicho núcleo.

2006: EL Intel Core Duo.
Bus de datos: 64 bits.

Intel lanzó ésta gama de procesadores de doble núcleo y CPUs 2x2 MCM (módulo Multi-Chip) de cuatro núcleos con el conjunto de instrucciones x86-64, basado en el la nueva arquitectura Core de Intel. La microarquitectura Core regresó a velocidades de CPU bajas y mejoró el uso del procesador de ambos ciclos de velocidad y energía comparados con anteriores NetBurst de los CPU Pentium 4/D2.

2008: El Intel Core Nehalem.
Bus de datos: 64 bits
Intel Core i7 es una familia de procesadores de cuatro núcleos de la arquitectura Intel x86-64. Los Core i7 son los primeros procesadores que usan la microarquitectura Nehalem de Intel y es el sucesor de la familia Intel Core 2. FSB es reemplazado por la interfaz QuickPath en i7 e i5 (zócalo 1366), y sustituido a su vez en i7, i5 e i3 (zócalo 1156) por el DMI eliminado el northBrige e implementando puertos PCI Express directamente. Memoria de tres canales (ancho de datos de 192 bits): cada canal puede soportar una o dos memorias DIMM DDR3.

2011: El Intel Core Sandy Bridge.
Bus de datos: 64 bits.
Llegan para remplazar los chips Nehalem, con Intel Core i3, Intel Core i5 e Intel Core i7 serie 2000 y Pentium G. Estos procesadores Intel Core que no tienen sustanciales cambios en arquitectura respecto a nehalem, pero si los necesarios para hacerlos más eficientes y rápidos que los modelos anteriores. Es la segunda generación de los Intel Core con nuevas instrucciones de 256 bits