½s͵{¦¡³]­p

Compiler Design 2005

09:00~12:00 Am, Tuesday, Room 104

Teacher: Chuen-liang Chen (clchen@csie.ntu.edu.tw)

Last Modified: March 21, 2005


¡P         Textbook

Charles N. Fischer and Richard J. LeBlanc, Jr., Crafting a Compiler with C, Benjamin/Cummings, 1991

¡P         Slides

¡P         Namelist & Scores

Name list & Scores

¡P         Announcements

¤é´Á

¤º ®e

6/30

Compiler ´Á¥½¦Ò¦¨ÁZ¤½¥¬¡C

 

Ps. ·Q»â´Á¥½¦Ò¦Ò¨÷ªÌ½Ð¦Ü403¹êÅç«Ç¡C

6/25

¾Ç´Á¦¨ÁZµû¶q¤è¦¡¡G

 

¦³°µTerm ProjectªÌ¡G

´Á¤¤¦Ò*0.33 + ´Á¥½¦Ò*0.33 + term project*0.33 + Bonus

 

¨S¦³°µ Term Project ªÌ¡G

    ´Á¤¤¦Ò*0.5 + ´Á¥½¦Ò*0.5

 

¦³°µ Term Project¡A¥¼¦Ò´Á¥½¦ÒªÌ¡G

    ´Á¤¤¦Ò*0.5 + Term Project*0.5 + Bonus

 

Ps. §@·~¤@¤Î§@·~¤G§¡¬° Additional Bonus¡A¥Ñ¦Ñ®v½Õ¾ã¡C

6/23

Term Project Demo ®Éµ{ªí :

 

ROOM¡GR519

Time¡G2005/6/29  08:30       ²Ä¤G²Õ

                 09:00       ²Ä¤Q²Õ

09:30       ²Ä¤K²Õ

                 10:00       ²Ä¤T²Õ

                 10:30       ²Ä¥|²Õ

                 11:00       ²Ä¤@²Õ

                 11:30       ²Ä¤C²Õ

                 12:00       ²Ä¤Q¤@²Õ

-------------------------------

                 18:00       B91902115

                 18:30       ²Ä¤­²Õ

                 19:00       ²Ä¤»²Õ

                 19:30       B91902037

                 20:00       B91902109

 

­ì«h¤W¡G10¤ÀÄÁ³ø§i(slide)¡A10¤ÀÄÁDEMO¡A¤Q¤ÀÄÁ¸ßµª¡C

 

¦p¦³ºÃ°Ý½ÐºÉ³tÁpµ¸§U±Ð¡AÁÂÁ¡C

5/19

¡£¤½§i¡¤¥Ñ©ó¦³²Õ§O©ñ±ó´Á¥½±MÃD¡A¦]¦¹¾É¦Ü¤À²Õ²Õ§O½s¸¹­«·s±Æ¦C¡A½Ð¦P¾Ç¯à¦h¥[ª`·N¡C²Õ¸¹§ó§ï§¹¥þ¤£¼vÅT¦P¾Ç¥ô¦óÅv¯q¡A­Y¦]¦¹³y¦¨¦P¾Ç¤£«K¡A§U±Ð¦b¦¹¥ç²`·P©êºp¡C

 

5/18

§@·~¤G(Parser)ú¥æ¦W³æ§ó·s¡A©|¥¼Ãº¥æ²Õ§O½Ð¾¨³tú¥æ¡C

4/18

¥H¤U¦P¾Ç¦]¿ð¥¼Ãº¥æ¤À²Õ¨M©w¦W³æ¡A¬G¤@«ß»{©w¬°¡u¤£¤À²Õ¡v¡B¡u¦Ò´Á¤¤¦Ò¤Î´Á¥½¦Ò¡v¡B¡u¤£°µTerm Project¡v¡C

B92902114  ¥î«Ø¾_

B91902019  ³¢«Û¨j

B91902023  ©P§Í

B91902037  ¾Gºû

B91902073  ¶À¤_­Û

B91902099  ªLªQÀ·

B91902111  ¼B¤l°·

B91902117  ±çµb¶T

B90902014  ¿à«T©µ

B90902046  ·¨¤j¼w

B90902056  ¤ý·Ô¼Ì

B90902065  ³\­õ»¨

4/13

§@·~¤@(Scanner)ú¥æ¦W³æ§ó·s¡A©|¥¼Ãº¥æ²Õ§O½Ð¾¨³tú¥æ¡C

3/21

´Á¥½¤À²Õ¦W³æ§ó·s¡A½Ð¦P¾Ç¾¨³t¬d®Ö©Î¸É¥æ¡A¦³¥ô¦ó°ÝÃD¡A½Ð¼g«Hµ¹§U±Ð¡C

3/14

²¤¶ yacc ©M¬ÛÃöªºÀÉ®×, §ë¼v¤ù¦b³o¸Ì

3/14

´Á¤¤¦Ò¦Ò¥jÃD

o                                96¦~

o                                97¦~

o                                01¦~(ªþ¸Ñµª)

o                                03¦~(ªþ¸Ñµª)

o                                04¦~(ªþ¸Ñµª)

3/14

²¤¶ Lex ©M¬ÛÃöªºÀÉ®×, §ë¼v¤ù¦b³o¸Ì

3/10

¤À²Õ¦W³æ¤w¤½¥¬, ¦³¿ù»~½Ð¼g«Hµ¹§U±Ð
µoı¦Û¤v¥¼¦b¦W³æ¤¤¡A©Î©|¥¼¨M©w¤À²Õ½Ð¾¨§Ö

 

ps. B91902059 ¦P¾Ç¡A§Aªº¤j¦W¬O¡K

2/25

ºô­¶ºûÅ@¶}©l

¡P         Resources

o        BASS - Bytecode Assembly. (User Guide/ Download)

o        Flex - GNU Project - a fast lexical analyzer generator

o        Jasmin - a Java Assembler Interface

o        Google Directory - Lexer and Parser Generators

o        flex/bison Win32 port

o        yacc Win32 port


Teaching Assistant: Ching-Shiu Tseng (r92104@csie.ntu.edu.tw)