易码技术论坛

 找回密码
 加入易码
搜索
楼主: 一捧米

[技术文章]将BAS程序简化进行到底!!!

[复制链接]
发表于 2006-10-22 00:20:25 | 显示全部楼层
这个文章不错的,要顶。

不过,凭搂主的本事,可能c语言能给你更大的天地。

毕竟缩减源代码长度只是在很极端的情况下才会做的(正如这里),大部分情况下我们还是需要执行时间和空间的效率。对于大规模程序来讲,无论如何还是清晰第一,效率第二。钻研的精神很好,不过不让这种精神有更大的作为的话实在是太可惜了。
发表于 2006-10-22 00:53:25 | 显示全部楼层
虽然是减化代码,不过LZ的贴是不是也稍微简化一下,有些晕。
而且以前在net就有类似文章了,已经记不起来是谁写的了。
发表于 2006-11-2 14:14:23 | 显示全部楼层
楼主说了大半天,其实就是一个结构化的处理方式吧!其中的一部份我也已经提过了,比如你的第一个例子!
多用gosub目的就是结构化。相当于C中的函数!
但楼主忽略了一个问题,由于文曲星的速度限制,有时程序大一点可以增加运行的质量和速度,并且使用GOSUB也会占时间占内存,不过这个无所谓,关键是用GOSUB能使程序更清析易懂,所以说,质量第一,体积第二!这是我编写游戏的原则!
可以这么说,我用LAVAX编写的第一个游戏(斗地主)其质量远没有我的第二个(五子棋)高,主要原因是“经验”,当积累到一定经验时,自己都会向结构化靠拢的!
发表于 2006-11-4 21:09:44 | 显示全部楼层
严重支持!PS:我正在编一个BASIC程序,LZ的指导让我受益颇深。顶!
发表于 2006-12-2 18:30:23 | 显示全部楼层
引用第0楼gyx0072006-10-18 13:15发表的“[技术文章]将BAS程序简化进行到底!!!”:
......
其次是NEXT的使用,来看例子:
10 FOR A=1 TO 100:FOR B=1 TO 100
20 NEXT A:NEXT B
这也是大部分新手都会犯的错误,然而我发现,不少水平还不错的程序中也会出现这种写法:
20 NEXT:NEXT
其实这样就不错了,但最简写法是这样:
20 NEXT A,B
明白了?虽然只省了一个字节,可一分钱也是钱啊
.......


我曾经遍过一个观察自身的程序来研究BASIC,发现NEXT这种关键字(eg: PRINT 、RESTORE)只占一个字节,而不是以其长度来决定占用字节数。

NEXT:NEXT 这个部分占3字节。两个 NEXT 各一字节,一个 : 以ASCII码的形式,占一个字节。

NEXT A,B 这个部分占4字节。NEXT 一字节,"A"、" ,"、"B" 以ASCII码的形式各占一字节。

所以前一种方式更简。
发表于 2006-12-7 20:19:17 | 显示全部楼层
引用第25楼windybell2006-12-02 18:30发表的“不好意思,这里好象有问题.”:



我曾经遍过一个观察自身的程序来研究BASIC,发现NEXT这种关键字(eg: PRINT 、RESTORE)只占一个字节,而不是以其长度来决定占用字节数。

.......
这里楼主说的好像主要是简化游文件长度?
发表于 2006-12-13 14:56:56 | 显示全部楼层
引用第5楼leesoft2006-10-18 14:23发表的“”:
相比程序长度,结构化更重要
好的程序应该是通俗易懂
同上。。楼主应该更关心程序结构&算法一些。而不是代码的长度。。
 楼主| 发表于 2006-12-20 16:36:47 | 显示全部楼层
真没想到这么久了还有人在讨论这个问题……感动ING……
但是,你们难道没看见我的“程序格式化模本”么?它把所有问题都解决啦~~~
发表于 2006-12-20 18:02:07 | 显示全部楼层
大家别笑
或许lz就是将来的basic大师
发表于 2007-3-9 19:24:01 | 显示全部楼层
BASIC还是很可爱的
发表于 2007-3-11 12:39:33 | 显示全部楼层
支持楼主!继续努力!
发表于 2007-6-24 18:08:20 | 显示全部楼层
好帖再看一遍也无妨!
 楼主| 发表于 2007-6-24 18:37:22 | 显示全部楼层
LS的,你真的应该再仔细读读了……
不是为我的文章做广告,但是这篇文章好象没有几个人真正理解了啊……
好失望的说……
斑竹置个顶吧~
发表于 2007-6-24 22:33:42 | 显示全部楼层
我全懂了。
 楼主| 发表于 2007-6-24 23:48:26 | 显示全部楼层
真的,谈谈感想,再作个报告吧~
发表于 2007-6-25 08:08:19 | 显示全部楼层
引用第35楼一捧米2007-06-24 23:48发表的“”:
真的,谈谈感想,再作个报告吧~
就你也有感想?
发表于 2007-6-26 09:07:20 | 显示全部楼层
No permission to view this article
看着不爽,于是顶上来。
这种方法在lava上也可以用,不过要加负号。
发表于 2007-6-27 10:54:20 | 显示全部楼层
是BASIC,LZ辛苦了。。。
发表于 2007-7-1 20:09:14 | 显示全部楼层
顶一下
bas程序是该简化了
发表于 2007-7-11 21:22:32 | 显示全部楼层
这篇文章我看了不止三遍,LZ感动吧...
要谈感想?LZ去看看我编的程序的源码吧,那就是对LZ的最好回答,我觉得。
您需要登录后才可以回帖 登录 | 加入易码

本版积分规则

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

GMT+8, 2024-4-26 14:32 , Processed in 0.012636 second(s), 16 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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