hrefspace

 找回密码
 立即注册
搜索
热搜: PHP PS 程序设计
查看: 446|回复: 10

编译器写了一部分,大家帮忙看看(面向过程)

[复制链接]

492

主题

492

帖子

1498

积分

版主

Rank: 7Rank: 7Rank: 7

积分
1498
发表于 2025-2-11 22:45:49 | 显示全部楼层 |阅读模式
编译器写了一部分,大家帮忙看看(面向过程)
QQ 1286236708
compiler.zip(18.17 KB, 下载次数: 123)2024-7-15 17:23 上传
点击文件名下载附件

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

0

主题

187

帖子

4

积分

新手上路

Rank: 1

积分
4
发表于 2025-2-11 22:46:47 | 显示全部楼层
“to C#”的转换器已经全部写好了(包括C#的支持类库)
(这是高级语言转高级语言的转换器,而不是编译器)

PROJECTS CSLib.zip(602.27 KB, 下载次数: 124)2024-7-26 14:53 上传
点击文件名下载附件

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

点评

海!外直播 bitly.net/ccccck 禁闻视频 bitly.net/55jjjj 据说天朝互联网大会来了50多国部长级高官,一看名单,最重要20国(G20)来了2个,最穷50国(联合国LDCs)来了19个.一群局域网用户凑在一起开世界互联网大会,笑死了   发表于 2025-2-12 04:28
回复

使用道具 举报

0

主题

188

帖子

2

积分

新手上路

Rank: 1

积分
2
发表于 2025-2-11 22:47:29 | 显示全部楼层
大家好 最近决定重构:
compiler编译出来的字节码原本是在vm里运行的,操纵内存地址
现在是编译成中间代码,在“解释器”里运行(解释器支持变量名)

然后to C#的转换器就不需要了,
改为了“商朝字母”(我发明的字,不支持unicode,有6百多字)
直接转换成C#
回复

使用道具 举报

0

主题

188

帖子

2

积分

新手上路

Rank: 1

积分
2
发表于 2025-2-11 22:48:18 | 显示全部楼层
大家好 这两天又觉得,
(支持变量名的)“解释器”的实现太过繁琐了,
所以还是在vm里运行(操纵内存地址)

----但是语法要改得简单,比如说:
if b
do f()
endif
do g()
改成
if b goto _f;
goto _f_end;
_f:
do f()
_f_end:
do g()
再比如说:
x = a + b + c +d
改成
t=a+b
s=t+c
x=s+d
再比如
ret a + b
ret f(x)
改成
t=a+b
ret t
t=f(x)
ret t
回复

使用道具 举报

0

主题

213

帖子

2

积分

新手上路

Rank: 1

积分
2
发表于 2025-2-11 22:48:49 | 显示全部楼层
大家好,这么“简化”代码受不受得了?
答案是 yes

实际的代码里,很少用到 a+b+c
一般就 a+b 就可以了

至于 g(f(x))倒是比较常用,
但是函数嵌套会降低可读性

至于 if b goto label
Basic就是这样的
回复

使用道具 举报

0

主题

197

帖子

2

积分

新手上路

Rank: 1

积分
2
发表于 2025-2-11 22:49:46 | 显示全部楼层
大家好
我打算放弃*自己*写编译器

VM和ASM早(4年前)就已经写好

以后花钱雇人写,100万日元)
(调用ASM库)

暂时先用我的VM的汇编码
回复

使用道具 举报

0

主题

173

帖子

2

积分

新手上路

Rank: 1

积分
2
发表于 2025-2-11 22:50:24 | 显示全部楼层
我又打算,继续写

因为:
看了编译原理教材,
都是语法“树”

但是我的语言没有“树”
(因为比如 x=a+b+c => t=a+b; x=t+c)

既然连树都没有,那么就简单多了,
也不需要看编译原理书了。
回复

使用道具 举报

0

主题

181

帖子

2

积分

新手上路

Rank: 1

积分
2
发表于 2025-2-11 22:50:41 | 显示全部楼层
https://bbs.gameres.com/forum.php?mod=attachment&aid=MTExODMyMHw0Yzk4YmRmNGRmYTQ4OTExZDcyMDMzYTdlYmJjOTEzMXwxNzM5Mjg4MTgx&request=yes&_f=.zip

大家好 全部写好了 编译器(C#)
(运行的话需要手工修改path,在Form1.cs里面,否则提示找不到文件路径)
回复

使用道具 举报

0

主题

181

帖子

4

积分

新手上路

Rank: 1

积分
4
发表于 2025-2-11 22:50:51 | 显示全部楼层
Simulang.rar(722.16 KB, 下载次数: 24)2024-11-3 04:20 上传
点击文件名下载附件


可执行文件,源代码,例子

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

0

主题

201

帖子

2

积分

新手上路

Rank: 1

积分
2
发表于 2025-2-11 22:51:49 | 显示全部楼层
Simulang.rar(722.18 KB, 下载次数: 15)2024-11-3 04:29 上传
点击文件名下载附件



修正一下(Bin, Source, 例子)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|hrefspace

GMT+8, 2025-2-22 16:55 , Processed in 0.078363 second(s), 23 queries .

Powered by hrefspace X3.4 Licensed

Copyright © 2022, hrefspace.

快速回复 返回顶部 返回列表