第1章 Fortran背景知识_第1页
第1章 Fortran背景知识_第2页
第1章 Fortran背景知识_第3页
第1章 Fortran背景知识_第4页
第1章 Fortran背景知识_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

工程分析程序设计任课教师:刘小liuxm@工程馆3楼程序设计概述课程设置的目的了解和掌握用计算机解题的思路与方法编程技术的入门及其推广VB,VC,VF,C++课程的特点掌握基本的编程技术记住最基本的语句和语法边学边用,边用边学上机实习是重点,是需要大家重视的环节课程考试考试成绩:平时成绩+考试卷面成绩平时成绩(20%):课堂表现;上机作业

考试(80%):笔试(程序操作规则、阅读程序能力、程序编写能力)上机

以班级为单位,人守一台,计算机教学中心,第4周开始(班长联系,并由机房管理人员安装软件)第一章Fortran背景知识本章主要内容:

1.Fortran语言简史

2.Fortran90/95语言特点

3.VisualFortran编译器的演变

计算机语言和软件系统低级语言机器语言—采用二进制代码优点:快、直接;缺点:繁琐,直观差,极不方便。汇编语言—采用助记符代替二进制代码

一条符号语言指令对应一条机器指令。高级语言(面向问题)—不依赖机器,易学易懂。

高级语言的一条语句(指令)对应若干条机器指令如:BASIC、FORTRAN、PASCAL、C等等计算机语言和软件系统高级语言(面向对象)

如:VB、VC、MATLAB、CAD、Java、Delphi

高级语言不能为计算机直接接受,必须翻译成机器指令。其中,将高级语言程序(源程序)转换为机器语言程序(目标程序)的工作由“编译程序”来完成。高级语言程序机器指令目标程序计算结果编译程序(预先存入电脑)编译执行FORTRAN的优势相比其他语言,FORTRAN具有以下优点:

1.近50年的丰富积累,资源不浪费,对原有程序向下兼容。而C语言与Matlab才20多年2.FORTRAN书写和语法要求严格,更适合于严谨的科学计算。而C对数组不提供越界检查,容易出错,而且不容易查出3.FORTRAN90~95可以直接对矩阵和复数进行运算。而C语言则要用多重循环如:C=A+B在并行计算中独领风骚。如:深蓝、银河4.FORTRAN是一种编译语言,运行速度快;而Matlab则是类似Basic的解释语言FORTRAN(IBMFORmulaTRANslation)即公式翻译语言1.FORTRAN语言的产生1953年,JohnBackus成立研究小组,针对IBM704计算机编程;1954年,开发了编程语言规范,IBMMathematical

FormulaTranslationSystem(FORTRAN);1956年,FORTRAN语言的第一个编程指南发布;(FORTRANI)

具备当今FORTRAN标准的基本结构,如允许浮点运算、数组说明、DO循环控制结构及输入输出语句等。第一节Fortran语言简史Fortran语言发展简史2.FORTRAN版本的演变

FORTRANⅡ1958年,研究小组公布FORTRANⅡ。主要改进如下:允许复型与双精度浮点运算、子程序定义机制、输入输出的格式说明等,加强了程序诊断功能。FORTRANⅢ

在开发FORTRANⅡ的同时开始FORTRANⅢ的设计。主要改进如下:允许布尔表达式、函数和子例程名可以作为参量传递,允许处理字母数字数据等,允许符号指令(与机器特征相关)和FORTRAN语句混合使用。FORTRANⅣ

FORTRAN66,FORTRANⅡ的改进版本,融合了FORTRANⅢ的新特征,得到

FORTRANⅣ

,1962年,在IBM7030计算机上得以实现。

美国标准协会于1966年3月公布了两个美国标准文本:1.标准FORTRAN(X3.9-1966);

2.标准基本FORTRAN(X3.10-1966)。

1972年,国际标准化组织(ISO)接受美国标准,公布了ISOFORTRAN标准,共分为三级:

1.完全的(一级)FORTRAN;

2.中间的(二级)FORTRAN;

3.基本的(三级)FORTRAN。FORTRAN77

美国标准化协会在对FORTRAN(X3.9-1966)修订的基础上,1977年通过定名为FORTRAN77的FORTRAN标准。1980年,FORTRAN77被接受为国际标准。FORTRAN77重要改进如下:扩充字符处理功能,适用于非数值运算行领域;增加块IF语句、ELSE语句、ENDIF语句等,程序趋于结构化,可读性加强;增强输入输出的功能和文件处理能力;兼容性强。FORTRAN90

1990年3月,ISO和ANSI双重批准了Fortran语言的最新国际标准,定名为Fortran90。此时Fortran90已经是具有强大数值计算能力的现代高级语言,程序的书写更趋结构化、模块化。

与此同时,计算机也开始进入了快速的发展阶段。程序语言的发展必须要有相应的计算机硬件的支持。FORTRAN90Fortran90对FORTRAN77的主要扩充有:

(1)自由形式的源程序形式;

(2)模块化数据与过程定义机制;

(3)从六种内部数据类型中派生出用户定义的数据类型;

(4)数组操作机制;

(5)指针机制,允许创建与操作动态数据结构;

(6)数据类型参数化,允许使用多种字符类型;

(7)过程的递归调用机制;

(8)附加的控制结构,如do…enddo,dowhile等。HighPerformanceFortran(HPF)

1993年,由工业界和学术界联合组成的机构-高性能Fortran论坛推出一种新的Fortran语言标准-高性能Fortran(HPF)。HPF的目标是为Fortran语言定义一组语言扩充标准,以支持:(1)数据并行程序设计;(2)能在非一致存储访问开销的SIMD或MIMD计算机上获得最高性能;(3)程序代码便于在不同体系结构的计算机间移植。HighPerformanceFortran(HPF)

HPF对Fortran90的主要扩充:(1)数据分布特性;(2)并行语句;(3)在HPF定义中包括一个HPF子集。Fortran95

1995年完成,在Fortran90的基础上,吸收HPF并行运算的优点,提高Fortran90语言在并行任务中的表达和计算能力,完善派生类型、指针、数组等要素的相关语法;Fortran2003

2004年,在ISO、IEC联合工作组JTC1/SC22/WG5以及美国Fortran委员会NCITS/J3共同努力下,推出Fortran2003标准;(完整面向对象机制、灵活的语法特征、统一的接口标准)第二节Fortran语言的特征Fortran语言的最大特性是接近数学公式的自然描述,在计算机里具有很高的执行效率。易学,语法严谨,易查错。可以直接对矩阵和复数进行运算。自诞生以来广泛地应用于数值计算领域,积累了大量高效而可靠的源程序。很多专用的大型数值运算计算机针对Fortran做了优化。广泛地应用于并行计算和高性能计算领域。Fortran90,Fortran95,Fortran2003的相继推出使Fortran语言具备了现代高级编程语言的一些特性。Fortran90/95新的语言特征Fortran90/951自由书写格式

行中的位置没有特殊意义;没有保留列;尾部可以出现注释;空格在某些情况下是有意义的;……2模块

模块(程序单元),包含数据、例程、例程接口等及相关要素的声明;3自定义(派生)数据类型和操作符

允许从固有数据类型和派生类型中定义新的数据类型;Fortran90/954数组功能加强

固有操作符和相关的固有函数可以直接操作整个数组或数组段;能够创建和使用多维数组,支持数组运算;5例程重载6指针

指针允许动态访问和处理数据,可以用来创建动态数组和派生类型的动态数组结构;Fortran90/95新的语言特征Fortran90/957递归关键字RECURSIVE添加在例程(FUNCTION或SUBROUTINE)原型中,例程可以实现递归;8接口块

1)描述外部例程或虚参例程的接口;

2)为重载的例程规定统一的名称;

3)定义或扩展操作符等。9封装机制

类似于C++中的类,将派生类型数据连同其操作例程封装在模块内,通过其公有接口,供别的程序单元使用,扩展Fortran功能,有利于程序开发,提高计算效率;Fortran90/95新的语言特征Fortran95独有1FORALL语句和构造

FORALL语句和构造提供了一种数组操作方式,允许通过元素下标对数组元素、数组段、字符字串进行操作;

FORALL构造可以使几个数组赋值语句共享相同的小标循环控制表达式,类似于隐式DO循环;

FORALL是WHERE的一般形式,通过隐式循环对数组进行操作;

FORALL是针对元素下标,WHERE则针对整个数组。2PURE用户定义例程

在用户定义的例程(子程序或函数)原型前加PURE关键字,向系统声明该用户定义例程没有负作用。Fortran953ELEMENTAL用户定义例程

在用户定义例程原型前加ELEMENTAL关键字,是PURE例程的特殊形式,但是需要在调用程序中建立其接口块。4CPU_TIME子程序

通过参数返回特定CPU处理器的时间,单位为秒。5NULL函数

NULL函数直接初始化指针为空指针。国内使用较多的Fortran编译器或可视化集成开发环境为VisualFortran,起源于Microsoft的FortranPowerStation4.0;这套工具后来卖给Digital公司继续开发第二个版本称为DigitalVisualFortran5.0;第三节VisualFortran编译器1998年,Digital被Compaq并购后,接下来的6.0、6.1、6.5和6.6版本称为CompaqVisualFortran;到目前为止,VisualFORTRAN的最新版本为2001推出的CompaqVisualFORTRAN6.6。Compaq也不再开发Fortran,CVF6.6C成为最终的版本。Compaq的Fortran开发小组投入Intel旗下;Compaq被HP公司收购。VisualFortran虽然没有集成可视化开发环境,但它可以嵌入到DevelopStudio.NET集成开发环境中。CompaqVi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论