MATLAB程式设计入门篇应用程式介面.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

MATLAB程式設計進階篇

應用程式介面張智星jang@.tw.tw/~jang清大資工系多媒體檢索實驗室1可整理ppt

3-1MATLAB應用程式介面應用程式介面ApplicationProgramInterface簡稱API和外部程式或其它程式語言溝通2可整理ppt

API的功能只要遵循API規範,可做到下列事項:從MATLAB呼叫C語言或Fortran語言撰寫的函數將MATLAB當成計算引擎(ComputingEngine),並從獨立的C或Fortran程式呼叫此MATLAB引擎,進行各種運算或圖形顯示以獨立的C或Fortran程式讀寫MATLAB專用的MAT檔在視窗環境,進行ActiveXAutomation,即將MATLAB視為ActiveXAutomationServer,讓其它應用程式(Excel或Access等)呼叫,或將MATLAB視為ActiveXAutomationController,呼叫視窗下其它應用程式在微軟視窗環境下,經由DDE(DynamicDataExchange)來和其它應用程式溝通並傳送資料3可整理ppt

3-2撰寫能讓MATLAB呼叫的

C函數:前置測試撰寫C函數讓MATLAB呼叫的原因MATLAB程式碼執行效率不佳,希望以C程式碼改進。常發生在MATLAB的JIT加速器無法加速您的程式碼,或是您的演算法無法改成向量化的程式碼。隱藏程式碼,保護智慧財產權。C的原始碼編譯後,變成二進位碼,MATLAB能夠呼叫,而使用者無法看到原始程式碼不想將已寫好的C程式碼改寫成MATLAB程式碼,而希望在MATLAB的環境下呼叫這些C程式碼進行其它只有在C程式能做到的事4可整理ppt

只能在C程式下完成的工作更改呼叫端之工作空間的變數產生常駐記憶體(PersistentMemory),即產生在函數結束後,仍能讓其它函數或MATLAB存取的資料結構或變數串接埠(SerialPort)資料的傳送和接收DeviceDrivers等5可整理ppt

提示使用pcode指令優點:可將一般M檔案轉換成二進制檔案達到隱藏原始程式碼的功能缺點:無法大幅提高程式碼的執行效率6可整理ppt

開始前置測試(I)選擇C編譯器編譯完成的C函數在MATLAB指令視窗內輸入mex-setup7可整理ppt

開始前置測試(II)選擇已安裝在電腦上的C編譯器8可整理ppt

開始前置測試(III)按下「Enter」鍵,會出現畫面9可整理ppt

提示lcc是Public-domain的C程式編譯器MATLAB5.x,是隨StateflowToolbox而來,MATLAB6.x,是隨MATLAB而來。執行「mex-setup」MATLAB5.x會跳出DOS視窗,MATLAB6.x不會跳出DOS視窗,都在MATLAB命令視窗完成其內容則與DOS視窗的內容大同小異10可整理ppt

開始前置測試(IV)選用微軟公司的VisualC/C++,輸入「1」後,再按「Enter」鍵最後,再按「Enter」鍵確認即可11可整理ppt

無安裝C編譯器若DOS視窗無顯示可供選擇的C編譯器電腦尚未安裝C編譯器先安裝C編譯器才能進行下一步的測試例如:MicrosoftVisualC/C++、WatcomC/C++、BorlandC等12可整理ppt

開始前置測試(V)完成選擇C編譯器的程序,可以測試C程式編譯MATLAB有一現成的C程式碼yprime.c,其位置在{MATLABroot}\extern\examples\mex\yprime.c測試之前,須將此檔案拷貝至目前目錄,才可進行測試cdD:\matlabBook\MATLAB程式設計:進階篇\03-應用程式介面copyfile([matlabroot,\extern\examples\mex\yprime.c])若執行copyfile指令時產生錯誤訊息,通常表示目前目錄下已經有yprime.c檔案13可整理ppt

開始前置測試(VI)在MATLAB指令視窗,輸入下列敘述來編譯此C程式mexyprime.cMATLAB即呼叫VisualC/C++(先前選的C編譯器)編譯yprime.c,並產生編譯的訊息若無錯誤訊息,編譯完成後,C編譯器會產生yprime.dll或yprime.mexw32可執行檔此即為MATLAB可呼叫的C函數,所在的位置可顯示如下which

文档评论(0)

192****9247 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档