编译原理例题

这篇博客介绍了编译原理中的一个例题,涉及将算术表达式A+B∗(C−D)+E/(C−D)↑N转化为不同形式:四元式、三元式、间接三元式和逆波兰记号,详细展示了每种形式的转换过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

编译原理例题

写出算术表达式: A + B ∗ ( C − D ) + E / ( C − D ) ↑ N A+B*(C-D)+E/(C-D)↑N A+B(CD)+E/(CD)N(↑指乘方)

  • (1)四元式
    (2)三元式
    (3)间接三元式
    (4)逆波兰记号

解:

  • 四元式:
    ( 1 )   ( − ,   C ,   D ,   t 1 ) (1)\ (-,\ C,\ D,\ t_1) (1) (, C, D, t1)
    ( 2 )   ( ∗ ,   B ,   t 1 ,   t 2 ) (2)\ (*,\ B,\ t_1,\ t_2) (2) (, B, t1, t2)
    ( 3 )   ( + ,   A ,   t 2 ,   t 3 ) (3)\ (+,\ A,\ t_2,\ t_3) (3) (+, A, t2, t3)
    ( 4 )   ( − ,   C ,   D ,   t 4 ) (4)\ (-,\ C,\ D,\ t_4) (4) (, C, D, t4)
    ( 5 )   ( ↑ ,   t 4 ,   N ,   t 5 ) (5)\ (↑,\ t_4,\ N,\ t_5) (5) (, t4, N, t5)
    ( 6 )   ( / ,   E ,   t 5 ,   t 6 ) (6)\ (/,\ E,\ t_5,\ t_6) (6) (/, E, t5, t6)
    ( 7 )   ( + ,   t 3 ,   t 6 ,   t 7 ) (7)\ (+,\ t_3,\ t_6,\ t_7) (7) (+, t3, t6, t7)
  • 三元式:
    ( 1 )   ( − ,   C ,   D ) (1)\ (-,\ C,\ D) (1) (, C, D)
    ( 2 )   ( ∗ ,   B ,   ( 1 ) ) (2)\ (*,\ B,\ (1)) (2) (, B, (1))
    ( 3 )   ( + ,   A ,   ( 2 ) ) (3)\ (+,\ A,\ (2)) (3) (+, A, (2))
    ( 4 )   ( − ,   C ,   D ) (4)\ (-,\ C,\ D) (4) (, C, D)
    ( 5 )   ( ↑ ,   ( 4 ) ,   N ) (5)\ (↑,\ (4),\ N) (5) (, (4), N)
    ( 6 )   ( / ,   E ,   ( 5 ) ) (6)\ (/,\ E,\ (5)) (6) (/, E, (5))
    ( 7 )   ( + ,   ( 3 ) ,   ( 6 ) ) (7)\ (+,\ (3),\ (6)) (7) (+, (3), (6))
  • 间接三元式
    ( 1 )   ( − ,   C ,   D ) (1)\ (-,\ C,\ D) (1) (, C, D)
    ( 2 )   ( ∗ ,   B ,   ( 1 ) ) (2)\ (*,\ B,\ (1)) (2) (, B, (1))
    ( 3 )   ( + ,   A ,   ( 2 ) ) (3)\ (+,\ A,\ (2)) (3) (+, A, (2))
    ( 4 )   ( ↑ ,   ( 1 ) ,   N ) (4)\ (↑,\ (1),\ N) (4) (, (1), N)
    ( 5 )   ( / ,   E ,   ( 4 ) ) (5)\ (/,\ E,\ (4)) (5) (/, E, (4))
    ( 6 )   ( + ,   ( 3 ) ,   ( 5 ) ) (6)\ (+,\ (3),\ (5)) (6) (+, (3), (5))
  • 逆波兰记号
    A B C D − ∗ + E C D − N ↑ / + ABCD-*+ECD-N↑/+ ABCD+ECDN/+
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值