fortran95教程4章

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第2篇. 计算的叙述

算法的每一个步骤,都必须给予确切的定义。对于算法当中所

考虑的每一种情况,每一个有待执行的动作,都必须严格地和

不含混地加以规定。…对于以描述算法作为目的而设计出来

的,采用了形式的定义的程序设计语言,或者说计算机语言,

它的每一个语句都必须有非常确切的意义。

---- D.E.Knuth[1]《The Art of Computer Programming》

本质上FORTRAN就是一门语言,一门人与计算机赖以进行有效交流的语言,在这个意义上和我们使用的中文,英文等没有本质差别。现在假设要来描述一种大家都陌生的语言,那么总是要分成两个方面来描述,即一方面要描述这门语言的表象和形态,也就是它使用哪些符号,哪些词汇,一般的句式如何,怎样才能完整叙述一个任务之类;另一方面需要说明这门语言的语义,也就是说这门语言是如何用来表达我们需要它表达的意思的。

第4章基本上就是描述FORTRAN作为一种语言的基本形态,也就是书写这种语言的书写规则。

接下来几章则逐步说明如何用FORTRAN来表达我们的要求,或者反过来说,FORTRAN提供了些什么表达方式,以便我们用来向计算机提出合理的任务:

● 表达基本数据;

● 表达数据的结构;

● 完整地描述数据;

● 构造表达式;

● 驱动计算的赋值;

● 计算过程的结构控制;

在整个第二篇,我们将领略到FORTRAN 95是如何能够做到精致地描述计算的,而把一个问题阐述清楚了,就意味着问题已经解决了一大半。

[1]Donald E. Knuth (高纳德),Stanford University的The Art of Computer Programming荣休教授,而The Art of Computer Programming(计算机程序设计技巧)正是他的伟大著作的名称。洋洋七大卷的《The Art of Computer Programming》是当今全世界每一个计算机科学家所膜拜的圣经。1974年在该书刚完成前面很少一部分时,就给他带来了计算机科学家们梦寐以求的图灵奖。

第4章FORTRAN 95语言的形貌

要说明一门语言的形态,必须回答以下问题:

●它使用哪些符号来表达信息?

●它的词汇如何构成?

●它的语句如何构成?

●如何表达一个完整的任务?

具体的对于一门计算机语言,把这几个问题更加明确地转换过来,就是:

●它使用键盘上的哪些符号,各个符号有哪些用途?

●它的词汇如何由键盘字符构成?含有哪些固定的词汇?以及容许自由构成合法词汇

的规则是什么?

●它具有哪些固定的语句格式?以及容许自由构成合法语句的规则是什么?

●我们交待给计算机的任何任务,都必须明确说明任务的开始,执行步骤和完成,因

此一段完整的源代码应该具备什么样的形式?以及应该具备哪些要素?

本章就是要回答这些问题。

4.1 FORTRAN语言所使用的字符

从最抽象的层面来看,人与计算机的交流只是信息的交流,而信息总是需要依靠某种信号来表示,对于人来说,最方便的就是字符。而对于计算机来说,自然就是键盘所能敲出的那些字符(信号),因此下面就是要说明:

●FORTRAN 95能识别键盘上敲出的哪些字符?

●每个字符对于FORTRAN 95来说又意味着什么?

4.1.1 FORTRAN 95所使用的基本字符

按照FORTRAN 95标准的规定,一切FORTRAN 95的实现平台都必须使用下面表4-1所列出来的这个基本的字符集,或者说,这个字符集是所有遵循FORTRAN 95标准的编译

器所使用的字符集的公共子集。这样原则上,局限在这个字符集上的源码是能够被任何遵循FORTRAN 95标准的编译器所识别的。

表4-1基本的FORTRAN 95字符集:

文字字符

英文字母 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

数字0 1 2 3 4 5 6 7 8 9

可以看到基本字符分为两大类:文字字符和特殊字符。除了货币符号可以本地化之外,其他任何字符都必须依照表里的形式。

对于基本字符有如下几个问题需要予以注意。

一.文字字符的用处:

●主要是命名的作用,可以用来命名语言中的一切对象,这三种符号可以混合使用;

●其中数字还具有它本来的含义,就是表示数目。

二.特殊字符的用处:

特殊字符主要具有功能的意义,如编辑功能,运算功能,语法功能等。

FORTRAN 95标准原则上接受小写字母。因此除了以下位置,大小写是等价的。

三.大小写必须区分的位置:

●作为字符常量的字符串里面;

●输入输出的纪录里面;

●作为编辑描述符的引号或撇号里面。

因为在上述几种情形,大小写是字符型数据的不同数据取值。

如果不幸遇到一个FORTRAN 95标准的怪异的编译平台,偏偏不接受小写字母,这是FORTRAN 95标准所许可的,这时就得小心了。不过幸好我们常用的编译平台,例如CVF,都是接受小写字母的。

另外,在OPEN或者INQUIRE语句里面的FILE=或NAME=后面是否区分大小写,也是由编译平台指定的。

如果是需要调用其他语言写的子程序,而恰好该种语言(例如C语言)是区分大小写的,这时就需要特别小心。

【例4-1】如果用C写了两个子程序EIGEN和eigen,然后有如下的FROTRAN片断:

EXTERNAL EIGEN

...

CALL EIGEN

...

END

这时它是该引用EIGEN还是eigen呢?如果所使用的FROTRAN系统正好是怪异的那种,没问题。如果是常见的如CVF,这时它就无法区分EIGEN和eigen,这样就必须给它们更换名称了。

四.数字的涵义:

除了以下情形,数字总是表示十进位数字

●属于二进制,八进制,十六进制的字面常量;

●带有B,O,Z编辑描述符的输入输出纪录。

【例4-2】以下语句当中的数字不是属于十进位数字:

DATA I, J, K / O‟1001‟, 23.54, Z‟5CA2‟ /

其中第一个为八进制数,第二个为十进制数,第三个为十六进制数。

五.下划线的涵义:

●下划线的主要作用就是置于单词之间代替空格,使得我们在命名时使用清楚的英语

词汇。

●下划线不能置于任意名称的前面,但是可以置于名称的最后。

●下划线也用于在字面常量中区隔常量的值和种别参数。

无论给什么对象起名,都尽量使用完整的英语单词,同时使用下划线以区隔不同的单词。所谓好记性不如烂笔头,只有这样才能切实保证你在任何时候,在程序代码的任意位置都知道任意变量等的含义。

4.1.2 与平台有关的FORTRAN辅助字符集

上节列出的基本字符集是在一切FROTRAN的编译平台都可以使用的,被FORTRAN 95标准规定为必须使用的默认字符集。另外还有些辅助的字符则是不同的平台有不同的用法约定。

辅助字符分两类:可打印字符和不可打印字符。

●可打印字符;

各种本地化语言的字符,象汉字,希腊字母等,都可以应用在字符串,注释,和输入输出纪录当中。

●不可打印字符。

主要就是控制字符,例如制表符Tab键。

制表符(Tab键)在FORTRAN77标准当中主要用来表示6个空格,这样在固定源程序形式的代码的每行的开头使用Tab,就自动地空出6个空格。

相关文档
最新文档