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
140
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
CSC486 Lecture 13
javiergs
PRO
0
22
CSC486 Lecture 12
javiergs
PRO
0
69
CSC486 Lecture 11
javiergs
PRO
0
28
CSC486 Lecture 10
javiergs
PRO
0
55
CSC486 Lecture 08
javiergs
PRO
0
54
CSC486 Lecture 07
javiergs
PRO
0
100
CSC486 Lecture 06
javiergs
PRO
0
85
CSC486 Lecture 05
javiergs
PRO
0
73
CSC486 Lecture 04
javiergs
PRO
0
47
Other Decks in Programming
See All in Programming
Rails 1.0 のコードで学ぶ find_by* と method_missing の仕組み / Learn how find_by_* and method_missing work in Rails 1.0 code
maimux2x
1
260
.NET Frameworkでも汎用ホストが使いたい!
tomokusaba
0
210
ファインディLT_ポケモン対戦の定量的分析
fufufukakaka
0
950
SwiftUI移行のためのインプレッショントラッキング基盤の構築
kokihirokawa
0
170
コミュニティ駆動 AWS CDK ライブラリ「Open Constructs Library」 / community-cdk-library
gotok365
2
260
推しメソッドsource_locationのしくみを探る - はじめてRubyのコードを読んでみた
nobu09
2
360
DevNexus - Create AI Infused Java Apps with LangChain4j
kdubois
0
130
LINE messaging APIを使ってGoogleカレンダーと連携した予約ツールを作ってみた
takumakoike
0
130
PRレビューのお供にDanger
stoticdev
1
240
バッチを作らなきゃとなったときに考えること
irof
2
550
Serverless Rust: Your Low-Risk Entry Point to Rust in Production (and the benefits are huge)
lmammino
1
160
AIレビュー導入によるCIツールとの共存と最適化
kamo26sima
1
710
Featured
See All Featured
Adopting Sorbet at Scale
ufuk
75
9.2k
Stop Working from a Prison Cell
hatefulcrawdad
268
20k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
How STYLIGHT went responsive
nonsquared
99
5.4k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.2k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
100
18k
The World Runs on Bad Software
bkeepers
PRO
67
11k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.2k
GitHub's CSS Performance
jonrohan
1030
460k
For a Future-Friendly Web
brad_frost
176
9.6k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
YesSQL, Process and Tooling at Scale
rocio
172
14k
Transcript
jgs Compilers Lecture 01: Course Presentation Dr. Javier Gonzalez-Sanchez jgonzalezs@up.edu.mx
jgs Instructor
Dr. Javier Gonzalez-Sanchez | Compilers | 3 jgs Instructor Dr.
Javier Gonzalez-Sanchez jgonzalezs@up.edu.edu 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 § Programming Languages § Compilers
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 Language Levels
Hardware Machine Language Assembly Language High-Level Language C Fortran C++ Java
Dr. Javier Gonzalez-Sanchez | Compilers | 10 jgs Machine Language
Dr. Javier Gonzalez-Sanchez | Compilers | 11 jgs Assembly Language
Dr. Javier Gonzalez-Sanchez | Compilers | 12 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 | 13 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 | 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(s) 40% 10% + 10% 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 & Homework 20% 20%
Dr. Javier Gonzalez-Sanchez | Compilers | 17 jgs Textbook
Dr. Javier Gonzalez-Sanchez | Compilers | 18 jgs Homework Teams
of Three Members
Dr. Javier Gonzalez-Sanchez | Compilers | 19 jgs Questions
jgs Compilers Javier Gonzalez-Sanchez, Ph.D. jgonzalezs@up.edu.mx Spring 2025 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.