易码技术论坛

 找回密码
 加入易码
搜索
楼主: yan

[原创](文曲星端 lav版)LAVAX1.0编译器-横空出世

[复制链接]
发表于 2005-8-23 18:59:00 | 显示全部楼层
以下是引用leesoft在2005-8-23 16:51:00的发言:[BR]电脑上写源码太累了?
为什么?

我已经连干好几个晚上了,不是不能集中经精力思考就是,没耐性熬夜,写写就想睡了
嗨,没有白天在学校自习课上写的快而轻松啊
TC800的快出个文本编辑啊!!!
要不这个反编译程序对TC800来说还有多少用?
发表于 2005-8-23 19:10:00 | 显示全部楼层
用 山尘(SHARP_APPLE)  的围棋程序试了下,编译通不过。
发表于 2005-8-23 19:17:00 | 显示全部楼层
太感谢了,我在学LAVA这对我太有帮助了
发表于 2005-8-24 13:49:00 | 显示全部楼层
是呀!我编译的程序 2节课都没翻译出来
发表于 2005-8-24 16:18:00 | 显示全部楼层
……看来暂时我不试验时空的lav源码了。

作者加油!已经迈出伟大的一步了,继续吧~~^_^
发表于 2005-8-24 16:52:00 | 显示全部楼层
BUG:
对a=b=1 这种赋值方式编译出来的代码不对。
发表于 2005-8-24 19:36:00 | 显示全部楼层
可不可以搞一个lava8k的啊 ???
照顾一下我的pc2300
功能少点没关系啊~
谢谢~~
emskynet 该用户已被删除
发表于 2005-8-25 11:50:00 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
发表于 2005-8-25 12:57:00 | 显示全部楼层
这种东西的确创造了奇迹~
很好啊~
不过,现在看来还有不少BUG和错误。
迫切希望楼主改正。
期待正式版。
 楼主| 发表于 2005-8-25 15:29:00 | 显示全部楼层
Y1.01版的LAVAX1.0编译器已基本解决星迷找到的bug。[一在顶楼更新]
但是对JAY同学的源码该编译器还是无法通过。
原因:reutrn语句有return exp,reutrn(exp)两种书写方法对于return exp这种类型的写法,由于预处理系统的特殊性使得本软件要求exp的第一个字符不能是符号,例如return -5;是错误的,正确的写法是return(-5); 注释:exp是'表达式'.
 楼主| 发表于 2005-8-25 15:34:00 | 显示全部楼层
以下是引用Eastsun在2005-8-23 17:54:00的发言:[BR]这个软件很XX的说,呵呵
是不是目前还不条件编译?我写了个程序测试了一下:
//test........
#define  DEBUG 1
void main()
{
#ifdef DEBUG
   printf("debug..");
#else
   printf("test..");
#endif
   getchar();
}
//end
但编译出来的程序运行却是


问题已解决!还有MrBlackOx的“pacmgr 连头都过不去”也已解决。不过用数字也可以(都是我分析不全面^_^)另外a=b=c;的问题也弄好了。
 楼主| 发表于 2005-8-25 15:38:00 | 显示全部楼层
以下是引用Eastsun在2005-8-23 19:10:00的发言:[BR]用 山尘(SHARP_APPLE)  的围棋程序试了下,编译通不过。[upload=txt]viewFile.asp?ID=4076[/upload]

此问题是因为程序对结构体数组支持不好引起的。Y1.01版已经重新写了变量处理系统,用新的方式存储结构体和共用体。已能成功编译。
 楼主| 发表于 2005-8-25 15:44:00 | 显示全部楼层
以下是引用haydn在2005-8-24 13:49:00的发言:[BR]是呀!我编译的程序 2节课都没翻译出来

有这么夸张吗,我用nc2600编译星易-我的文曲星 2.0也才25分5秒。[目前我编译过的时间最长记录。(吃饭前开始编译,吃完后才编译好的^_^)]
 楼主| 发表于 2005-8-25 15:54:00 | 显示全部楼层
Y1.01版目前已编译通过以下源程序:
珠宝奇侠(13.2k),星易-我的文曲星 2.0(53.2k),五虎(15.2k),山尘围棋(24.0k),空当接龙(15.0k),扑克21(22.6k),博士失踪记(43.9k[稍加修改过]),暗棋(47.8k).
其中:时空引擎,reader2_27,crazyball,勇者斗恶龙等由于系统内存不够,无法编译,但预处理系统正常通过。
 楼主| 发表于 2005-8-25 16:06:00 | 显示全部楼层
以下是一些文曲星编译程序是所需的时间:(统计一下,大家也自己统计统计)
TC800:山尘(24.0k)--5分14秒,五虎(15.2k)--2分14秒,扑克(22.6k)--3分32秒
      星易(53.2k)--7分55秒,珠宝(13.2k)--2分08秒,接龙(15.0k)--3分44秒
      博士失踪记(43.9k)--7分11秒
NC2600:星易(53.2k)--25分5秒,五虎(15.2k)--7分08秒,珠宝(13.2k)--6分2秒
其余的还未测试。
我这里的源代码已基本测试过了,其他的就要靠星迷了。
 楼主| 发表于 2005-8-25 16:22:00 | 显示全部楼层
Y1.01版最大的更新是变量处理系统(编写了一天的时间,好累^_^)
代码大大缩减,解决了n个bug,Y1.01版已完成了对结构体和共用体的识别,存储方式,引用方式(共用体占不支持)。
用Y1.01版编译,你可以在文本中定义全局结构体或函数内部的结构体并且结构体之间可以互相嵌套使用(复杂类型)[突破点]
比如:
struct HE
{char a;
char b[20];
int d;
};
struct OI
{char ie;
int se;
struct HE ye;
};
struct OI soe;
void main()
{struct IY
{char ow;
  int woei;
   long sei;
};
struct IY seor;
...........
}
 楼主| 发表于 2005-8-25 16:25:00 | 显示全部楼层
定义的结构体或共用体也可以“缩写”
如:
struct
{char e;
int edg;
char owe[20];
}yweo;
但不支持赋值,[以后可以增加]
发表于 2005-8-25 16:35:00 | 显示全部楼层
这个程序都编不过去啊!看看吧!(发出来会少很多东西,发文件了)
 楼主| 发表于 2005-8-25 17:30:00 | 显示全部楼层
不好意思,我的代码写错地方了,现在已更正。[已在顶楼更新过了]
感谢你的支持!
发表于 2005-8-25 18:05:00 | 显示全部楼层
能不能把写程序的功能整和在一起呢?
您需要登录后才可以回帖 登录 | 加入易码

本版积分规则

Archiver|手机版|小黑屋|EMAX Studio

GMT+8, 2024-4-26 08:06 , Processed in 0.010800 second(s), 16 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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