请问如何将matlab的m文件转换为p文件?

请问如何将matlab的m文件转换为p文件?,第1张

生成p文件的方法很简单,在command wondow里面用 mcc -B pcode file.m命令转化为pcode文件,据说是不会被反编译的。他的缺点是不能够脱离Matlab单独运行,必须还在command window里面调用,可移植性不强。如果生成.exe文件就可以解决这个问题。

最大的可能是因为MATLAB版本

我看了这个P文件,是2.8版,对应的MATLAB版本应该是6.5或6.5.1,在我的6.5上面运行没任何问题:

>> mooncake

欢迎参加由Matlab举办的中秋博饼游戏>V<

今天是18-Sep-2013

不知道你的运气如何呢!

 

嘛,你打算做什么呢?请输入相应数字键来进行选择

1.开始博饼2.特殊规则设置3.参数设置4.博饼介绍5.关于我…0.退出

Meow :5

 

      MATLAB版中秋博饼程序

          2013年9月17日

  喵里叶变换(Mourier Transform)制作

       琪露诺的完美编程工作室

 

嘛,你打算做什么呢?请输入相应数字键来进行选择

1.开始博饼2.特殊规则设置3.参数设置4.博饼介绍5.关于我…0.退出

Meow :4

 

那么,你想了解哪些内容呢?

1.博饼简介;2.博饼起源;3.博饼规则;0.返回主菜单

Meow:1

 

    中秋博饼是闽南地区特有并文化外延的一种民俗活动。

是在中秋节时用于娱乐的一种游戏,用六粒骰子投掷结果

组合来决定参与者的奖品。传统的奖品为大小不同的月饼,

专有名为会饼,相传这种游戏可以预测人未来一年内的运

气。转载于(http://zh.wikipedia.org/wiki/博饼)

MATLAB 6.x的字符编码是系统相关的,而7.x是基于Unicode,但7.x似乎始终对多字节字符集(如中文)的支持存在问题,例如Simulink的模型中包含中文字符就导致无法保存等等。

另一个值得一提的是,P文件的格式在MATLAB 7.4(2007a)之后做了比较大的调整,尽管理论上应该是可以兼容老版本,但实际上问题会比较多。

我没有找到更好的解决办法,只能选择以下二者之一:换一个目标机上对应版本的MATLAB来重新解析生成P文件,或者,建议目标机上使用和你相同的MATLAB。

我刚看到一个答案,不知道有没有用。P 文件是对应M文件的一种预解析版本(preparsed version)。因为当你第一次执行M文件时,Matlab需要将其解析(parse)一次(第一次执行后的已解析内容会放入内存作第二次执行时使用, 即第二次执行时无需再解析),这无形中增加了执行时间。所以我们就预先作解释,那么以后再使用该M文件时,便会直接执行对应的已解析版本,即P文件。但又 因为Matlab的解析速度非常快,一般不用自己作预解析。只有当一些程序要调用到非常多的M文件时,如GUI应用程序时,才会作预解析,以增加以后的调用速度。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12047053.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存