



































Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Encuentra los documentos específicos para los exámenes de tu universidad
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
Lenguajes y Automatas II Lenguajes y Automatas II Lenguajes y Automatas II Lenguajes y Automatas II Lenguajes y Automatas II Lenguajes y Automatas II
Tipo: Apuntes
1 / 43
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!




































En oferta
División de Ingeniería en Sistemas Computacionales Academia de Ciencias de la Ingeniería PROYECTO SEGUNDO DEPARTAMENTAL PERIODO 2020- 2
División de Ingeniería en Sistemas Computacionales Academia de Ciencias de la Ingeniería PROYECTO SEGUNDO DEPARTAMENTAL PERIODO 2020- 2 ÍNDICE PROYECTO 2DO PARCIAL ................................................................................................ 3 INSTRUCCIONES:................................................................................................................ 4 INTRODUCCIÓN .................................................................................................................. 5 DESARROLLO ...................................................................................................................... 6
División de Ingeniería en Sistemas Computacionales Academia de Ciencias de la Ingeniería PROYECTO SEGUNDO DEPARTAMENTAL PERIODO 2020- 2
División de Ingeniería en Sistemas Computacionales Academia de Ciencias de la Ingeniería PROYECTO SEGUNDO DEPARTAMENTAL PERIODO 2020- 2 INTRODUCCIÓN La generación de código intermedio es meramente el Proceso en el que el código fuente de nuestro compilador de alto nivel tiene que realizar la generación de un código mucho más sencillo para que compiladores de bajo nivel puedan hacer uso de este y logre ser traducido. Así mismo hablaremos sobre los microprocesadores, en general, el término “microprocesador”, remite al dispositivo principal dentro de las computadoras digitales, es decir, al elemento encargado de realizar los cálculos que permiten desde escribir una carta hasta editar una fotografía; desde administrar una nómina hasta platicar en tiempo real con alguna persona al otro lado del mundo; desde disfrutar una película hasta controlar complejos procesos industriales; en fin, el concepto de “microprocesador” evoca un dispositivo de enorme poder de cálculo, relativamente costoso, que consume mucha potencia y que, por tanto, sólo está al alcance de pocas personas. Durante el desarrollo veremos lo que es la arquitectura de este. También veremos la estructura y el funcionamiento del lenguaje máquina, el cual es un lenguaje de programación de bajo nivel. Consiste en un conjunto de mnemónicos que representan instrucciones básicas para los computadores, microprocesadores, microcontroladores y otros circuitos integrados programables. Veremos el lenguaje máquina, mencionando sus características, pero para eso primero debemos saber que es el sistema de códigos directamente interpretable por un circuito micro programable, como el microprocesador de una computadora o el microcontrolador de un autómata. Y por último también desarrollaremos. Y por último también desarrollaremos otra investigación sobre nuevas técnicas de administración de memoria para el almacenamiento de un programa en momento de ejecución.
División de Ingeniería en Sistemas Computacionales Academia de Ciencias de la Ingeniería PROYECTO SEGUNDO DEPARTAMENTAL PERIODO 2020- 2 Intel 8086 Microprocesador Intel 8086 es un primer miembro de la familia de procesadores x86. Anunciado como una "fuente de código compatible" con Intel 8080 y 8085 de procesadores Intel, el 8086 no fue objeto de código compatible con ellos. El 8086 completa la arquitectura de 16 bits de los registros internos, 16-bit de datos de autobuses, y un bus de direcciones de 20 bits (1 MB de memoria física). Debido a que el procesador tiene registros de 16 bits y punteros índices de la memoria, que pueden abordar eficazmente sólo 64 KB de memoria. Para la dirección de memoria más allá de 64 KB de la CPU usa los registros de segmento, estos registros especifican las ubicaciones de memoria para el código, la pila, los datos y segmentos extras de 64 KB. Los segmentos se pueden colocar en cualquier lugar de la memoria, y, en caso necesario, los programas de usuario pueden cambiar su posición. Este método de direccionamiento tiene una gran ventaja ya que es muy fácil escribir código independiente de la memoria cuando el tamaño del código, pila y los datos es menor de 64 KB cada una. La complejidad del código y el aumento de la programación, a veces considerablemente, cuando el tamaño de la pila, datos y el código es mayor de 64 KB. Intel 8086 incluye un conjunto de instrucciones de algunas instrucciones de cadena muy poderosa. Cuando estas instrucciones tienen el prefijo REP (repita), la CPU realiza operaciones de bloque de movimiento de datos, compara los bloques de datos, conjunto de datos por categorías de cierto valor, etc., que es una cadena de 8086, las instrucciones con prefijo REP puede hacer que un bucle de instrucciones se ejecute las veces que sean requeridas El 8086 ofrece soporte para microprocesadores Intel 8087 coprocesador numérico. La CPU reconoce todas las instrucciones de punto flotante (FP). Cuando las instrucciones hacen referencia de FP en la memoria, la CPU calcula la dirección de memoria y realiza la lectura de una memoria ficticia, calcula la dirección y lee los datos, los cuales son capturados por la unidad de punto flotante (FPU). Cuando el CPU pasa a la siguiente instrucción, la FPU ejecuta la instrucción de punto flotante. De esta manera, los números enteros y de instrucción de punto flotante se pueden ejecutar simultáneamente gracias a este mecanismo.
División de Ingeniería en Sistemas Computacionales Academia de Ciencias de la Ingeniería PROYECTO SEGUNDO DEPARTAMENTAL PERIODO 2020- 2 Intel 8088 El microprocesador Intel 8088 fue lanzado en 1979, o un año después de la CPU Intel 8086.Ambos procesadores tienen la misma arquitectura, y la única diferencia de la CPU del 8088 al de los 8086 es el ancho del bus de datos externos, ya que se redujo de 16 bits a 8 bits. La CPU 8088 utiliza dos ciclos consecutivos de bus para leer y escribir 16 bits de datos en lugar de un ciclo de bus para el 8086, que hace que el procesador 8088 sea más lento. Como los cambios de hardware eran más caros que la CPU 8088, Intel desarrollo los procesadores 8080/8085 compatible con chips de soporte. Este fue un factor importante en la elección del procesador 8088 de la línea de ordenadores IBM, porque en ese momento los chips de 8 bits eran más baratos que los chips de 16 bits, y no había mejor selección que los chips de 8 bits. El microprocesador 8088 tiene registros de 16 bits; 16 bits de datos internos en el bus y un bus de direcciones de 20 bits, lo que permite que el procesador direccionara la información hasta 1 MB en la memoria. El 8088 utiliza la memoria segmentada que se abordan en el 8086: el procesador puede abordar 64 KB de memoria directamente, y para hacer frente a más de 64 KB de memoria de la CPU, tiene que romper la actualización en algunas partes. Al igual que en el microprocesador 8086, el 8088 admite el coprocesador numérico Intel 8087. La CPU reconoce todas las instrucciones de punto flotante (FP), y, cuando sea necesario, calcula la dirección de memoria para la instrucción operando FP y no una lectura de memoria ficticia. La FPU captura la dirección calculada y, posiblemente, los datos, y procede a ejecutar la instrucción FP. La CPU al mismo tiempo, comienza a ejecutar la siguiente instrucción. Así, los dos enteros y de instrucciones de punto flotante se pueden ejecutar simultáneamente. El microprocesador original Intel 8088 ha sido fabricado utilizando la tecnología de HMOS. También hubo versiones CHMOS del chip 80C88 y 80C88A. Estos microprocesadores tenían un consumo de energía mucho más baja.
División de Ingeniería en Sistemas Computacionales Academia de Ciencias de la Ingeniería PROYECTO SEGUNDO DEPARTAMENTAL PERIODO 2020- 2 Intel 80286. La segunda generación de procesadores x86 de 16-bits, Intel 80286, fue lanzado en 1982. La nueva característica importante del microprocesador 80286 fue el modo protegido. Cuando se cambia a este modo, la CPU puede direccionar hasta 16 MB de memoria de funcionamiento. En el modo protegido era posible proteger la memoria y otros recursos del sistema de programas para usuarios; esta característica es necesaria para la multitarea de programa real. Hay muchos sistemas operativos que utiliza el 80286 en modo protegido: OS / 2 1.x, Venix, SCO Xenix 286, y otros. Si bien este modo es útil para sistemas operativos multitarea, es de uso limitado para los sistemas que requiere la ejecución de los programas existentes x86. El modo protegido no puede ejecutar varios programas virtualmente, y había otras limitaciones, así:
División de Ingeniería en Sistemas Computacionales Academia de Ciencias de la Ingeniería PROYECTO SEGUNDO DEPARTAMENTAL PERIODO 2020- 2 Otro nuevo modo en el 80386 de CPU era el modo virtual 8086. En este modo, la CPU puede ejecutar las aplicaciones que ejecutaba el 8086 mientras que proporciona la protección necesaria de la memoria y otros recursos. La introducción de este modo y 80386 en modo protegido se pasó muy significativamente. Todos los sistemas operativos de 32 bits basados en el uso de estos modos de ejecución heredada de 16 bits y para aplicaciones más modernas de 32 bits. Hubo diferentes versiones de los 80386 CPU:
División de Ingeniería en Sistemas Computacionales Academia de Ciencias de la Ingeniería PROYECTO SEGUNDO DEPARTAMENTAL PERIODO 2020- 2 80486 El 80486 introduce el uso de tecnología de cache mucho más sofisticada y potente, e instrucciones de segmentación de cauce sofisticadas. Pentium En el Pentium, Intel introduce el uso de técnicas súper escalares, que permiten que varias instrucciones se ejecuten en paralelo. Procesador Pentium Pro Es la sexta generación de arquitectura x86 de los microprocesadores de Intel, cuya meta era remplazar al Intel Pentium en toda la gama de aplicaciones. Pero luego se centró, como chip, en el mundo de los servidores y equipos de sobremesa de gama alta. Procesador Pentium II El Pentium II es un microprocesador con arquitectura x86, introducido en el mercado el 7 de mayo de 1997. Está basado en una versión modificada del núcleo P6, usado por primera vez en el Intel Pentium Pro. Los cambios fundamentales respecto a éste último fueron mejorar el rendimiento en la ejecución de código de 16 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. Procesador Pentium II Xeon Basado en la arquitectura del procesador Pentium II, el procesador Pentium II Xeon agrega un mayor rendimiento, facilidad de uso y confiabilidad en fases crítica, ya que estaban destinados a servidores y estaciones de trabajo. Intel Pentium III Este procesador tuvo bastante más éxito que su predecesor. Del P3 hubo tres versiones. La primera (Katmai) lanzada en 1999 se diferenciaba del P2 en una mejora del MMX y en un tamaño más reducido. Su velocidad de reloj fue de 450 a 600 MHz. La segunda versión lanzada en 2000 (Copermine) mejoraba la caché y su tamaño era todavía más reducido. Su velocidad de reloj iba de los 600 a 1000mhz. Y finalmente se lanzó en 2001 la tercera versión (Tualatin) la más fiable de todas que todavía mejoró más la caché y el tamaño. La velocidad iba de 1 a 1,4ghz.
División de Ingeniería en Sistemas Computacionales Academia de Ciencias de la Ingeniería PROYECTO SEGUNDO DEPARTAMENTAL PERIODO 2020- 2 Procesador Pentium 4 El Pentium 4 (erróneamente escrito Pentium IV) es un microprocesador de séptima generación basado en la arquitectura x86. Es el primer microprocesador con un diseño completamente nuevo desde el Pentium Pro de 1995. El Pentium 4 original, denominado Willamette, trabajaba a 1,4 y 1,5 GHz; y fue lanzado en noviembre de
Procesador Pentium M Introducido en marzo de 2003, el Intel Pentium M es un microprocesador con arquitectura x86 (i686) diseñado y fabricado por Intel. El procesador fue originalmente diseñado para su uso en computadoras portátiles. Su nombre en clave antes de su introducción era “Banias”. Todos los nombres clave del Pentium M son lugares de Israel, la ubicación del equipo de diseño del Pentium M. Procesador Pentium D Pentium D fueron introducidos por Intel en 2005. Los chips Pentium D consisten básicamente en dos procesadores Pentium 4 (de núcleo Prescott) ubicados en una única pieza de silicio con un proceso de fabricación de 90 nm. El nombre en clave del Pentium D antes de su lanzamiento era “Smithfield”. Incluye una tecnología DRM (Digital rights management) para hacer posible un sistema de protección anticopia de la mano de Microsoft. Procesador Core 2 Dúo y Core 2 Quad Últimamente se liberó la gama Core 2 Duo y Core 2 Quad, los cuales engloban dos procesadores físicos dentro de uno solo, obteniendo resultados impresionantes. Procesador Celeron Los procesadores Celeron pueden realizar las mismas funciones básicas que otros, pero su rendimiento es inferior. Por ejemplo, los Celeron usualmente tienen menos memoria caché o algunas funcionalidades avanzadas desactivadas. Estas diferencias impactan variablemente en el rendimiento general del procesador. Aunque muchos Celeron pueden trabajar prácticamente al mismo nivel de otros procesadores, algunas aplicaciones avanzadas (juegos, edición de video, programas de ingeniería, etc.) tal vez no funcionen igual en un Celeron. Procesadores AMD K
División de Ingeniería en Sistemas Computacionales Academia de Ciencias de la Ingeniería PROYECTO SEGUNDO DEPARTAMENTAL PERIODO 2020- 2 K8 es una revisión mayor de la arquitectura K7, cuya mejora más notable es el agregado de extensiones de 64 bit sobre el conjunto de instrucciones x86. Esto es importante para AMD puesto que marca un intento de definir el estándar x86 e imponerse, en vez de seguir los estándares marcados por Intel. Y al respecto, AMD ha tenido éxito. La historia ha dado un giro y Microsoft adoptó el conjunto de instrucciones de AMD, dejando a Intel el trabajo de ingeniería inversa de las especificaciones de AMD (EM64T). Otras características notables de K8 son el aumento de los registros de propósito general (de 8 a 16 registros), la arquitectura Direct Connect Architecture y el uso de HyperTransport. AMD K10 (K8L) Las nuevas innovaciones que trae consigo la arquitectura K8L (Barcelona) son: Proceso de fabricación de 65nm.
División de Ingeniería en Sistemas Computacionales Academia de Ciencias de la Ingeniería PROYECTO SEGUNDO DEPARTAMENTAL PERIODO 2020- 2 AMD / ATI Después de completar la compra de ATI, AMD se reestructura como la única empresa en el mundo que provee un abanico de soluciones en todos los ramos de microprocesadores, tarjetas de video y chipsets así también se convierte en el mayor productor mundial de chips para TV, consolas y celulares en el mundo, con esto AMD se convierte hoy en día en el mayor rival de Intel en cuanto a soluciones en semiconductores se refiera. AMD Fusion La nueva iniciativa de AMD para el próximo lustro consiste en implantar las capacidades de las GPU's en el mismo chip de silicio que los microprocesadores y así dotarlos de poder extra en aplicaciones de gráficos principalmente para la computación móvil. Iniciativa 50X Consiste en que la mitad de la población cuente con la capacidad de conectarse a internet para el 2015; esto se logra a través de concursos entre universidades de varios países donde desarrollan las mejores soluciones para cada región del planeta basadas en la tecnología de AMD. Procesador Descripción 8080 Era una maquina de 8 bits, con datos de memoria de 8 bits 8086 Una maquina de 16 bits, mucho más potente. Además de un camino de datos más ancho y registros más grandes, el 8086 tenía un cache de instrucción, o cola, que pre captaba algunas instrucciones antes de ser ejecutadas. 80286 Esta ampliación del 8086 permitía redireccionar una memoria de 16MBytes en lugar de un solo Mbyte. 80386 Fue la primera maquina de Intel con 32 bits, y constituyo una gran revisión del modelo anterior. Con una arquitectura de 32 bits, el 80386 rivalizaba en complejidad y potencia con los minicomputadores y grandes computadores introducidos en el mercado pocos años antes. 80486 El 80486 introduce el uso de tecnología de cache mucho mas sofisticada y potente, e instrucciones de segmentación de cauce sofisticadas.
División de Ingeniería en Sistemas Computacionales Academia de Ciencias de la Ingeniería PROYECTO SEGUNDO DEPARTAMENTAL PERIODO 2020- 2
El lenguaje Ensamblador es un lenguaje traductor que permite tener un control total sobre cada instrucción generada por una máquina en particular mediante el programa traductor, tal programa traductor es llamado Ensamblador. El lenguaje ensamblador, o assembler (en inglés assembly language y la abreviación asm), es un lenguaje de programación de bajo nivel. Consiste en un conjunto de mnemónicos que representan instrucciones básicas para los computadores, microprocesadores, microcontroladores y otros circuitos integrados programables. Implementa una representación simbólica de los códigos de máquina binarios y otras constantes necesarias para programar una arquitectura de procesador y constituye la representación más directa del código máquina específico para cada arquitectura legible por un programador. Cada arquitectura de procesador tiene su propio lenguaje ensamblador que usualmente es definida por el fabricante de hardware, y está basada en los mnemónicos que simbolizan los pasos de procesamiento (las instrucciones), los registros del procesador, las posiciones de memoria y otras características del lenguaje. Un lenguaje ensamblador es por lo tanto específico de cierta arquitectura de computador física (o virtual). Esto está en contraste con la mayoría de los lenguajes de programación de alto nivel, que idealmente son portátiles. Características
División de Ingeniería en Sistemas Computacionales Academia de Ciencias de la Ingeniería PROYECTO SEGUNDO DEPARTAMENTAL PERIODO 2020- 2 su totalidad para poder ser usado en otra máquina distinta, aun con el mismo Microprocesador, solo pueden ser reutilizados secciones especiales del código programado.