Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
UP Lecture 01
Search
Javier Gonzalez-Sanchez
PRO
December 04, 2023
Programming
0
97
UP Lecture 01
Compilers
Course Presentation
(202401)
Javier Gonzalez-Sanchez
PRO
December 04, 2023
Tweet
Share
More Decks by Javier Gonzalez-Sanchez
See All by Javier Gonzalez-Sanchez
CSC305 Lecture 26
javiergs
PRO
0
140
CSC305 Lecture 25
javiergs
PRO
0
140
CSC509 Lecture 14
javiergs
PRO
0
140
CSC305 Lecture 24
javiergs
PRO
0
49
CSC509 Lecture 13
javiergs
PRO
0
170
CSC305 Lecture 23
javiergs
PRO
1
130
CSC305 Lecture 22
javiergs
PRO
0
62
CSC509 Lecture 12
javiergs
PRO
0
210
CSC305 Lecture 21
javiergs
PRO
0
200
Other Decks in Programming
See All in Programming
Stackless и stackful? Корутины и асинхронность в Go
lamodatech
0
1.1k
「Chatwork」Android版アプリを 支える単体テストの現在
okuzawats
0
190
Запуск 1С:УХ в крупном энтерпрайзе: мечта и реальность ПМа
lamodatech
0
770
アクターシステムに頼らずEvent Sourcingする方法について
j5ik2o
6
480
103 Early Hints
sugi_0000
1
280
Kaigi on Railsに初参加したら、その日にLT登壇が決定した件について
tama50505
0
120
20年もののレガシープロダクトに 0からPHPStanを入れるまで / phpcon2024
hirobe1999
0
890
Beyond ORM
77web
10
1.4k
数十万行のプロジェクトを Scala 2から3に完全移行した
xuwei_k
0
400
EC2からECSへ 念願のコンテナ移行と巨大レガシーPHPアプリケーションの再構築
sumiyae
2
480
バグを見つけた?それAppleに直してもらおう!
uetyo
0
190
Оптимизируем производительность блока Казначейство
lamodatech
0
770
Featured
See All Featured
A better future with KSS
kneath
238
17k
YesSQL, Process and Tooling at Scale
rocio
170
14k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
2.2k
Unsuck your backbone
ammeep
669
57k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Designing on Purpose - Digital PM Summit 2013
jponch
116
7k
How to Think Like a Performance Engineer
csswizardry
22
1.2k
Done Done
chrislema
182
16k
Music & Morning Musume
bryan
46
6.2k
Reflections from 52 weeks, 52 projects
jeffersonlam
347
20k
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
The Cult of Friendly URLs
andyhume
78
6.1k
Transcript
jgs Compilers Lecture 01: Course Presentation Dr. Javier Gonzalez-Sanchez
[email protected]
jgs Instructor
Dr. Javier Gonzalez-Sanchez | Compilers | 3 jgs Instructor Dr.
Javier Gonzalez-Sanchez
[email protected]
http://javiergs.info
Dr. Javier Gonzalez-Sanchez | Compilers | 4 jgs Where I
am from?
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
Dr. Javier Gonzalez-Sanchez | Compilers | 6 jgs Research http://javiergs.info/projects/
Emotion AI Human-Robot Interaction Affect-Driven Intelligent Systems
jgs Course Content
Dr. Javier Gonzalez-Sanchez | Compilers | 8 jgs Compiler Definitions
Programming Languages Translate
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
Dr. Javier Gonzalez-Sanchez | Compilers | 10 jgs Language Levels
Hardware Machine Language Assembly Language High-Level Language C Fortran C++ Java
Dr. Javier Gonzalez-Sanchez | Compilers | 11 jgs Assembly Language
Dr. Javier Gonzalez-Sanchez | Compilers | 12 jgs Machine Language
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
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.
jgs Syllabus
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%
Dr. Javier Gonzalez-Sanchez | Compilers | 17 jgs Textbook
Dr. Javier Gonzalez-Sanchez | Compilers | 18 jgs Guidelines Read
the Syllabus
Dr. Javier Gonzalez-Sanchez | Compilers | 19 jgs Questions
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.