首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

如何实现IF功能

2013-12-04 
怎么实现IF功能本帖最后由 nabasasun 于 2013-11-30 01:43:23 编辑就是在TXT文件里读取IF语句ifbiao 0 g

怎么实现IF功能
本帖最后由 nabasasun 于 2013-11-30 01:43:23 编辑 就是在TXT文件里读取IF语句

if  biao ==0 goto  nopl

;这里是不为0时运行的代码

*nopl

;为0时运行的代码
[解决办法]
首先,你要知道这个.txt是什么代码。
比如pascal,比如 c
或者就是自己简单定义的个语言

比如 

数据类型只有整数一种
只有 + - 两个算术运算,
逻辑也只有比较操作 〈,〉,=,〈=,〉=,!=
控制语句只有 if goto
变量只有单个字母,没有赋值是值为0
基本语句就是赋值语句
只有一个输出语句 print 输出数据

那么这个语言的语句有
1) 加法减法表达式     add_sub_expr
2) 比较表达式(关系表达式) cmp_expr
3) if_statement
4)  goto_statement
5)  label 语句

 语言成分 有关键字 
if,
goto
算术运算符+ -
赋值符号 =
比较运算符〈,〉,=,〈=,〉=,!=
变量;
标号;
做个递归下降分析

分别做个函数执行 ,分析和处理命令
if 命令:
 计算 比较表达式结果 ,如果结果为真执行 后面的语句,否则不执行
goto 命令:
设置当前行为 label 指示的那一行。
以后从改行开始处理。
print 命令: 输出数据
表达式计算。。。用个栈处理吧。







[解决办法]
参考《编译原理》中的词法分析和有限状态自动机。

热点排行