算符优先文法的实现代码

 

k:=1;     S[k]:=‘#’;

REPEAT

     把下一个输入符号读进a中;

    IF S[k]∈VT THEN j:=k ELSE j:=k-1;

  WHILE S[j]  a DO

    BEGIN

    REPEAT

      Q:=S[j];

      IF S[j-1]∈VT THEN j:=j-1 ELSE j:=j-2

    UNTIL S[j]  Q

    把S[j+1]…S[k]归约为某个N;

    k:=j+1;

    S[k]:=N;

    END OF WHILE;

   IF S[j]  a OR S[j]  a THEN

      BEGIN

      k:=k+1;S[k]:=a

      END

    ELSE ERROR

  UNTIL a=‘#’  

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值