Next: , Previous: Interface, Up: Top   [Contents][Index]


5 Bison¹½Ê¸²òÀÏ´ï¤Î¥¢¥ë¥´¥ê¥º¥à

Bison¹½Ê¸²òÀÏ´ï¤Ï¡¢¥È¡¼¥¯¥ó¤òÆÉ¤à¤È¡¢¥È¡¼¥¯¥ó¤Î°ÕÌ£ÃͤȤȤâ¤Ë¥¹¥¿¥Ã¥¯¤ËÀѤߤޤ¹¡£ ¤³¤Î¥¹¥¿¥Ã¥¯¤ò¹½Ê¸²òÀϴ凉¥¿¥Ã¥¯¡Êparser stack¡Ë¤È¸Æ¤Ó¤Þ¤¹¡£ ¥È¡¼¥¯¥ó¤ò¥¹¥¿¥Ã¥¯¤ËÀѤळ¤È¤ò¡¢ÅÁÅýŪ¤Ë ¥·¥Õ¥È¡Êshifting¡Ë¤È¸Æ¤Ó¤Þ¤¹¡£

¤¿¤È¤¨¤Ð¡¢Ãæ´Öµ­Ë¡ÅÅÂ¡¢‘1 + 5 *’¤ò¤¹¤Ç¤ËÆÉ¤ó¤Ç¤¤¤Æ¡¢ ‘3’¤ò¼õ¤±¼è¤Ã¤¿¤È²¾Äꤷ¤Þ¤¹¡£ ¥¹¥¿¥Ã¥¯¤Ë¤Ï4¸Ä¤ÎÍ×ÁǤ¬¤¢¤ê¡¢¥È¡¼¥¯¥ó¤½¤ì¤¾¤ì¤¬¥·¥Õ¥È¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

¤·¤«¤·¡¢¥¹¥¿¥Ã¥¯¤Ë¾ï¤ËÆÉ¤ß¹þ¤Þ¤ì¤¿¥È¡¼¥¯¥ó¤½¤ì¤¾¤ì¤ËÂФ¹¤ë Í×ÁǤ¬¤¢¤ë¤ï¤±¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£ ºÇ¸å¤În¸Ä¤Î¥È¡¼¥¯¥ó¤È¥°¥ë¡¼¥×¤¬Ê¸Ë¡µ¬Â§¤ËÅö¤Æ¤Ï¤Þ¤ë¾ì¹ç¤Ë¤Ï¡¢ ¤½¤ì¤é¤Ïµ¬Â§¤Ë½¾¤Ã¤ÆÁȤ߹ç¤ï¤µ¤ì¤Þ¤¹¡£ ¤³¤ì¤ò¡¢´Ô¸µ¡Êreduction¡Ë¤È¸Æ¤Ó¤Þ¤¹¡£ ¥¹¥¿¥Ã¥¯¤Ë¤¢¤Ã¤¿¥È¡¼¥¯¥ó¤È¥°¥ë¡¼¥×¤Ï¡¢ µ¬Â§¤Î·ë²Ì¡¢¤Ä¤Þ¤êº¸Â¦¤Ë¤¢¤ëµ­¹æ¤Ç¤¢¤ë¡¢1¸Ä¤Î¥°¥ë¡¼¥×¤ËÃÖ¤­´¹¤¨¤é¤ì¤Þ¤¹¡£ µ¬Â§¤Î¥¢¥¯¥·¥ç¥ó¤Î¼Â¹Ô¤Ï¡¢·ë²Ì¤Î¥°¥ë¡¼¥×¤Î°ÕÌ£Ãͤò·×»»¤¹¤ë¤Î¤Ç¡¢ ´Ô¸µ¤Î¼ê½ç¤Î1¤Ä¤Ç¤¹¡£

¤¿¤È¤¨¤Ð¡¢Ãæ´Öµ­Ë¡ÅÅÂî¤Î¹½Ê¸²òÀϴ凉¥¿¥Ã¥¯¤ÎÆâÍÆ¤Ï¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£

1 + 5 * 3

¤½¤·¤Æ¡¢ÆþÎϤµ¤ì¤¿¼¡¤Î¥È¡¼¥¯¥ó¤¬²þ¹ÔÉ乿¤Ê¤é¤Ð¡¢ ¼¡¤Îµ¬Â§¤Ë½¾¤Ã¤Æ¡¢ºÇ¸å¤Î3¸Ä¤ÎÍ×ÁǤ¬15¤Ë´Ô¸µ¤µ¤ì¤Þ¤¹¡£

expr: expr '*' expr;

¤½¤·¤Æ¡¢¥¹¥¿¥Ã¥¯¤Ï3¸Ä¤ÎÍ×ÁǤò»ý¤Á¤Þ¤¹¡£

1 + 15

¤³¤Î»þÅÀ¤Ç¡¢Ê̤δԸµ¤¬²Äǽ¤Ë¤Ê¤ê¡¢1¸Ä¤ÎÃÍ16¤òÆÀ¤Þ¤¹¡£ ¤½¤·¤Æ¡¢²þ¹ÔÉ乿¤¬¥·¥Õ¥È¤µ¤ì¤Þ¤¹¡£

¹½Ê¸²òÀÏ´ï¤Ï¡¢¥·¥Õ¥È¤È´Ô¸µ¤Ë¤è¤Ã¤Æ¡¢ÆþÎÏÁ´ÂΤò ʸˡ¤Î³«»Ïµ­¹æ¤Ç¤¢¤ë1¸Ä¤Î¥°¥ë¡¼¥×¤Ë´Ô¸µ¤·¤è¤¦¤È¤·¤Þ¤¹ ¡Êsee Languages and Context-Free Grammars¡Ë¡£

¤³¤Î¼ïÎà¤Î¹½Ê¸²òÀÏ´ï¤Ï¡¢¥Ü¥È¥à¥¢¥Ã¥×¹½Ê¸²òÀÏ´ï¤È¤·¤ÆÃΤé¤ì¤Æ¤¤¤Þ¤¹¡£