COBOL

✍ dations ◷ 2025-02-23 21:40:00 #程序设计语言

COBOL(/ˈkoʊbɒl/),其名称来自于通用商业语言(英语:Common Business Oriented Language,又译为面向常规业务型语言/常规商业信息处理语言)的缩写,是最早的高阶编程语言、以及是世界上最早实施标准化的计算机语言之一。属于编译语言。

1959年5月,五角大厦委托葛丽丝·霍普博士领导一个委员会,制定了COBOL语言的标准,并于1961年由美国数据系统语言协会公布。正式发布于1960年4月,称为Cobol-60,现在最新的版本是Cobol-2002。COBOL最早是以葛丽丝·霍普开发的FLOW-MATIC(英语:FLOW-MATIC)语言为范本。值得注意的是,葛丽丝·霍普并不是发明COBOL的六人组成员之一。1959 年,在纽约曼哈顿的雪梨荷兰酒店,Jean E. Sammet(英语:Jean E. Sammet) 和其他 5 位程序员封闭两周,几乎是无昼夜地开发,完成了 COBOL 的大部分设计。

1963年,美国国家标准学会进行了标准化,但是ANSI标准很少被遵循;因此,COBOL程序只是部分可移植的。

经过40多年的不断修改、丰富完善和标准化,COBOL已发展为多种版本的庞大语言,在财会工作、统计报表、计划编制、情报检索、人事管理等数据管理及商业数据处理领域,都有着广泛的应用。

COBOL主要是应用于金融和会计行业等非常重要的商业数据处理领域,即使 COBOL 多年来被视为过时的语言,但是目前大多数的金融业核心系统仍多半使用COBOL,除了旧有系统太庞大修改不易外,COBOL 平台的稳定性也是它生命一直超过预期延续的重要原因。

在2019新型冠状病毒疫情影响下,美国政府因为需处理大量失业给付,使得COBOL编写的老旧系统频繁出现故障,需要同样上年纪、甚至已退休的老年COBOL程序员来协助维护,所以COBOL的创始团队在网上公开教程和学习资源,让年轻程序员学习COBOL来协助这些程序员维护系统,同时也紧急招募COBOL程序员来协助维护。

COBOL是一种面向数据处理的、面向文件的、面向过程(POL(英语:POL))的高级编程语言,是一种功能很强而又极为冗长的语言。

COBOL适合于具有循环处理周期的环境(例如打印工资支票)以及数据操纵量相当大的环境。COBOL主要应用于商业数据处理领域,对各种类型的数据进行收集、存储、传送、分类、排序、计算及打印报表、输出图像是它的强项。

COBOL语法与英文很接近,即使不懂电脑的人也能看懂程序。

强大的文件处理功能,大量的数据通常以文件的形式存储在磁盘上。

仅提供了加、减、乘、除及乘方这五种简单的算术运算,因而不适于进行科学计算。

未来的COBOL将支持XML等Web时代的新技术。

COBOL程序由4部(DIVISION)组成:IDENTIFICATION DIVISION.(标识部)、ENVIRONMENT DIVISION.(环境部)、DATA DIVISION.(数据部)、PROCEDURE DIVISION.(过程部),而每个部又由若干节(SECTION)组成。

“PROGRAM-ID”(程序识别ID)、“AUTHOR”(作者名)、“DATE-WRITTEN”(编写日期),这些并不直接影响程序的执行,而是程序的注释信息。程序注释可以采用任何语言书写,COBOL编译器可以接受。

用于记载程序可以被运行的计算机环境。“ENVIRONMENT DIVISION.”部包括“CONFIGURATION SECTION”环境节和“INPUT-OUTPUT SECTION”输入输出节。

用于定义和声明程序所要使用的变量及其他数据。程序要使用的全部变量和数据必须在这里定义。“DATA DIVISION.”部主要包含“FILE SECTION.”和“WORKING-STORAGE SECTION.”节。

如果程序要通过参数接收数据,那么使用“LINKAGE SECTION”来声明。

COBOL程序的数据,主要有以下3种:

COBOL的基本变量类型,有以下三种:

用于容纳程序的实际处理代码。需要传入参数时,采用“PROCEDURE DIVISION USING引数名”的方式。

因为前3个DIVISION都是注释,却又必须,只到第4个DIVISION“PROCEDURE DIVISION”才真正涉及程序代码,这样的繁琐规定使得COBOL被批评为太过冗长。但是,基于这样的4个DIVISION的明确记述等的严格形式,COBOL也被公认是可读性强的语言。另外,COBOL的保留字数量庞大,字数过长的保留字太多是COBOL的特征之一。

相关

  • Drugs.comDrugs.com 是美国一个提供药物(学)资讯给消费者和专业医护人员的线上药物百科。Drugs.com这个域名原本由柏尼·纽贝克在1994年注册。1999年,互联网正处于快速发展期,艾瑞克·麦
  • 世界肝炎日世界肝炎日(英语:World Hepatitis Day)为每年7月28日举行,旨在提高人们对肝炎(尤其是乙型、丙型肝炎)的重视,宣传预防方法。 世界肝炎日是在2010年召开的第63届世界卫生大会上由全
  • 斯蒂夫尼奇斯蒂夫尼奇(Stevenage)是英国的一座城市。位于赫特福德郡,伦敦以北约50公里处。人口在1801年时有1,430人,1901年时有4,049人,2001年时有79,724人,2007年时有84,651人。斯蒂夫尼奇
  • MH-6/AH-6小鸟攻击/通用直升机MH-6“小鸟式”(MH-6 "Little Bird",又常被昵称为“Killer Egg”(杀手蛋))直升机和它的攻击型版本AH-6,是美国陆军用于特种作战的单引擎轻型直升机。它最初是以OH-6A“小马式”侦
  • RQ-4A全球鹰RQ-4全球鹰(英语:Global Hawk)是由诺斯洛普·格鲁门所生产制造的无人飞机(UAV),主要服役于美国空军与美国海军。该机角色上类似1950年代叱咤风云屡次被击落的洛克希德U-2侦察机。
  • 航拍航拍又称空拍、空中摄影或航空摄影,是指从空中拍摄地球地貌,获得俯视图,此图即为空照图。航拍的摄像机可以由摄影师控制,也可以自动拍摄或远程控制。航拍所用的平台包括飞机、直
  • 中嘉网路中嘉网路股份有限公司(英语:China Network Systems Co., Ltd.),简称中嘉、中嘉网路、CNS、中嘉集团,是台湾的一家有线电视多系统业者(MSO)及互联网供应商(ISP)。中嘉网路的有线电视订
  • 许涵度许涵度(1851年-1913年),直隶清苑县(今河北省清苑县)人,清朝政治人物、同进士出身。祖籍绍兴马鞍山,曾祖、祖父、父辈均为师爷。其父游幕直隶,遂占籍清苑县。同治十二年(1873年),许涵度与
  • 小阿尔克谢·盖尔曼小阿尔克谢·阿列克谢维奇·盖尔曼(俄语:Алексей Алексеевич Герман;1976年9月4日-)是俄罗斯电影导演。小阿尔克谢·盖尔曼的父亲为苏联电影工作者阿尔克
  • 长谷部言人长谷部言人(日语:長谷部言人 ,1882年6月10日-1969年12月3日),出生于东京都。人类学家、解剖学家,日本学士院成员。