Red de conocimiento informático - Conocimiento informático - ¿Qué libro es adecuado para aprender los principios de compilación?

¿Qué libro es adecuado para aprender los principios de compilación?

Nuestra escuela utiliza los dos libros "Principios de compilación" y "Principios y práctica de compilación", los cuales son libros de texto extranjeros. Creo que "Principios y práctica de compilación" es un buen libro. Debería poder comprenderlo mediante el autoestudio y tiene mucho código. Al final del libro está el código fuente de todo el pequeño compilador. .

La compilación es difícil de aprender, solo aprende lentamente.

La siguiente información es de referencia:

Las tres biblias de la tecnología de compilación contemporánea

1. Libro del Dragón (Libro del Dragón)

Este libro es "Compiladores: principios, técnicas y herramientas"

Autor: Alfred V: Alfred V.Aho, Ravi Sethi, Jeffrey D. Ullman

Acerca de

Los autores de Compiladores:

Alfred V. Aho, Ravi Sethi y Jeffrey D. Ullman son científicos informáticos de renombre mundial que han realizado contribuciones destacadas en muchos campos, como la teoría de la informática y las bases de datos. Ha realizado contribuciones destacadas en muchos campos, como la teoría de la informática y las bases de datos. "Principios de compilación" es un clásico insustituible en el campo de la compilación y las universidades y colegios de renombre mundial lo elogian como el "Libro del Dragón". Las instituciones de investigación (como Bell Labs, Columbia University, Princeton University y Stanford University, etc.) se utilizan ampliamente como libros de texto para cursos de pregrado y posgrado sobre principios y tecnología de compilación. Los "Principios de compilación" también han tenido un impacto significativo en la producción. La comunidad china de educación informática se analiza en profundidad temas importantes en el diseño de compiladores, incluido el análisis léxico, el análisis de sintaxis, el análisis guiado por la sintaxis, la verificación de tipos, el entorno de ejecución, la generación de código intermedio, la generación de código, la optimización de código, etc. algunos aspectos de la implementación de un compilador. Problemas de programación y algunos ejemplos de compilador. Cada capítulo también proporciona una serie de ejercicios y referencias.

La segunda edición de "Principios de compilación" ha sido completamente revisada en base a la edición anterior y Cubre el desarrollo del compilador. Cada capítulo proporciona una gran cantidad de sistemas y materiales de referencia. "Principios de compilación" es un libro de texto clásico sobre principios de compilación, rico en contenido y adecuado para estudiantes universitarios y graduados en informática y especialidades relacionadas. en colegios y universidades también es una excelente lectura de referencia para el personal técnico.

Acerca del autor

Alfred V. Aho es profesor de la Universidad Goethe y académico de la Academia Nacional. de Ingeniería, miembro de ACM e IEEE, y miembro de IEEE. Ganador del Premio Von Neumann. Es autor de varios libros sobre algoritmos, estructuras de datos, compiladores, sistemas de bases de datos y fundamentos de la informática.

Monica S. Lam es profesora en el Departamento de Ciencias de la Computación de la Universidad de Stanford, fue científica en jefe de Tensilica y primera directora ejecutiva de Moka5, y fue presidenta del proyecto SUIF, que produjo uno de los más importantes. compiladores de investigaciones populares

Ravi Sethi, presidente de Avaya Labs. Se desempeña como vicepresidente senior de Bell Labs y director de tecnología de software de comunicaciones en TLucent Technologies. Ha enseñado en la Universidad Estatal de Pensilvania, la Universidad Estatal de Arizona y. Universidad de Princeton y es miembro de ACM.

Jeffrey D. Ullman es profesor de Ciencias de la Computación en la Universidad de Stanford y director ejecutivo de Gradiance. Sus intereses de investigación incluyen la teoría de bases de datos, la integración de bases de datos, la minería de datos y la enseñanza de infraestructuras de información. Es miembro de la Academia Nacional de Ingeniería, miembro del Instituto de Ingenieros Eléctricos y Electrónicos y recibió el Premio al Educador Distinguido ACM KarIstrom y el Premio Knuth.

Primera versión en chino

Segunda versión en chino

2. Libro de ballenas

Título: Diseño e implementación de compiladores avanzados

p>

Autor: Steven S. Muchnickp>Sinopsis

Este libro enfrenta los desafíos de los lenguajes y arquitecturas modernos y ayuda a los lectores a prepararse para resolver los problemas de diseño del compilador que encontrarán en el futuro. .

Este libro cubre todos los temas avanzados en el diseño e implementación de compiladores para microprocesadores modernos.

A partir de cuestiones avanzadas en las áreas básicas del diseño de compiladores, este libro analiza amplia y profundamente varias técnicas importantes de optimización de código, analiza la importancia relativa de varias técnicas de optimización y los métodos más efectivos para implementar estas técnicas de optimización.

Características de este libro

● Sienta las bases para comprender los principales problemas en el diseño de compiladores avanzados

● Discusión en profundidad de los problemas de optimización

● Tomemos como ejemplos SPARC de Sun, POWER y PowerPC de IBM, Alpha de DEC, Pentium de Intel y compiladores comerciales relacionados. Explica la arquitectura del compilador, el diseño de código intermedio y varios métodos de optimización

● Proporciona una gran cantidad de algoritmos bien definidos para la generación de código, optimización y otros problemas

● Presenta ICAN (Informal Notación de algoritmos compilados), un lenguaje diseñado por los autores para describir algoritmos de forma concisa y clara.

Este libro es un trabajo clásico sobre compiladores, y se llama "Libro de la Ballena" junto con "Libro del Dragón". Introduce de manera integral temas avanzados en el diseño e implementación de compiladores para lenguajes y arquitecturas modernos. A partir de problemas de alto nivel en el campo básico de los compiladores, explora en profundidad varios problemas importantes de optimización de código. Destinado a profesionales de compiladores, así como a estudiantes de pregrado y posgrado en ciencias de la computación, este libro proporciona una valiosa guía para diseñar e implementar compiladores altamente optimizadores, así como para determinar la importancia de la optimización y las formas más efectivas de lograrla.

Acerca del autor

Steven S. Muchnick fue profesor de informática y más tarde se convirtió en desarrollador principal de las arquitecturas informáticas HP PA-RISC y SUN SPARC. Aportó sus conocimientos a y. Experiencia aplicada al diseño de compiladores y se desempeñó como líder de grupos de implementación y diseño de compiladores de alto nivel para estos sistemas. Su experiencia tanto en investigación como en desarrollo es valiosa para guiar a los lectores en la toma de decisiones sobre el diseño de compiladores.

3. Tiger Book

Título: Implementación del compilador moderno en C/Java/ML, segunda edición"

Autor: Andrew W. Appel, con J. J. J. J. J : Andrew W. Appel, con Jens Palsberg

Sinopsis

Principios del compilador moderno: una descripción del lenguaje C (edición en inglés)/Turing Original Computer Science Series Introducción completa Los diversos componentes de un compilador moderno, que incluye: análisis léxico, análisis de sintaxis, sintaxis abstracta, verificación semántica, representación de código intermedio, selección de instrucciones, análisis de flujo de datos, asignación de registros y sistema de tiempo de ejecución. A diferencia de la mayoría de los libros de texto sobre principios de compilación, "Principios de compilación modernos: descripción del lenguaje C (edición en inglés)" / Serie original de informática de Turing utiliza lenguajes funcionales y orientados a objetos para describir la generación de código y la asignación de registros, y proporciona una guía completa para compilación. Los archivos de encabezado C reales se proporcionan para las interfaces entre los distintos módulos del procesador. El libro se divide en dos partes. La primera parte son los conocimientos básicos de compilación en la primera lección del curso Principios de compilación (un semestre) y la segunda parte son temas avanzados, incluidos lenguajes funcionales y orientados a objetos, recolección de basura y bucles. optimización, formulario SSA (asignación única estática), programación de ciclos y optimización de la estructura de almacenamiento.

Este libro es un libro de texto famoso para cursos de principios de compilación. Este libro ha sido adoptado como libro de texto para cursos de principios de compilación por muchas universidades de renombre internacional como MIT, UC Berkeley, Princeton y Cambridge. Este libro goza del título de "Libro del Tigre" en el extranjero y también se conoce como "Libro del Dragón" junto con "Principios de compilación" (editado por Alfred Aho y otros). En comparación con otras obras famosas sobre principios de compilación, este libro se publicó tarde y su contenido es novedoso. Este libro proporciona a los estudiantes un proyecto práctico escrito en C, que incluye diseño de front-end y back-end, lo que les permite crear un compilador completamente funcional en un semestre.

Acerca del autor

Andrew W. Appel, profesor de Ciencias de la Computación en la Universidad de Princeton, presidente ejecutivo de la 26ª Conferencia Anual ACM SIGPLAN-SIGACT sobre Principios de Programación, trabajó en Bell Labs desde 1998 a 1999 Se dedica a la investigación. Sus principales intereses de investigación son la seguridad informática, el diseño de compiladores y los lenguajes de programación.