100请如何写一个解释器脚本

javaors 2007-08-08 08:38:29
本人只有一些比较简单的java和c++的基础,求各位高手给一些写一个脚本解释器思路.
...全文
381 22 打赏 收藏 转发到动态 举报
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
xwb2766 2012-03-19
  • 打赏
  • 举报
回复
建议参考这本书《计算机编译原理》 和《离散数学》这两本书。
通常步骤

•符号表,所有关于类型、范围的符号和信息
•词法分析器,将字符流(如源文件)转为令牌(tokens)(例如,关键字、运算符等)
•解析器,构建一棵用于分析语法错误的语法树
•过度代码生成器,把语法树转换为中间代码
•优化器(可选),优化中间代码
•代码生成器,从中间代码生成字节码
•最后,也是最重要的,虚拟机,字节码要在它上面运行
javaors 2007-08-16
  • 打赏
  • 举报
回复
回复:cyblueboy83(爱情白痴—电脑迷)

是啊,现在还是先看看基础点的.
javaors 2007-08-16
  • 打赏
  • 举报
回复
回复int2e() :
这玩意是我们实验室搞研究时老师分配的任务,我也没什么好处,不存在什么经济不经济的```
javaors 2007-08-16
  • 打赏
  • 举报
回复
回复iambic() :

呵呵,正如您所说,真是一筹莫展.不过有例子慢慢研究,看看编译原理的书.


谢谢你的回复.
herman~~ 2007-08-09
  • 打赏
  • 举报
回复
其实有不少开源的可以参考,但是起码要自己有些基础,才能更好理解运用
int2e 2007-08-09
  • 打赏
  • 举报
回复
搂主好有经济头脑
100分就想套一个脚本解析
哈哈
iambic 2007-08-09
  • 打赏
  • 举报
回复
lua的实现应该是非常简单的,但我想也没简单到能让楼主看懂。
最正常的脚步还是从从一本编译原理的书入手,一些书在开始的时候给出一个玩具语言,然后给你实现。
javaors 2007-08-09
  • 打赏
  • 举报
回复
回复Chiyer(星羽):

哦,是嘛,看看先
星羽 2007-08-09
  • 打赏
  • 举报
回复
lua 传说中最快的脚本 =
星羽 2007-08-09
  • 打赏
  • 举报
回复
http://www.lua.org/
星羽 2007-08-09
  • 打赏
  • 举报
回复
:)
星羽 2007-08-09
  • 打赏
  • 举报
回复


下个lua看看吧 - -
javaors 2007-08-09
  • 打赏
  • 举报
回复
回复OpenHero(开勇):

我去看看, 谢谢~~
healer_kx 2007-08-09
  • 打赏
  • 举报
回复
别想了,不是你能弄得了的。
OpenHero 2007-08-09
  • 打赏
  • 举报
回复
网上很多游戏方面的东东~~
很多人提到了写游戏脚本啥的·你可以仿照写一个,:)
bless lz
javaors 2007-08-09
  • 打赏
  • 举报
回复
回复iambic() :我现在短期想要个大约是你说的那个批处理脚本,需要学习那些方面的知识啊,编译方面的书指的是编译原理之类的??
我要个例子只要是要看看我想做的东西大体应该是个什么样子`````复杂也行,简单也行,关键在于现在不知怎么下手.
iambic 2007-08-08
  • 打赏
  • 举报
回复
所谓的解释器脚本有很多种,可以是批处理脚本,也可以是一门完整的语言,当然计算器也算。你想要的被解释的脚本是什么?

如果你想学习这方面的东西,建议你买本和编译技术有关的书。否则一个复杂的例子,很难看懂的。
javaors 2007-08-08
  • 打赏
  • 举报
回复
回复iambic() :

具体的无所谓,我就是想看里面的原理,想知道怎么实现的
你要是有例子的话可以发到我邮箱里面:zhangm0616@163.com
javaors 2007-08-08
  • 打赏
  • 举报
回复
回复iambic() : C和C++都行
linux_is_perfect 2007-08-08
  • 打赏
  • 举报
回复
脚本解释器不也是程序
只是在自己的程序里面执行一些运算

用程序的默认输入参数

愚见

大家一起努力学习提高...
加载更多回复(2)

64,654

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧