// Á¦ ¸ñ: Top-down parsing by Recursive-Descent À» ÀÌ¿ëÇÑ °è»ê±â MASM ¾î¼Àºí¸® »ý¼º±â
// ÀÛ¼ºÀÚ: ±è¿µ´ë( http://www.howto.pe.kr )
¼³¸í: Top down parsingÁß ÇϳªÀÎ recursive descent parsing(¼øÈ¯ ÇϰÇü ºÐ¼®)¹æ¹ýÀ»
»ç¿ëÇÑ ¼ö½Ä ±¸¹® ºÐ¼® ¿¹Á¦·Î¼ Á¤¼ö, +, -, *, /, ±×¸®°í ( ... ) ·Î ±¸¼ºµÈ ¼ö½ÄÀ»
Űº¸µå·Î Á÷Á¢ Àоîµé¿© ÆÄ½ÌÇÑ ÈÄ À̸¦ masm ¾î¼Àºí¸®·Î º¯È¯ÇÏ¿© Ãâ·Â
¹®¹ý:
expression = term { ( "+" | "-" ) term }
term = factor { ( "*" | "/" ) factor }
factor = number | "(" expression ")"
Ư¡:
. ¼ö½Ä ÀÔ·ÂÀ» infix ·Î ¹Þ¾Æ¼ 󸮵Ê
. Register overflow, Divide by Zero, Invalid Expression ¿¹¿Ü»óȲ ó¸®ÇÔ
. infix ÀԷ½à »çÄ¢¿¬»ç°ú °ýÈ£'(',')'¿¡ ´ëÇÑ ¿¬»êÀÚÀÇ ¿ì¼±¼øÀ§ Àû¿ëµÊ
. infix ÀԷ½à ±¸¹®(syntax) ¿À·ù¸¦ °Ë»çÇÔ
. ¼ýÀÚÀÇ ÀÚ¸®¼ö Á¦ÇÑ ¾øÀÌ ÀԷµÊ
. °ø¹é¹®ÀÚ(white space) 󸮵Ê
. Ãâ·ÂÀº postfix ¿Í ¾î¼ÀºíµÈ Äڵ尡 Ãâ·ÂµÊ
ÀÛ¼ºÀÚ:
±è¿µ´ë ( http://www.howto.pe.kr )
|
|