COBOL概述


COBOL概述

          什么是COBOL語言:

           COBOL是Common Business Oriented Language的縮寫,是面向商業通用編程語言。它是專門為商業數據處理而設計的計算機高級程序語言。廣泛用於數據管理領域。應用於多個行業如:銀行,證券,金融,制造,等等。
           COBOL程序的基本結構:
                       標識部(IDENTIFICATION DIVISION)
                              用來標識程序名稱,記錄程序的文檔記錄住處如作者和日期等。
                        環境部(ENVIRONMENT DIVISION)
                               用來描述程序運行和編譯的計算機環境,內部數據文件與系統設備的對應關系。
                        數據部(DATA DIVISION)
                                定義程序中所有數據的類型和所占內在的大小。
                         過程部(PROCEDURE DIVISION)
                                 編寫程序要執行的語句,是程序的核心。
            
                     部下設置節,節下設置段或描述體,段下或節一包含句子。
                     節是由一個或者多個段組成的。節的定義從一個節名開始到下一個節名或文本結束為止。
                             定義格式:節名            SECTION(節名分為系統定義和用戶定義兩種。)
                      段由一個或多個句子組成,段的定義從段名開始到下一個段名或文本結束為止。
                             定義格式:段名.(段名+點)  (段名分為系統定義和用戶自定義兩種)
                      文件描述體只能在數據部中定義,用於描述外部文件的屬性及其記錄的格式。
                              定義格式:FD 文件名.   (文件描述體用FD(file definition)語句定義)。
                      句子是完整的指令,用相應的動詞表示其操作,以一個句號加一個以上的空格來結束。
 
            COBOL程序的書寫區域               
                      標准COBOL程序每行80列,被分為五人區域。
                      第01——06列為“標識區”
                               標號是6位數字,應從小到大,但不一定連續,標號只是方便查閱程序,可以省略。
                      第7列為“注釋區”
                                “*”:表示本行為注釋行,用於注釋程序說明。
                       第08——11列為“A區”
                                  程序中一列語句必須從該區開始書寫:部名、節名、段名,描述符(FD),01和07層。
                       第12——72列為“B區”
                                  程序正文部分,過程部語句必須從該區開始書寫。
                       第73——80列為“注釋區”
                                   行注釋區,寫入此區的內容在編譯時被忽略(一般不推薦使用。)
 
           COBOL程序的書寫格式
                        大小寫字母等價,但是引號中的字符除外。
                        相鄰的兩個COBOL字之間有一個以上的空格。
                         運算符和=左右必須各有一個以上的空格;圓括號外面必須有一個以上的空格,內側不必。
                         逗號、分號、句號左邊不能有空格,而右邊應有。
            COBOL的字符
                          COBOL的字符集包括:數字0-9,字母A-Z,a-z,15個專用符號:+ - * / = ,(逗號)  .(句號) ;(分號) '(引號) $ () <> 空格。屬於系統字符集而不屬於COBOL字符集的字符,只能出現在COBOL的字符串或注釋行中。
                          COBOL字是由上述字符組成的最小單位。(保留字、用戶字)
                          保留字:規定五種類型專門用途的字(300多個)
                                  鍵字:如MOVE ADD 等
                                  可選字:如USAGE IS等
                                  專用字符:如運算符:+ - * /等;比較符><=等
                                  表意常量:如ZERO/ZEROS/ZEROES;SPACE/SPACES;QUOTE/QUOTES;HIGH-VALUE/HIGH-VALUES;LOW-VALUE/LOW-VALUES;ALL;NULL/NULLS
                                   專用寄存器:如:LENGTH OF;RETURN-CODE等。
                          用戶字:用戶自定義的名字。
                                  如:程序名、文件名、節名、段名、數據名等。
 
                          數據名:相當於其它語言中的變量名,它代表一個具體的數據項。
                                 只能由字母(至少一個),數字和連字符“-”組成,連字符不能出現在兩端,不能包含空格。
                                 數據名長度不能超過30個字符
                                盡量使用有意義的英文
                                不能使用保留字作為數據名,多使用連字符,如NAME-OF-STUDENT
                          常量:COBOL常量分為數據常量,非數值常量,表意常量
                                 數值常量:由數字0-9,正負號和小數點組成,如:123,25.67,-73
                                 非數值常量:用匹配的引號(單引號)括起來的字符串,如‘$123’ ,由純數字組成的非數值常量不能用於數學運算,如‘123’和123不同。
                                 表意常量:
                                     
 

 

標識部

           標識部的作用

                      標識部是COBOL程序的第一部分,用來為程序設定標識,以便識別,每個程序(包括主程序和子程序)都必須有一個名字,系統按名字對程序管理和調用。標識部下面不設置節,只設置段,部名和段名都從A區開始書寫。

            書寫格式

                      

             PROGRAM-ID命名規則

                      只能使用字母、數字和連字符

                      最少一個字符,不能以連字符開頭或者結尾

                      最長30個字符,但通常工作中要求不超過8個字符(和分區數據集下的member名一致)

                     書寫格式:PROGRAM-ID.     PROGRAM-NAME.

 

環境部

             環境部的作用

                     環境部用來說明程序運行的軟硬件環境,是COBOL程序中唯一與設備相關的部分,將程序中的內部文件與外部文件建立起聯系。

                     環境部包括兩個節:配置節和輸入輸出節(當無配置說明和文件應用時可省略。)

                     

                     配置節包括三個段

                     

                     輸入輸出節

                     

                     

數據部

             1、數據部的作用

                          程序中涉及到的全部數據(輸入、輸出、中間)都要在此定義,對它們的屬性進行說明。主要描述以下屬性:

                          數據類型(數值/字符)和存儲形式(長度)

                          數據項之間的關系(層次和層號)

                          文件與記錄的關系

             2、數據部的結構

                          根據數據項的用途不同,數據部可以分為:

                          文件節(file section)

                                  用來描述程序中用到的輸入輸出文件及記錄中各數據項的屬性

                          工作單元節(working-storage section)

                                  用來描述程序中用到的中間數據

                          聯接節(linkage section)

                                   用來描述與調用程序間發生數據傳遞的數據項(即參數)

             3、數據定義

                          COBOL中把有層屬關系的數據用層次關系來描述

                          

                          層次規定:

                          

                          

             4、文件節(file section)

                         程序中的每個輸入、輸出文件的數據格式都要在此描述,包括:

                                 文件名稱和屬性

                                 文件中包括的記錄的名字

                                 每個記錄中數據的層次關系

                                 記錄中各數據項的格式和占內存的大小

                         文件的描述一般格式

                                 FD 文件名(內部文件名)

                                 01 記錄名

                                       05 數據項1 PIC 。。。。。。

                                       05 數據項2 PIC 。。。。。。

                                 FD語句是文件描述體,用來描述文件與記錄的屬性,如記錄名稱、格式、長度

                                 FD語句下所有的數據組和和數據項組成了該文件的一條記錄

                                 記錄描述:記錄描述體由01層號開始,后跟記錄名。用於定義記錄的數據格式,即各下層的數據項的數據類型和長度。如果記錄本身就是一個初等項,則在記錄名后描述記錄型和長度。

                                舉例說明:

                                

             5、工作單元節(working-storage section)

                        

                        

             6、COBOL中的數據類型(數值型、字母型、字符型、編輯型)

                        

                        

                        

                        

                       

                       

             7、鏈接節(linkage    section)

                       作為主程序與子程序間參數傳遞的數據名定義在子程序的linkage section。也就是該子程序的接口。數據項的定義形式與在工作單元節一致。

                        

過程部

           1、過程部的作用。

                 編寫程序要執行的語句,是程序的核心。

           2、INITIALIZE語句

                  

           3、ACCEPT語句:用於接收從鍵盤或指定設備上獲得輸入數據

                  

           4、DISPLAY語句:從計算機內存中的數據輸出到某一指定的輸出設備上,如監視器、系統輸出流等。

                  

                  

           5、MOVE語句:相當地賦值語句,可以將常量或一個數據項的內容傳送到另一個數據項中

                  

                  

                  

                  

                  

           6、文件操作語句(OPEN READ WRITE CLOSE)

                  

                  

                  

                 

                 

                 

           7、算術運算語句

                  

                  

                  

                  

                  

                  

           8、字符串語句(STRING UNSTRING INSPECT)

                  

                  

                  

                  

                  

           9、IF語句(條件轉移語句。根據給出的判定條件是否滿足,來決定執行哪一部分語句)

                  

                  

                  

                  

                                   

           10、EVALUATE語句(多分支選擇結構)

                   

                   

                                    

           11、PERFORM語句(作為執行語句和循環控制語句)

                   

                               

           12、EXIT語句

                   提供一組過程的公共出口,或者說它指出了被調用過程的邏輯終點,一般用作perform語句序列的出口。EXIT必須是段中唯一的語句,前面必須有段名。

           13、CONTINUE語句

                     用來指定一個空操作,即什么也不做,用來占位置。程序將順序執行到CONTINUE的下一條語句。

           14、GOTO語句

                     

           15、CALL語句(調用子程序)

                    

                    

                    

           16、GOBACK語句

                    返回語句。停止運行,將控制權返回給上一級。子程序必須用GOBACK,而不能用STOP,因為STOP停止的是一個RUN UNIT(運行單元)。

           17、STOP RUN語句

      停止語句。STOP RUN在邏輯上應該是程序的最后一個語句。STOP RUN執行后,程序停止運行,停止后不能再接着運行,如需要,可再重新運行一次。主程序一般通過STOP RUN語句結束運行單元。

VSAM文件

           1、什么是VSAM

                 

           2、VSAM的組織形式和存取方法

                  

                  

           3、VSAM在環境部

                  

           4、VSAM在數據部

                  

           5、VSAM在過程部

                 

                

          

COBOL語言編程規范

                         

                        


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM