作者jobsdone (完工了)
看板NCTU-Teacher
標題[心得] 游逸平 - 編譯器設計概論
時間Sat Jan 20 09:19:25 2018
⊕課名⊕
編譯器設計概論
▲教授▲
游逸平
★修課年度★
106上學期
£教了什麼£(課程大概內容。或是額外學會了什麼東西。)
如何將high level language轉成low level
包括各種分析(lexical syntax ...)
runtime enviroment
code generation
有教一點code optimization但是沒有考
◆上課方式◆(投影片、團體討論、老師教學風格)
用老師自己做的有精緻動畫的投影片
▼考試作業▼
點名(5%)+作業(45%)+期中考(25%)+期末考(25%)=100%
整個學期的目標是將一個p 語言轉成java bytecode
而這被拆成5個作業
1. 做詞彙分析,就照著spec給的條件刻,很容易
2. 做文法分析,同上
3. 建立symbol table,這裡要開始寫比較多的C,同時如果這裡寫不好,後面會很難寫
4. 根據3做語意分析,檢查有沒有錯誤
5. 產生java bytecode
每一次作業結束都會釋出範例,所以不用擔心前面寫不好,後面會寫不下去
不同於以往3. 4.是一起做的,所以輕鬆很多
而且就算3.做得不好,也可以用範例繼續做4.
其中期末考都和考古題很類似,記得先看過
然後通常都只考最基本的觀念,算是還挺佛心的
¥其他¥(是否注重出席率or嚴禁遲到?需要的基礎?)
老師在下課會點名,兩節中間也會
點名是隨機點,投影幕上會有你的照片
有通過基礎程式設計的應該都可以修
¢最後想說的話¢
可能是我都跟著範例code的腳步走,作業只求達到spec要求,沒寫clean code
所以修起來比想像中容易許多
如果要全部自己來,完全不依賴範例的話,難度會高很多
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.165.184.135
※ 文章網址: https://webptt.com/m.aspx?n=bbs/NCTU-Teacher/M.1516411167.A.676.html
※ 編輯: jobsdone (1.165.184.135), 01/20/2018 11:54:56
1F:推 jo4fu3p: 作業三拆了喔,羨慕~ 01/20 14:49
2F:→ jo4fu3p: (遙想當初作業三寫到天昏地暗天荒地老...) 01/20 14:50
3F:推 dreambegins: 這篇不准啦= = YYP的compiler是出名的難耶 01/24 11:10
4F:→ dreambegins: 準 01/24 11:11
5F:→ dreambegins: compiler又是資工系的大魔王...這篇文章只能說原PO是 01/24 11:11
6F:→ dreambegins: 大神等級 01/24 11:11
7F:推 emmy41124: 你的compiler難易程度好像在平行世界一樣XD 01/25 15:01
8F:→ jobsdone: 作業345還是有一定難度啦,不過調分前班平均有71,比起 01/25 17:43
9F:→ jobsdone: 一些課還算不錯了 01/25 17:43