COBOL(CommonBusinessOrientedLanguage)——是數據處理領域最爲普遍的
程序設計語言,是第一個普遍使用的高級
編程語言。在企業管理中,
數值計算並不複雜,但數據處理信息量卻很大。爲專門解決經企管理問題,於1959年,由
美國的一些
計算機用戶組織設計了專用於商務處理的
計算機語言COBOL,並於1961年美國數據系統語言協會公佈。經不斷修改、豐富完善和標準化,目前COBOL已發展爲多種版本。
全 稱 CommonBusinessOrientedLanguage
開發公司 RearAdmiralGraceHopper公司
1商業語言
COBOL(面向
商業的通用語言,又稱爲企業管理語言、數據處理語言等,Common Business Oriented Language)是最先的高級編程語言之一,是世界上第一個商用語言。由COBOL之母Grace Hopperopper
Grace Hopper3d
以Flow-Matic爲基礎開發建立。
COBOL調試
COBOL是一種面向數據處理的、面向文件的、
面向過程(POL)的高級編程語言,是一種功能很強而又極爲冗長的語言。
COBOL適合於具備循環處理週期的環境(例如打印工資支票)以及數據操縱量至關大的環境。COBOL主要應用於
商業數據處理領域,對各類類型的數據進行 收集、存儲、傳送、分類、排序、計算及打印報表、輸出圖象是它的強項。COBOL語法與英文很接近,即便不懂電腦的人也能看懂程序。強大的文件處理功能,大量的數據一般以文件的形式存儲在
磁盤上。將來的COBOL將支持XML等Web時代的新技術。
[1]
英文縮寫:
COBOL(Common Business Oriented Language) 中文譯名: COBOL語言
解 釋: 一種適合於
商業及數據處理的相似英語的
程序設計語言。這種語言可以使
商業數據處理過程精確表達。
2歷史
COBOL(CommonBusinessOrientedLanguage)是第一個普遍使用的高級編程語言。
五角大樓
在企業管理中,
數值計算並不複雜,但
數據處理信息量卻很大。爲專門解決經企管理問題,1959年5月,
五角大樓委託格雷斯·霍波(G.Hopper)博士領導一個委員會並由RearAdmiralGraceHopper公司主持開發,並於1961年由美國數據系統語言協會公佈。經不斷修改、豐富完善和標準化,已發展爲多種版本。
COBOL重視
數據項和輸入/輸出記錄的處理,對具備大量數據的文件提供了簡單的處理方式。從名字能夠看出,它主要用於解決
商業和企業管理等領域的大量
數據處理問題,又稱爲企業管理語言、數據處理語言等。Cobol語言的研製始於50年代末,當時
計算機的生產已進入第二代,計算機應用領域開始從
數值計算擴大到
數據處理。
商業和企業事務管理中須要進行處理的數據量急劇增長,迫切須要有適用於這個領域的
程序設計語言, 以提升編制程序的質量和速度。Cobol語言就是在這種社會背景下應運而生的。也就是說,Cobol已經年過半百了。Cobol正式發佈於1960年4 月,稱爲Cobol-60。如今最新的版本應該是Cobol-2002了,並且還在不斷改進中,將來的Cobol將支持XML等Web時代的新技術。換言 之,Cobol還將繼續發展與應用,但與C語言或
FORTRAN語言相比,COBOL的數值運算、
邏輯運算能力比較弱。
1959年,
美國國防部召開了一個有政府機關、企業、
計算機廠商參加的會議,你們認爲有必要設計一種數據處理專用的語言,這就是著名的
數據系統語言會議CODASYL(CongferenceonDataSystemsLanguages)。 1959年12月出現了第一個COBOL語言文本,並於1960年4月正式發表,所以也被稱爲COBOL-60。1968年美國國家標準委員會ANSI又 經過了新的標準ANSICOBOLX.3.23-1968。1972年
國際標準化組織ISO 將其做爲ISOCOBOL-72。1974年ANSI對COBOL-68做出了修訂擴充,造成了ANSICOBOLX3.23-1974,隨後1978年 ISO採用其造成ISOCOBOL-78Monday,2004-09-06ANG="ZH-CN">又提出了ANSIX3.23-85,增長了很 多
結構化程序設計的內容,ISO標準ISO1989:1985也採用了該標準。COBOL標準還在不斷地改進和完善,最新的標準COBOL2002主體已經於2002年12月出版,其餘部分還在不斷地完善之中,具體內容請參考NCITS和COBOLStandards。
3重要性
通過40多年的不斷修改、豐富完善和標準化,COBOL已發展爲多種版本的龐大語言
COBOL程序
,在財會工做、
統計報表、計劃編制、
情報檢索、
人事管理等數據管理及
商業數據處理領域,都有着普遍的應用。
COBOL的重要性能夠用這句話來描述:世界上70%的數據都是用COBOL語言處理的,而且90%的
ATM事 務處理用的都是COBOL語言。天天在線處理的COBOL事務有300億次。500強中有492家(包括所有的100強)使用了COBOL語言,目前在 COBOL方面的投資已經超過3萬億美圓,,據稱用COBOL書寫的程序超過了1000億行,而且以每一年大約50億行代碼的速度在增加。
因爲COBOL在
商業領域的雄厚基礎,並且COBOL主要是應用於
銀行、
金融和
會計行業等很是重要的商業數據處理領域。因此,即便對於具備至關經驗的IT公司來講,從新編寫COBOL語言的可靠的
應用軟件也是不實際或是從
商業角度上並不可行的,並且還要花上很長的時間,只要
大型機存在,COBOL就不會消失,即便是對電腦界產生巨大影響的「
千年蟲」(
Y2K)也沒有改變COBOL的命運。
4特色
COBOL是一種面向數據處理的、面向文件的、
面向過程(POL)的高級編程語言,是一種功能很強而又極爲冗長的語言。
COBOL適合於具備循環處理週期的環境(例如打印工資支票)以及數據操縱量至關大的環境。COBOL主要應用於商業數據處理領域,對各類類型的數據進行收集、
存儲、傳送、分類、排序、計算及打印報表、輸出圖象是它的強項。
COBOL語法與英文很接近,即便不懂電腦的人也能看懂程序。
強大的文件處理功能,大量的數據一般以文件的形式存儲在
磁盤上。
5應用領域
做爲一種元老級的高級編程語言,COBOL擁有龐大的用戶羣和代碼,據稱用COBOL書寫的程序超過了1000億行。另有調查發現世界上目前使用的商業應用 軟件之中的百分之七十是用COBOL代碼編寫的,而且以每一年大約五十億行代碼的速度在增加。看來,歷史賦予了COBOL語言特殊的使命。另外,只要
大型機存 在,其上就還要運行COBOL程序,並且不少資深的程序員已經習慣於COBOL,加入大型機環境的新程序員(例如我)也不得不開始使用COBOL。其實 COBOL也有自身的一些優勢,好比它對數據的顯示格式有較強的控制。另外,我想最重要的是,即便對於具備至關經驗的IT公司來講,從新編寫可靠的
應用軟件也是不實際或是從
商業角度上並不可行的,並且還要花上很長的時間。
如上介紹,Cobol主要是應用在商業
數據處理領域。其中佔最大百分比的是
銀行、
金融和
會計行業,其次是ComputerVAR/Retail/Consulting行業,這是美國的調查資料。Cobol在
中國的應用應該也差很少。(或更少)
6編輯器
因爲COBOL最初是用於
主機系統,因此它和主機系統聯繫得很是緊密。主流的
主機系統,例如IBM的
大型機、中型機等都配備了相應的COBOL
編譯程序,例如VS COBOL II等。
微機的普遍使用也對主機編程產生了必定的影響,好比它擁有漂亮的圖形界面,很多
編譯器廠 家也推出了微機平臺上的COBOL編譯器產品,其中比較著名的有Fujitsu Power COBOL,Acu Cobol等。網上有一個Fujitsu COBOLV3,其編程界面相似於微機上常見的VisualBasic、VisualC等,不只提供了GUI界面,也內置了許多常見的控件,固然其功能比 起VB、VC仍是差了很多,有興趣者能夠下載去試用一下。
在Windows上開發的人都應該以爲很幸運,它那友好的界面就實在能改善開發者的心情,提升開發的效率。想一想在
DOS和
UNIX等下面的黑屏環境,工做的心情實在好不起來。要是跟蹤一段代碼,簡陋的調試環境真讓人卻步。主機環境既然不那麼友好,
調試環境也就能夠想象了。固然了,若是捨得花錢,仍是能買到湊合的調試環境的。即便沒有那麼多的投資,CICS也算是一個不錯的東西,畢竟它還支持對其本身命令的調試。
7程序結構
COBOL程序由4部(DIVISION)組成:
IDENTIFICATION DIVISION.(標識部)
主要用來指定源程序名字,也能夠寫入其餘用做備忘的某些信息(如日期、做者等)。
ENVIRONMENT DIVISION.(環境部)
主要用於指出程序中用到的數據文件名與
計算機系統的設備的對應關係,即把某一文件名與一個
外部設備聯繫起來。
程序中所用到的所有數據(包括輸入輸出的數據和中間數據)都應在數據部中說明它們的類型和所佔內存狀況。
PROCEDURE DIVISION.(過程部)
用來給出程序要執行的指令,使
計算機產生相應的操做,例如進行數學運算。
備註:
語句(Statement)制定
計算機完成必定的操做
8程序舉例編輯
IDENTIFICATION DIVISION. 標識部
PROGRAM-ID. SAMPLE4.
AUTHOR. QXLU (WISTRON DALIAN).
DATE-WRITTEN. 04-07-07.
DATE-COMPILED. 04-07-07.
*
ENVIRONMENT DIVISION. 環境部
DATA DIVISION. 數據部
WORKING-STORAGE SECTION.
01 A PIC X(4). PIC子句進行數據定義
01 B PIC X(4).
01 C PIC X(4).
01 D PIC X(8).
*
PROCEDURE DIVISION. 過程部
*
MOVE 'FGH ' TO A. 賦值給A
MOVE 'KLM ' TO B.
MOVE 'XYZ ' TO C.
MOVE SPACE TO D.
STRING A, B, C DELIMITED BY SPACE INTO D
ON OVERFLOW DISPLAY 'OVERFLOW'.
DISPLAY 'A = ' A. 打印命令
DISPLAY 'B = ' B.
DISPLAY 'C = ' C.
DISPLAY 'D = ' D.
*
STOP RUN. 程序結束標識
顯示以下:
OVERFLOW
A = FGH
B = KLM
C = XYZ
D = FGHKLMXY