VC与Fortran混合编程及其在大地电磁测深中的应用.pdf
《VC与Fortran混合编程及其在大地电磁测深中的应用.pdf》由会员分享,可在线阅读,更多相关《VC与Fortran混合编程及其在大地电磁测深中的应用.pdf(4页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第22卷第1期2000年2月物探化探计算技术Vol122 No.1Feb.2000COM PU T I NGTECHN I QU ESFORGEOPHYSICALANDGEOCHEM ICALEXPLORAT I ON收稿日期:1999-10-13文章编号:10011749(2000)01008204VC与Fortran混合编程及其在大地电磁测深中的应用肖晓玲1,卢正鼎1,张翔2(11 华中理工大学 计算机科学与技术学院,湖北 武汉430074;21 江汉石油学院 地球物理勘探系,湖北 荆州434102)摘要:Fortran语言是目前流行较广的适用于科学计算的高级语言,VC(V isual C
2、)更擅长图形系统的开发。因此,在开发交互式解释系统软件时,常常将VC与Fortran进行混合语言编程。目前,大地电磁测深的资料处理与正、反演软件都是用Fortran语言编写的,为了避免资源的浪费,提高大地电磁测深的资料处理与解释系统的开发效率,在开发大地电磁测深一维交互式解释系统时,对大地电磁测深中的计算部分仍用现有的Fortran程序,对有关的界面与图形系统的开发部分用VC语言来编写。关键词:Fortran;VC+;混合语言;编程;大地电磁测深中图分类号:TP31111;P63113+25文献标识码:AM IXED-LANGUAGE PROGRAMM INGOF VC AND FORTRAN
3、 AND ITSAPPL ICATI ON INMAGNETOTELLURIC SOUND INGX I AO Xiao2ling1,LU Zheng2ding1,ZHAN G Xiang2(11H uazhong U niversity of S cience&T echnology,W uhan,H ubei430074,China;21J ianghan Petroleum Institute,J ingzhou,H ubei434102,China)Abstract:Fortran is a w ide2used high2level language for scientific c
4、omputation and VC ismore adaptivefor development of graphics,so Fortran and VC m ixed programm ing are needed when developing the in2teractive interpretive program s.A t present,both the M T forward and M T inversion program s are de2veloped in Fortran language.To avoid wasting resource and improve
5、developing efficiency ofM T soft2ware,the computation parts come from existing fortran codes and the interface and graphics parts arecoded in VC language.In such a way the 1D interactive interpretive system ofM T has successfully beendeveloped.Key words:fortran;VC;m ixed programm ing;magnetotelluric
6、 soundingFortran语言是目前流行较广的适用于科学计算的高级语言,具有标准化程序高,便于程序交换,较易优化,拥有高精度的数据结构与运算结构。但Fortran是一种面向过程的语言,它在实现人机对话、交互处理方面是很不理想的,虽然Fortran 90也提供了面向对象的思想和实现方法,但它界面不够美观,图形处理功能欠缺,在实现人机对话、交互处理远不如其它面向对象语言方便。V isual C+更擅长图形系统的开发,与硬件底层打交道便显示出它的强大优势。目前,V isual C+成为W indow s系统平台上最强大的应用程序开发系统。因此,在开发交互式解释系统时常常将VC与Fortran语
7、言进行混合编程。现有的大地电磁测深中的大部分处理程序都是用Fortran语言编写的,其运行于DOS平台。本文拟在将VC与Fortran语言进行混合编程,并使其在大地电磁测深一维解释系统中进行了实现。通过利用大地电磁测深一维解释正演中现有的Fortran代码,结合VC+强大的界面功能,开发了大地电磁测深一维交互式解释系统的正演部分。1VC与Fortran混合语言编程1、2、3混合语言编程是采用两种或两种以上的编程语言组合编程,彼此相互调用,进行参数传递,共享数据结构及数据信息,从而形成一种程序实体的过程。对于M icrosoft公司开发的语言开发环境而言,在Fortran与VC之间进行混合语言编
8、程是完全可以实现的,但必须全面考虑混合语言之间调用约定、变量传递及命名规范等接口问题。即在混合语言编程中调整调用约定,调用约定确定程序如何调用过程、参数,如何传递以及命名规范。一般来说,调用约定从五个方面影响编程:(1)调用程序使用调用约定将参数传递到被调过程的顺序,被调程序通过调用约定确定从调用程序接受参数的顺序。32位VC和Fortran都是按从左到右的顺序传递参数。(2)调用程序和被调用程序用调用约定来确定谁在被调用程序执行结束后调整堆栈,可以通过C和STDCALL的属性来指定这些约定。(3)调用程序和被调用程序用调用约定来确定是否采用可变数量的参数进行调用,可以通过C和STDCALL属
9、性来指这些约定。(4)调用程序和被调用程序用调用约定来确定采用值方式(传递参数值)还是采用引用方式(传递地址)来传递参数,可以通过VALU E或REFERENCE来设置这些约定。(5)调用程序和被调用程序调用约定为过程名建立命名约定。利用AL I A S属性,无论FORTRAN程序中被调用的过程名是什么,都可以在动态连接库中建立任何可被外界程序调用的过程名。可以通过C和STDCALL属性来指定命名约定。111Fortran与VC之间调用约定在VC与Fortran语言混合编程时,两者之间的函数调用一般采用C与STDCALL调用约定。在C的调用约定中,调用程序经常在被调用程序返回控制之后立即调整堆
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VC Fortran 混合 编程 及其 大地 电磁 测深 中的 应用
限制150内