火星上的C语言 [英] The C language on Mars

查看:58
本文介绍了火星上的C语言的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

几个星期前有一个关于C语言的讨论

死,据我所知,Tisdale先生是NASA的一名员工,

参与告诉我们他正在等待C程序员

死掉。


我最近开始浏览MER分析师笔记本

http://anserver1.eprsl.wustl.edu/)。 MER代表火星勘探

罗孚,美国宇航局派往火星的两艘宇宙飞船。


在活动日志中我们找到如下行:


232命令2004-114T16:32:45.289 136010002.844

2004-115T05:32:15.245 88025

RUN_SEQ已完成,状态= 0。

来自引擎2的顺序命令编号3;序列号s0881,

版本0(seq_engine.c:3482)

^^^^^^^^^^^^^^^^^


是,seq_engine.c Tisdale先生。


在其他报告中我们发现:

fme_class.c:3002 mrf_class.c:2724 cmd_dispatch.c:269

seq_controller.c:902 init.c:646

sapp_nate_mode_commander.c:274

vsbm_activities.c:247 sapp_iit.c:321

dwn_sbd.c:799 uhft.c:936 cbm_window.c:1410

use_measurement_set.c:464 fme_class.c:3012


整个软件太空船在C中。


有充分的理由,Tisdale先生。

There was a discussion some weeks ago about the C language
being "dead", where Mr Tisdale, as far as I know a NASA employee,
participated telling us that he is waiting for C programmers
to die off.

I have recently started to browse through the "MER analyst notebook"
(http://anserver1.eprsl.wustl.edu/). MER stands for Mars Exploration
Rover, the two spaceships that NASA sent to Mars.

In the logs of the activity we find lines like:

232 command 2004-114T16:32:45.289 136010002.844
2004-115T05:32:15.245 88025
RUN_SEQ completed with status = 0.
Sequenced Command Number 3 from Engine 2; Sequence ID s0881,
version 0 (seq_engine.c:3482)
^^^^^^^^^^^^^^^^^

Yes, "seq_engine.c" Mr Tisdale.

In other reports we find:
fme_class.c:3002 mrf_class.c:2724 cmd_dispatch.c:269
seq_controller.c:902 init.c:646
sapp_nate_mode_commander.c:274
vsbm_activities.c:247 sapp_iit.c:321
dwn_sbd.c:799 uhft.c:936 cbm_window.c:1410
use_measurement_set.c:464 fme_class.c:3012

The whole software of the spaceships is in C.

And for good reasons, Mr Tisdale.

推荐答案

jacob navia写道:
jacob navia wrote:
宇宙飞船的整个软件都在C中。
The whole software of the spaceships is in C.




NASA就像军队一样,非常昂贵耗时测试

并批准使用的语言,因为所需的高完整性。我没有惊讶他们有一个保守的政策要改变。


我一直记得经典的FORTRAN系列让他们花费了航海家的空间

火星任务当有一条线说: -


FOR I = 1.4


它本应该读的: -


FOR I = 1,4

并且编译器未能将其作为警告或错误提取。


昂贵的期间那个!



NASA is like the military, it is very expensive and time consuming to test
and approve a language for use due to the high integrity required. I am
not surprized they have a conservative policy to change.

I always remember the classic FORTRAN line that cost them the voyager space
mission to mars when there was a line which said :-

FOR I=1.4

when it should have read :-

FOR I=1,4

and the compiler failed to pick it up as a warning or error.

an expensive "period" that !


john blackburn< jo ********************* @ lintonhealy.co.uk>潦草地写道:
john blackburn <jo*********************@lintonhealy.co.uk> scribbled the following:
jacob navia写道:
jacob navia wrote:
宇宙飞船的整个软件都在C中。
The whole software of the spaceships is in C.


NASA就像军队一样,它是由于所需的高完整性,测试
和批准使用语言非常昂贵且耗时。我并不惊讶他们有一个保守的改变政策。
我一直记得经典的FORTRAN系列让他们花费航海家空间对火星的任务当有一条线说: -
FOR I = 1.4
当它应该读: -
FOR I = 1,4
,编译器未能将其作为警告或错误提取。
昂贵的期间那个!

NASA is like the military, it is very expensive and time consuming to test
and approve a language for use due to the high integrity required. I am
not surprized they have a conservative policy to change. I always remember the classic FORTRAN line that cost them the voyager space
mission to mars when there was a line which said :- FOR I=1.4 when it should have read :- FOR I=1,4 and the compiler failed to pick it up as a warning or error. an expensive "period" that !




如果我没记错的话,那里的那一行将浮动的

点值1.4分配给一个名为FOR的变量I" (没有引号)。

而应该在那里的行就像C for循环

for(I = 1; I< = 4; I ++)。

相当奇怪的语言,Fortran ...


-

/ - Joona Palaste(pa *** **@cc.helsinki.fi)-------------芬兰-------- \

\ ------- -------------------------------------------------规则! -------- /

"''所谓的''意味着'''这有很长的解释,但我没有

时间在这里解释一下。''"

- JIPsoft



If I remember this right, the line that was there assigned the floating
point value 1.4 to a variable named "FOR I" (without the quotes).
Whereas the line that should have been there was like the C for loop
for (I=1; I<=4; I++) .
Quite a strange language, that Fortran...

--
/-- Joona Palaste (pa*****@cc.helsinki.fi) ------------- Finland --------\
\-------------------------------------------------------- rules! --------/
"''So called'' means: ''There is a long explanation for this, but I have no
time to explain it here.''"
- JIPsoft


john blackburn< jo *********** **********@lintonhealy.co.uk>写道:
john blackburn <jo*********************@lintonhealy.co.uk> writes:
jacob navia写道:
jacob navia wrote:
宇宙飞船的整个软件都在C中。
The whole software of the spaceships is in C.



NASA是与军队一样,由于所需的高完整性,测试
和批准使用语言是非常昂贵和耗时的。我并不感到惊讶,他们有一个保守的改变政策。

我一直记得经典的FORTRAN系列,这使他们成为航海家的空间。说: -

FOR I = 1.4

什么时候应该读: -

FOR I = 1,4

昂贵的期间。那个!



NASA is like the military, it is very expensive and time consuming to test
and approve a language for use due to the high integrity required. I am
not surprized they have a conservative policy to change.

I always remember the classic FORTRAN line that cost them the voyager space
mission to mars when there was a line which said :-

FOR I=1.4

when it should have read :-

FOR I=1,4

and the compiler failed to pick it up as a warning or error.

an expensive "period" that !




< OT>


错误的语法,错误的错误,错误的航天器,错误的星球。除了

之外,它基本上是正确的。


有问题的Fortran bug涉及DO循环。正确的语法是:


DO 10 I = 1,10


一个错字如:


DO 10 I = 1.10


被解析为赋值声明:


DO10I = 1.10


传说这个错误导致失去了Mariner探测器。事实上,由于手写的指导方程中的错误,Mariner I Venus探测器丢失了。在Project Mercury上,DO10I错误确实出现在大约

;在它导致

出现任何实际问题之前,它已得到纠正。


详情请参阅alt.folklore.computers常见问题解答

< http://members.chello.at/theodor.lauppert/computer/afc-faq.htm> ;;

见问题III.1。


< / OT>


-

Keith Thompson(The_Other_Keith) ks***@mib.org < http://www.ghoti.net/~kst>

圣地亚哥超级计算机中心< *> < http://users.sdsc.edu/~kst>

我们必须做点什么。这是事情。因此,我们必须这样做。



<OT>

Wrong syntax, wrong bug, wrong spacecraft, wrong planet. Apart from
that, it''s essentially correct.

The Fortran bug in question involves a DO loop. The correct syntax is:

DO 10 I = 1,10

A typo like:

DO 10 I = 1.10

is parsed as an assignment statement:

DO10I = 1.10

The legend is that this bug caused the loss of a Mariner probe. In
fact, the Mariner I Venus probe was lost due to an error in a
hand-written guidance equation. The DO10I bug did show up at about
the same time on Project Mercury; it was corrected before it caused
any real problems.

The details are in the alt.folklore.computers FAQ at
<http://members.chello.at/theodor.lauppert/computer/afc-faq.htm>;
see question III.1.

</OT>

--
Keith Thompson (The_Other_Keith) ks***@mib.org <http://www.ghoti.net/~kst>
San Diego Supercomputer Center <*> <http://users.sdsc.edu/~kst>
We must do something. This is something. Therefore, we must do this.


这篇关于火星上的C语言的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆