我是Fortran的新手,一般编码,所以如果我的术语不正确,我很抱歉。IEEE_UNDERFLOW_FLAG IEEE_DENORMAL Fortran 77
我正在使用gfortran编译器的Linux机器。
我在做这个夏天的研究,这涉及到我得到一个写于1980年左右的程序再次工作。它是用Fortran 77编写的。我拥有所有的代码以及一些关于它的文档。
以目前的形式,我收到“IEEE_UNDERFLOW_FLAG IEEE_DENORMAL”错误。我的第一个想法是,这个代码是为了在不同的环境/架构下开发的。
该文档声明“此程序旨在运行在HARRIS计算机系统上。如果在主代码和子程序包中单精度变量变为双精度变量,它也可以在VAX系统上运行。“
我试过将单精度变量更改为双精度变量,但我可能做错了。如果这是正确的做法,任何见解都会很棒。
我也试着用-std = legacy和-m32编译编码。我也收到同样的错误。
任何意见,让我走在正确的方向将不胜感激。
低于正常水平的产量可能是预期的。这不代表您在选择构建过程时遇到问题。 – tim18
有关切换到双精度的说明可能很重要,因为ieee754 single的属性可能并不比vax好。 – tim18
Gfortran有自动替换单人的选项。如果考虑到这一点,你应该阅读文档。 – tim18