Upgrade to Pro — share decks privately, control downloads, hide ads and more …

UP Lecture 01

UP Lecture 01

Compilers
Course Presentation
(202401)

Javier Gonzalez-Sanchez

December 04, 2023
Tweet

More Decks by Javier Gonzalez-Sanchez

Other Decks in Programming

Transcript

  1. Dr. Javier Gonzalez-Sanchez | Compilers | 5 jgs Teaching http://javiergs.info/teaching/

    At MX/ASU/CSU: § Software Engineering § Human-Computer Interaction § Applied Affective Computing § Programming Languages
  2. Dr. Javier Gonzalez-Sanchez | Compilers | 6 jgs Research http://javiergs.info/projects/

    Emotion AI Human-Robot Interaction Affect-Driven Intelligent Systems
  3. Dr. Javier Gonzalez-Sanchez | Compilers | 9 jgs Keywords Level

    Paradigm Language Analysis Lexical Input: Symbols Output: Words Syntax Input: Words Output: Sentences Semantic Input: Sentences Translate or Execute
  4. Dr. Javier Gonzalez-Sanchez | Compilers | 10 jgs Language Levels

    Hardware Machine Language Assembly Language High-Level Language C Fortran C++ Java
  5. Dr. Javier Gonzalez-Sanchez | Compilers | 13 jgs High-Level Languages

    X,E,G,O,O #e1,I,I,0,7 @ OPR 19, AX STO x, AX LIT 5, AX OPR 21, AX LOD #e1,AX CAL 1, AX OPR 0, AX 5 Virtual Machine (interpreter) // sorce code int x; int foo () { read (x); print (5); } main () { foo (); } Lexer Parser Semantic Analyzer Code Generation 01001010101000010 01010100101010010 10100100000011011 11010010110101111 00010010101010010 10101001010101011 Assembler compilation execution
  6. Dr. Javier Gonzalez-Sanchez | Compilers | 14 jgs Why? A

    course in compilers offers a good opportunity to get experience with the development of a larger piece of software.
  7. Dr. Javier Gonzalez-Sanchez | Compilers | 16 jgs Grading Midterm

    Exam 40% 20% 20% Final Exam (Comprehensive) 40% 10% + 10% + 10% + 10% Programming Assignments (4) 100% A + 97 A 93 A- 89 B+ 86 B 82 B- 78 C + 74 C 70 Labs 20% 20%
  8. jgs Compilers Javier Gonzalez-Sanchez, Ph.D. [email protected] Spring 2024 Copyright. These

    slides can only be used as study material for the Compilers course at Universidad Panamericana. They cannot be distributed or used for another purpose.