Fortran源自于“公式翻译”(英语:FormulaTranslation)的缩写,是一种编程语言。它是世界上最早出现的计算机高级程序设计语言,广泛应用于科学和工程计算领域。FORTRAN语言以其特有的功能在数值、科学和工程计算领域发挥着重要作用。Fortran 90之前的版本是人们所知晓的FORTRAN(全部字母大写),从Fortran 90以及以后的版本都写成Fortran(仅有第一个字母大写)。1

历史开发史

1951年:美国IBM公司约翰·贝克斯(John Backus)针对汇编语言的缺点着手研究开发FORTRAN语言。

1954年:约翰·贝克斯在纽约正式对外发布,称为FORTRANⅠ,FORTRANⅠ功能简单,但它的开创性工作,在社会上引起了极大的反响。

1957年:第一个FORTRAN编译器在IBM704计算机上实现,并首次成功运行了FORTRAN程序。

1958年:对FORTRANⅠ进行了扩充和完善,引进了子函数等概念,推出了商业化的FORTRANⅡ版本。

1962年:推出了FORTRAN Ⅳ。FORTRAN Ⅳ没有充分考虑兼容性,导致FORTRANⅡ程序不能在FORTRAN Ⅳ系统中运行,使其应用受到了很大限制,这时语言不兼容性问题和影响被突出表现出来。此前也出现过FORTRAN Ⅲ,但由于存在严重缺陷,没有在计算机上实现。

标准化

随着FORTRAN语言版本的不断更新和变化,语言不兼容性问题日益突出,语言标准化工作被提上了日程。

1962年5月:美国标准化协会(简称ANSI)着手进行FORTRAN语言标准化的研究工作。

1966年:ANSI正式公布了两个标准文本:美国国家标准FORTRAN(ANSI X3.9-1966)和美国国家标准基本FORTRAN(ANSI X3.10-1966),前者相当于FORTRAN Ⅳ,后者相当于FORTRANⅡ。基本FORTRAN是美国国家标准FORTRAN的一个子集,从而实现了语言的向下兼容,初步解决了语言的兼容性问题。通常称美国国家标准FORTRAN为FORTRAN 66。FORTRAN 66的推出在国际上产生了广泛影响。

1972年:国际标准化组织(简称ISO)在FORTRAN 66基础上制定了FORTRAN语言三级国际标准:基本级、中间级和完全级。

20世纪60代末,结构化程序设计方法提出后,具有结构化特征的程序设计语言开始出现。如:ALGOL、PASCAL、MODULA、C等。计算机厂商和研究机构的高度重视将结构化特征引入FORTRAN 66,并开始对FORTRAN 66进行不同程度的扩充,引入了结构化特征。

1976年:ANSI对FORTRAN 66(ANSI X3.9-1966)进行了修订,吸收了计算机厂商所扩充的一些具有可行性的功能,同时增加了许多新内容。

1978年4月:ANSI正式公布了新的美国国家标准(程序设计语言FORTRAN ANSI X3.9-1978),同时宣布撤消ANSI FORTRAN 3.9-1966,通常称新标准为FORTRAN 77(该版本原计划1977年公布)。FORTRAN 77向下兼容FORTRAN 66。

1980年:FORTRAN 77被ISO正式确定为国际标准ISO 1539-1980,该标准分全集和子集。FORTRAN 77推出后,由于具有结构化特征,在社会上得到了广泛应用,同时由于扩充了字符处理功能,在非数值处理领域也能大显身手。

20世纪80年代末,FORTRAN 77结构化和现代化的研究开始兴起。

1991年5月:ANSI公布了新的美国国家标准FORTRAN(ANSI 3.198-1991)。之后,ISO采纳该标准,并确定为国际标准ISO/IEC 1539-1:1991,新国际标准还采纳了中国计算机和信息处理标准化技术委员会程序设计分会提出的多字节字符集数据类型及相应的内部函数,为非英语国家使用计算机提供了极大的方便。通常称新标准为Fortran 90,Fortran 90向下兼容FORTRAN 77。之后不久又出现了Fortran 95。

Fortran 90的推出,使传统Fortran语言具有了现代气息。Fortran 2003 的规则已经由ISO组织制定发布。

平台化

Windows平台下,微软公司将Fortran 90无缝集成在Developer Studio集成开发环境之中,推出了Microsoft Fortran PowerStation 4.0,使Fortran 90真正实现了可视化编程,彻底告别了传统DOS环境(字符界面),转到了现代Windows环境(视窗界面),共享微软公司Windows平台的丰富资源。

1997年3月:微软公司和数据设备公司(Digital Equipment Corp,简称DEC)合作研究、开发和推出了功能更强的Fortran语言新版本:Digital Visual FORTRAN 5.0,它是Microsoft FORTRAN PowerStation 4.0的升级换代产品。DEC公司在高性能科学和工程计算方面拥有先进的技术,研发了高质量的FORTRAN编译器。

1998年1月:DEC与Compaq公司合并,DEC成为Compaq公司的全资子公司,于是Digital Visual Fortran更名为Compaq Visual Fortran,其最新版本为Compaq Visual Fortran 6.6。Compaq和HP合并之后,Compaq的Fortran小组和Intel的Fortran开发小组合并,开发出来Intel Fotran编译器9,有Linux和windows2个版本,其Windows版本为Intel Visual Fortran, 可以和微软的Visual Studio,net集成。Windows平台下还有PGI,Absoft,Intel等多个商业公司的Fortran编译器,还有大量小公司的免费Fortran编译器。

OpenMPI使Fortran等语言可以容易且免费的实现并行计算。

Linux平台下,其GCC编译器默认支持Fortran,另外有Intel,Sun Studio,OpenMPI,Photran等共享编译器和PGI,Absoft,lachy, IBM,SGI,HP等多个版本的商业编译器。2

基本结构

1、程序分段:一个程序由一个或若干个程序单位组成。主程序和每一个子程序分别是一个独立的程序单位。子程序是实现模块化的有效方法。

2、每一个程序单位都是以“END”语句结束。主程序段中的END语句作用是使程序“停止运行”;子程序段中的END语句是“使流程返回调用程序”。

3、一个程序有且仅有一个主程序段,可以有0个或若干个子程序段。

4、一个程序单位包括若干行。FORTRAN行分为两类:即语句行和非语句行。

其中语句行由一个FORTRAN语句组成。FORTRAN语句又可分为执行语句和非执行语句。非语句行,即为注释行。

5、FORTRAN程序的基本成份是语句。一行只能有一个语句。若一个语句太长,一行内写不下,可分写在几行上,但要用“续行标志”。

6、FORTRAN程序中语句允许有标号,以便被其他句引用。

7一个程序单位中各类语句的位置是有一定规则的。一般是非执行语句放在所有可执行语句之前。3

本词条内容贡献者为:

吴晨涛 - 副研究员 - 上海交通大学

Fortran D编译语言

图文简介

Fortran源自于“公式翻译”(英语:FormulaTranslation)的缩写,是一种编程语言。它是世界上最早出现的计算机高级程序设计语言,广泛应用于科学和工程计算领域。FORTRAN语言以其特有的功能在数值、科学和工程计算领域发挥着重要作用。Fortran 90之前的版本是人们所知晓的FORTRAN(全部字母大写),从Fortran 90以及以后的版本都写成Fortran(仅有第一个字母大写)。