stm32 python解释器_<编译原理 - 函数绘图语言解释器(3)解释器 - python>

背景

编译原理上机实现一个对函数绘图语言的解释器 - 用除C外的不同种语言实现

设计思路:

将语法分析器并入绘图功能

继承语法分析器覆盖重写

用Pycharm写了一个.py文件:

semanticfunc.py

输入流是语法分析器得到的语法树,输出流是绘制的图像

测试文本序列:

//----------------测试程序1:分别测试------------------------

ORIGIN IS (100,300); // Sets the offset of the origin

ROT IS 0; // Set rotation Angle.

SCALE IS (1,1); // Set the abscissa and ordinate scale.

FOR T FROM 0 TO 200 STEP 1 DRAW (T,0); // The trajectory of the x-coordinate.

FOR T FROM 0 TO 150 STEP 1 DRAW (0,-T); // The trajectory of the y-coordinate.

FOR T FROM 0 TO 120 STEP 1 DRAW (T,-T); // The trajectory of the function f[t]=t.

FOR T FROM 0 TO 2*PI STEP PI/50 DRAW(COS(T),SIN(T));

//---------测试程序2----------

ORIGIN IS (20, 200);

ROT IS 0;

SCALE IS (40, 40);

FOR T FROM 0 TO 2*PI STEP PI/50 DRAW (T, -SIN(T));

ORIGIN IS (20, 240);

FOR T FROM 0 TO 2*PI STEP PI/50 DRAW (T, -SIN(T));

ORIGIN IS (20, 280);

FOR T FROM 0 TO 2*PI STEP PI/50 DRAW (T, -SIN(T));

//-----------------测试程序3--------------

ORIGIN IS (380, 240);

SCALE IS (80, 80/3);

ROT IS PI/2+0*PI/3 ;

FOR T FROM -PI TO PI STEP PI/50 DRAW (COS(T), SIN(T));

ROT I

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值