找回密码
 马上注册

QQ登录

只需一步,快速开始

查看: 15193|回复: 22

如何让NXTG下载入NXT的程序变小?有图有真相

 火.. [复制链接]
发表于 2010-7-31 13:16:50 | 显示全部楼层 |阅读模式
今天在写一个很大个的NXTG程序……因为大个。。所以出了很多问题。。
当然最主要的就是内存。我只写了1/3就已经占用了17K的大小了。。很是担心。

之后突然想到一个问题。。NXTG的子程序是否只下载入NXT一次?之后便做了个试验……

首先写了8个BC往前的模块,载入后大小是3.7K
有图有真相1.JPG

之后将一个BC往前的模块打包(作为子程序)
有图有真相2.JPG

为了方便以后修改,这个打包(子程序)是可以调整的。可以调力量、角度和正反转
有图有真相3.JPG


最后写了8个这样的子程序,结果……
有图有真相4.JPG


2.7K!!!整整小了1K

之后用这个方法去写我的大程序,用了7-8个这种打包模块(子程序)也才增加了0.5K的闪存占用。真的很棒!

不过。。。这到底是什么原因呢?

(以下是猜测部分,未必确实如此。如有其它见解,非常欢迎提出探讨)
我猜可能是普通NXTG图标是一段程序,如果不停调用,相当于增加了很多相同的一段程序。
而子程序是由程序调用的,只下载一次,然后不停的调用。所以不会有很多同一段程序出现。

当然这个结论比较怪异= =!因为如果是这样的话,那NXTG的图标的数量应该会成倍数增长的形式来增加闪存占用……但事实不是这样。
虽然我也不知道为什么会变小。。。但真的会变小喔。。。

如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
发表于 2010-7-31 13:19:34 | 显示全部楼层
钻研 + 原创  好啊!
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2010-7-31 17:05:52 | 显示全部楼层
谢谢LZ找到了一个好方法
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2010-7-31 21:34:12 | 显示全部楼层
不错!有钻研精神!牛X!
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2010-8-1 15:18:41 | 显示全部楼层
KANKAN
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2010-9-26 15:09:20 | 显示全部楼层
子函数调用~
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2010-10-12 15:32:56 | 显示全部楼层
学习了
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2010-10-22 21:42:21 | 显示全部楼层
刻苦钻研  顶!
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2010-10-23 10:27:33 | 显示全部楼层
謝謝您的分享~~
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2010-10-28 12:01:25 | 显示全部楼层
方便、简洁、智能化,往往与性能和体积成反比,NXT-G即是如此。要想让自己的NXT程序变小或更快,建议逐步“升级”自己的编程模式,从简到繁,从NXT-G到NXC、RobotC等其他代码级编程环境。
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2010-12-30 16:22:46 | 显示全部楼层
非常有用的发现,谢谢楼主的分享。
估计自定义模块就是编程中的函数概念,只存在一次,可以多次调用。
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2011-1-7 20:35:47 | 显示全部楼层
嗯,试了一下是真的,可以节省内存,谢谢LZ!
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2011-3-7 21:51:42 | 显示全部楼层
非常棒的分享~~ 謝謝您
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2011-4-15 09:28:19 | 显示全部楼层
子程序调用,的确可以减少非常多的占用
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

发表于 2011-5-6 23:53:37 | 显示全部楼层
楼上的去死
如果您觉得我的帖子对您有用,请不吝给我一个“赞”!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

手机版|中文乐高 ( 桂ICP备13001575号-7 )

GMT+8, 2025-1-16 01:39 , Processed in 0.126406 second(s), 21 queries .

Powered by Discuz! X3.5

Copyright © 2001-2020, Tencent Cloud.

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