COBOL計算機方言

COBOL計算機方言

COBOL(Common Business Oriented Language)語言是一種適合於商業及數據處理的程式設計語言。這種語言可使商業數據處理過程精確表達。

概述

COBOL(Common Business Oriented Language)語言是一種適合於商業及數據處理的程式設計語言。這種語言可使商業數據處理過程精確表達。在企業管理中,數值計算並不複雜,但數據處理信息量卻很大。為專門解決企業管理問題,1959年,由美國的一些計算機用戶組織設計了專用於商務處理的計算機語言COBOL,並於1961年由美國數據系統語言協會公布。經不斷修改、豐富完善和標準化,已發展為多種版本。

COBOL語言提供了三種強有力的檔案處理功能(順序檔案、隨機檔案、索引檔案)。大量數據一般作為檔案的記錄存儲在磁碟上,而不是直接存放在記憶體。COBOL語言僅提供了加、減、乘、除及乘方這5種運算,沒有提供其他複雜的內部函式,因而COBOL語言不適於進行科學計算。為便於輸入輸出,COBOL語言除提供方便的接收(ACCEPT),顯示(DISPLAY)語句外,還提供了三種字元串處理語句:合字元串(STRING),分字元串(UNSTRING)和字元串檢測(INSPET)語句。與一般高級語言不同,COBOL語言明確地規定任何源程式都必須包含標識部、環境部、數據部和過程部。

COBOL語言使用了300多個英語保留字,大量採用普通英語辭彙和句型,COBOL程式通俗易懂,素有“英語語言”之稱。COBOL語言語法規則嚴格。用COBOL語言編寫的任一源程式,都由4個部組成:標識部(Identification)描述程式、環境部(Environment)描述運行程式的計算機系統、數據部(Data)描述程式中所有數據的格式、程式部(Procedure)是程式的主體。

COBOL程式結構的“部”內包含“節”,“節”內包含“段”,段內包含語句,語句由字或字元串組成,整個源程式像一棵由根到乾,由乾到枝,由枝到葉的樹,習慣上稱之為樹形結構。

20世紀80年代後隨著資料庫的廣泛套用,該語言使用面減少。目前COBOL語言主要套用於情報檢索、商業數據處理等管理領域,銀行系統還較多採用COBOL語言開發。

COBOL標準的發展

1960年,美國計算機與商業設備製造商協會(CBEMA)成立了一個委員會,叫做美國計算機與信息處理國家標準委員會,簡稱X3。X3委員會的分會X3.4程式語言分會建立了X3.4.4工作組“處理器規範與COBOL標準小組”。

X3.4.4(後更名為X3J4)小組負責建立COBOL標準。這個小組的第一次會議於1963年召開,由計算機製造商和用戶的代表參加。他們確定了小組的目標是根據COBOL的CODASYL標準(1959年該委員會產生的最初COBOL標準)定義COBOL國家標準。

1968年,美國標準協會(USASI)批准了COBoL分會開發的標準,發表號為X3.23—1968。這個文檔定義了COBOL包括核心(Nucleus)和下列八個功能模組:

·Table Handling(表格處理)

·Sequential Access(順序訪問)

·Random Access(隨機訪問)

·Random Processing(隨機處理)

·Sort(排序)

·Report Writer(報表寫入)

·Segmentation(分段)

·Library(庫)

每個模組分成最多三層,高層提供更多功能,低層提供高層的子集。COBOL的基本版本應包括核心、表格處理和順序訪問模組的低層功能。完全版本的COBOL應包括所有模組的高層功能。美國標準協會(USASI)於1966年由ASI更名為USASI,1969年更名為美國國家標準協會(ANSI)。這個ANSI標準即著名的COBOLL一68。

1974年對標準進行了修訂,8個功能處理模組擴充為11個:

·Table Handling(表格處理)

·Sequential I/O(順序I/O)

·Relative I/O(相對I/O)

·Indexed I/O(索引I/O)

·Sort—Merge(排序/合併)

·Report Writer(報表寫入)

·Segmentation(分段)

·Library(庫)

·Debug(調試)

·Inter.Program Communication(程式間通信)

·Communication(通信)

每個模組包括兩層或三層。在9個模組中,最低層為空集。每個低層都是高層的子集。對於COBOL-68,基本版本應包括核心、表格處理和順序I/O模組的最低層。

COBOL程式的組成

對於COBOL程式的結構,大體上都得由四個部(DIVISION)組成:

(一)標識部(IDENTIFIcATl0N DIVISION):標識部用於對程式命名。還可以寫些備註性的內容,如作者的姓名、編寫與編譯的日期等。

(二)設備部(ENVIRONMENT DIVISION):設備部是程式中描述計算機硬體的部分。並指出使用的主機和外圍設備。

(三)數據部(DATA DIVISION):數據部用來描述程式的數據結構。這些數據包括輸入、輸出及中間結果的數據。

(四)過程部(PROCEDURE DIV璐IoN):過程部是COBOL程式中最主要的一個部,它的任務是對數據進行處理與計算。

語法格式

在大型機環境中,COBOL程式的每行代碼通常分為80列。對於列與列之間不同的範圍,其意義各不相同。列於列之問不同的範圍及其意義分別如下。

第1~6列:序號區。

第7列:指示符區。

第8~11列:A區。

第12~72列:B區。

第73~80列:說明區。

其中序號區中的內容通常不作要求。指示符區通常為空或者包含字元“*”。當包含“*”時,表示該行為注釋行,用於書寫對程式的注釋信息。同時,也可以在“*”後不添加任何注釋信息,以起到對程式代碼段分隔的作用,利於閱讀。A區中的內容主要包括COBOL中的部、節、語句段的標識符,以及01層數據層號等。B區中則主要包含過程部中的各條語句。說明區用於對程式進行注釋。

COBOL程式中用到的各類數據名稱主要由字母、數字以及中劃線組成。其中字母通常為大寫字母。中劃線不可作為數據名稱的開頭或結尾。數據名稱通常最多不應超過30個字元,並且不可定義為程式關鍵字。

COBOL中的關鍵字主要為各種語句名、特殊數據名、象徵常量名等。例如,以下為幾個常見的COBOL中的關鍵字:PIC、FILLER、OPEN、MOVE、PERFORM、SPACES。

相關詞條

熱門詞條

聯絡我們