热门问题
时间线
聊天
视角

JOVIAL

来自维基百科,自由的百科全书

Remove ads

JOVIAL,是一種高級編程語言,基於ALGOL 58,主要針對嵌入式系統開發。JOVIAL包含ALGOL標準所沒有的一些特點,如記錄、記錄數組、內聯匯編等。JOVIAL是1960年代至1970年代主要的系統程式語言英語system programming language[2]

事实速览 編程範型, 語言家族 ...
Remove ads

歷史

Thumb
JOVIAL(J73)語言的計算機編程手冊

JOVIAL是「Jules Own Version of the International Algorithmic Language.」(朱爾斯自己版本的國際算法語言)一語的縮寫。[3]JOVIAL於1959年由系統開發公司英語System Development Corporation(SDC)的朱爾斯·施瓦茲英語Jules Schwartz所領導的團隊發明,用於編寫軍用飛機電子系統的編寫。

在1960年代期間,JOVIAL是美國軍方「L計劃」系列的一部份,特別是ITT 465L戰略空軍司令部控制系統英語ITT 465L Strategic Air Command Control System戰略自動命令與控制系統英語Strategic Automated Command and Control System(SACCS)計劃),其原由是缺乏實時計算編程語言可用。SACCS計劃由國際電話與電報公司(ITT)用主要由SDC編寫的軟件來管理,它大約有95%是用JOVIAL編寫的。這個軟件項目耗時2年和不到1,400程序員人年,不到半自動地面防空系統所需時間的一半[4]

在1970年代後期和1980年代前期,美國空軍採納了標準化的中央處理器(CPU)MIL-STD-1750A,並為這個處理器編寫了後續的JOVIAL程序。一些商業廠商提供了編譯器和有關的編程工具,用來為處理器比如MIL-STD-1750A建造JOVIAL程序,這包括了高級計算機技術英語Advanced Computer Techniques(ACT)、TLD系統英語TLD Systems、專有軟件系統(PSS)等公司[5][6]

JOVIAL在1973年被標準化為MIL-STD-1589並在1984年被修訂為MIL-STD-1589C。它仍被於更新和維護老舊軍用車輛和飛行器的軟件。常用有三種方言:J3、J3B-2和J73。

Remove ads

例子

下列例子取自《JOVIAL(J73)語言的計算機編程手冊》[7]

PROC RETRIEVE(CODE:VALUE);
BEGIN
    ITEM CODE U;
    ITEM VALUE F;
    VALUE = -99999.;
    FOR I:0 BY 1 WHILE I<1000;
        IF CODE = TABCODE(I);
        BEGIN
            VALUE = TABVALUE(I);
            EXIT;
        END
END

這個例子定義了叫做RETRIEVE的一個過程,它接受一個無符號整數輸入參數CODE,和一個浮點輸出參數VALUE。它在數組TABCODE的前1000個元素中,查找匹配CODE的項目,並接着將浮點變量VALUE設置成,數組TABVALUE的有相同匹配數組索引的那個元素。如果未找到匹配元素,則VALUE被設置成−99999.0

Remove ads

應用案例

使用嵌入式JOVIAL軟件的著名系統包括:

參考文獻

Loading content...
Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads