《精通COBOL 大型机商业编程技术详解》PDF下载

  • 购买积分:15 如何计算积分?
  • 作  者:马千里编著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2008
  • ISBN:7115178070
  • 页数:457 页
图书介绍:COBOL是应用于大型机开发的最主要的程序设计语言。本书由浅入深、循序渐进讲授给读者如何使用COBOL语言以及与COBOL紧密相关的扩展技术进行实际开发。全书内容包括COBOL简介、程序结构、常用语句、基本数据类型、字符串及其操作、基本运算、流程控制、数据的排序与合并、COBOL中的表、程序的调试与测试、子程序调用、COBOL中的面向对象技术、处理VSAM文件、JCL扩展、DB2扩展、CICS扩展、大型机汇编语言扩展、开发小型银行账户管理信息系统。

第1章 COBOL简介 1

1.1 背景知识 1

1.2 语法格式 2

1.3 COBOL学习环境配置 3

1.3.1 模拟大型机系统——Hercules 3

1.3.2 终端连接软件——PCOM 5

1.4 创建第一个COBOL程序 6

1.5 本章回顾 11

第2章 程序结构 12

2.1 标志部 12

2.2 环境部 13

2.2.1 配置节 13

2.2.2 输入/输出节 13

2.3 数据部 14

2.3.1 文件节 14

2.3.2 工作存储节 17

2.4 过程部 19

2.5 本章回顾 21

第3章 常用语句 22

3.1 MOVE语句 22

3.1.1 复制单个数据项 22

3.1.2 复制不同类型和长度的单个数据项 23

3.1.3 复制一组数据 25

3.2 PERFORM语句 26

3.3 ACCEPT和 DISPLAY语句 28

3.3.1 使用ACCEPT语句接受数据 28

3.3.2 使用DISPLAY语句输出数据 29

3.4 REDEFINES语句 30

3.5 文件相关语句 31

3.5.1 OPEN和CLOSE语句 31

3.5.2 READ语句 32

3.5.3 WRITE语句 34

3.6 本章回顾 35

第4章 基本数据类型 37

4.1 基本数据类别 37

4.1.1 变量 37

4.1.2 常量 38

4.1.3 直接数 40

4.1.4 结构体 41

4.2 字符类型 44

4.3 整型数类型 44

4.4 浮点数类型 46

4.5 Signed Numbers符号类型 47

4.5.1 Signed Numbers符号类型的作用 47

4.5.2 Signed Numbers符号类型的输出 48

4.6 Numeric Edited Fields格式输出类型 48

4.6.1 货币格式 49

4.6.2 算术符号格式 50

4.6.3 算术数格式 53

4.6.4 日期格式 54

4.6.5 其他格式 54

4.6.6 各种格式的综合应用 56

4.7 本章回顾 58

第5章 字符串及其操作 59

5.1 字符串的基本概念 59

5.2 使用STRING语句合并字符串 60

5.2.1 STRING语句的基本用法 60

5.2.2 STRING语句的综合应用 62

5.3 使用UNSTRING语句拆分字符串 64

5.3.1 UNSTRING语句的基本用法 64

5.3.2 UNSTRING语句的综合应用 66

5.4 利用INSPECT语句替换字符串 69

5.4.1 对全体字符进行替换 69

5.4.2 对前缀字符进行替换 70

5.4.3 对首字符进行替换 71

5.4.4 字符串替换的综合应用 71

5.5 字符串转换 73

5.5.1 字符串中字母大小写的转换 73

5.5.2 将字符串转换为具体数值 74

5.6 子字符串的概念及应用 76

5.7 通过MAX和MIN得到最大和最小字符串 79

5.8 求取字符串的长度 80

5.9 本章回顾 82

第6章 基本运算 83

6.1 算术运算 83

6.1.1 四舍五入运算ROUNDED 83

6.1.2 运算结果溢出报错ON SIZE ERROR 84

6.1.3 算术加运算ADD 85

6.1.4 算术减运算SUBTRACT 87

6.1.5 算术乘运算MULTIPLY 88

6.1.6 算术除运算DIVIDE 89

6.1.7 乘方运算COMPUTE 91

6.1.8 复合算术运算COMPUTE 92

6.1.9 算术统计运算COMPUTE 94

6.2 关系运算 96

6.3 逻辑运算 98

6.3.1 逻辑与运算 98

6.3.2 逻辑或运算 99

6.3.3 逻辑非运算 100

6.3.4 复合逻辑运算 100

6.3.5 逻辑运算表达式中常用的省略方式 102

6.4 本章回顾 104

第7章 流程控制 105

7.1 顺序结构流程控制 105

7.2 选择结构流程控制 107

7.2.1 选择结构的基本流程 107

7.2.2 条件判断表达式 108

7.2.3 使用IF语句控制选择结构流程 109

7.2.4 使用嵌套IF语句控制选择结构流程 112

7.2.5 使用EVALUATE语句控制多分支选择结构流程 115

7.2.6 使用ZERO简化选择结构编码 117

7.2.7 使用88层条件名简化选择结构编码 118

7.2.8 选择结构的综合应用 120

7.3 循环结构流程控制 123

7.3.1 循环结构的基本流程 123

7.3.2 使用PERFORM UNTIL语句控制循环结构流程 125

7.3.3 使用线上PERFORM语句控制循环结构流程 127

7.3.4 循环结构的综合应用 129

7.4 本章回顾 130

第8章 数据的排序与合并 132

8.1 排序与合并概述 132

8.1.1 排序的基本概念 132

8.1.2 合并的基本概念 133

8.2 数据的排序 134

8.2.1 使用SD语句定义排序中间文件 134

8.2.2 使用USING短语指定排序输入文件 135

8.2.3 使用GIVING短语指定排序输出文件 136

8.2.4 使用SORT语句进行排序 137

8.2.5 编写排序中的输入处理过程 140

8.2.6 编写排序中的输出处理过程 141

8.2.7 包含有输入输出处理过程的SORT语句排序 142

8.3 数据的合并 145

8.3.1 指定合并输入输出文件 145

8.3.2 编写合并中的输出处理过程 146

8.3.3 使用MERGE语句进行合并 147

8.4 本章回顾 149

第9章 COBOL中的表 150

9.1 表的简介 150

9.1.1 为什么要使用表 150

9.1.2 表的基本概念 150

9.1.3 表的基本用途 151

9.1.4 几类典型结构的表 152

9.2 下标表 153

9.2.1 如何定义下标表 153

9.2.2 下标的作用 153

9.2.3 下标的格式要求 155

9.3 定义表语句OCCURS 155

9.3.1 OCCURS语句的使用方法 156

9.3.2 使用OCCURS语句得到的表空间结构 156

9.4 浏览表语句PERFORM VARYING 157

9.4.1 PERFORM VARYING语句的使用方法 157

9.4.2 如何使用PERFORM VARYING语句处理表中数据 159

9.4.3 PERFORM VARYING语句的一些灵活应用 160

9.4.4 PERFORM VARYING语句和PERFORM语句的比较 160

9.5 表的初始化 161

9.5.1 使用硬性编码方式初始化表 161

9.5.2 使用输入文件载入方式初始化表 161

9.5.3 对表初始化的一些灵活技巧 163

9.6 直接查找方式 163

9.6.1 如何定义用于直接查找的表 164

9.6.2 如何进行直接查找 164

9.6.3 对查找数据的处理 165

9.6.4 直接查找方式的适用范围 165

9.7 顺序查找方式 166

9.7.1 如何进行顺序查找 166

9.7.2 使用顺序查找方式的注意事项 168

9.8 二分查找方式 168

9.8.1 可用于二分查找的表的特征 168

9.8.2 如何进行二分查找方式 170

9.8.3 二分查找方式的好处 172

9.9 3种查找方式的比较和总结 172

9.9.1 对表的要求 172

9.9.2 具体查找过程 173

9.9.3 查找效率 174

9.9.4 查找方式小结 174

9.10 对表中数据的统计计算 175

9.10.1 计算数据总和 175

9.10.2 计算平均数 176

9.10.3 计算中位数 176

9.10.4 统计计算小结 177

9.11 索引表 178

9.11.1 为何要使用索引表 178

9.11.2 如何定义索引表 178

9.11.3 索引的特点 178

9.11.4 索引表的内部存储结构 180

9.11.5 索引表和下标表的比较 181

9.12 处理索引 语句SET 183

9.12.1 使用SET语句对索引赋值 183

9.12.2 使用SET语句对索引进行算术运算 184

9.13 查找索引表语句SEARCH 185

9.13.1 SEARCH语句的格式 185

9.13.2 SEARCH语句的功能 186

9.14 查找索引表语句SEARCH ALL 187

9.14.1 SEARCH ALL语句的格式要求 187

9.14.2 SEARCH ALL语句的实际应用 188

9.15 定长表和变长表 189

9.15.1 定长表 189

9.15.2 如何定义变长表 190

9.15.3 变长表中数据的引用范围 192

9.15.4 变长表应用举例 192

9.16 嵌套表 193

9.16.1 如何定义嵌套表 194

9.16.2 嵌套下标表 195

9.16.3 嵌套索引表 195

9.17 本章回顾 197

第10章 程序的调试与测试 198

10.1 调试与测试的基本概念 198

10.1.1 调试的基本概念 198

10.1.2 测试的基本概念 198

10.2 调试所需处理的错误类型 200

10.2.1 语法错误 200

10.2.2 逻辑错误 202

10.3 增殖式调试方法 204

10.4 使用DISPLAY语句辅助调试 206

10.5 测试基本类型 207

10.5.1 黑盒测试 208

10.5.2 白盒测试 209

10.6 测试基本步骤 211

10.7 数据合法性检测 213

10.7.1 数字与字母检测 213

10.7.2 数据正负检测 214

10.7.3 数据范围检测 214

10.7.4 数据顺序检测 215

10.7.5 数据存在检测 216

10.8 错误信息列表 216

10.9 本章回顾 218

第11章 子程序调用 219

11.1 子程序调用的作用 219

11.1.1 提高代码可重用性 219

11.1.2 提高部分功能段执行效率 222

11.1.3 防止数据意外丢失或被更改 223

11.2 子程序调用的特点 224

11.2.1 子程序的命名规则 224

11.2.2 子程序的调用顺序 225

11.2.3 子程序的终止方式 225

11.3 主调用程序 226

11.3.1 主调用程序中参数的定义 226

11.3.2 主调用程序中的调用过程 227

11.4 被调用程序 228

11.4.1 被调用程序中参数的定义 228

11.4.2 被调用程序中参数的引用 231

11.4.3 被调用程序中的入口地址 232

11.5 静态调用 233

11.5.1 静态调用的基本概念 234

11.5.2 静态调用程序示例 234

11.6 动态调用 236

11.6.1 动态调用的基本概念 236

11.6.2 动态调用程序示例 236

11.7 嵌套子程序 238

11.7.1 嵌套子程序的结构 238

11.7.2 嵌套子程序的调用权限 239

11.8 本章回顾 240

第12章 COBOL中的面向对象技术 241

12.1 面向对象的基本概念 241

12.1.1 对象的概念 241

12.1.2 类的概念 242

12.1.3 继承的概念 242

12.1.4 消息的概念 243

12.1.5 多态的概念 243

12.1.6 接口的概念 243

12.2 定义COBOL中的类 244

12.2.1 标志部中的定义 244

12.2.2 环境部中的定义 244

12.2.3 数据部中的定义 245

12.2.4 类的完整定义 246

12.3 COBOL中的方法 247

12.3.1 方法的定义 247

12.3.2 嵌套在类与对象中的方法 248

12.4 COBOL中的客户程序 251

12.4.1 客户程序的定义 251

12.4.2 通过客户程序调用方法 252

12.4.3 包含实例变量的方法调用 253

12.5 COBOL中的子类 255

12.5.1 子类的定义 255

12.5.2 子类的应用 256

12.6 COBOL中的工厂对象 258

12.6.1 工厂对象的定义 258

12.6.2 工厂对象的应用 259

12.7 异常处理 260

12.8 本章回顾 261

第13章 处理VSAM文件 263

13.1 VSAM文件的基本概念 263

13.1.1 VSAM文件的分类及作用 263

13.1.2 VSAM文件的管理方式 264

13.1.3 VSAM文件的组织结构 265

13.1.4 VSAM文件的设计步骤 266

13.2 VSAM中的LDS 267

13.2.1 LDS的结构及特征 267

13.2.2 计算LDS的空间大小 268

13.3 VSAM中的ESDS 270

13.3.1 ESDS的结构及特征 270

13.3.2 ESDS的访问方式 271

13.3.3 Spanned Record技术 273

13.3.4 计算ESDS的空间大小 274

13.4 VSAM中的RRDS 276

13.4.1 RRDS的结构及特征 276

13.4.2 RRDS的访问方式 277

13.4.3 计算RRDS的空间大小 277

13.5 VSAM中的KSDS 278

13.5.1 KSDS的结构及特征 278

13.5.2 KSDS中的Key及索引 279

13.5.3 KSDS的访问方式 280

13.5.4 CI及CA分割技术 281

13.5.5 次索引技术 282

13.5.6 计算KSDS数据部分的空间大小 283

13.6 VSAM中的VRRDS 284

13.6.1 VRRDS的结构及特征 284

13.6.2 计算VRRDS数据部分的空间大小 284

13.7 VSAM文件及其空间计算总结 285

13.8 通过COBOL操作VSAM文件 286

13.8.1 在程序中指定VSAM文件 287

13.8.2 实现对VSAM文件的操作 287

13.9 本章回顾 289

第14章 JCL扩展 290

14.1 基本概念 290

14.1.1 作业与作业步 290

14.1.2 JCL语法规则 291

14.1.3 JCL语句类型 293

14.1.4 参数的类别及书写规则 293

14.2 JOB语句 295

14.2.1 JOB语句中的位置参数 295

14.2.2 JOB语句中的关键字参数 296

14.2.3 JOB语句中参数的综合应用 300

14.3 EXEC语句 300

14.3.1 EXEC语句中的位置参数 301

14.3.2 EXEC语句中的关键字参数 302

14.3.3 COND参数 304

14.4 DD语句 306

14.4.1 DD语句的语句名 306

14.4.2 DD语句中的位置参数 307

14.4.3 DD语句中与数据集相关的关键字参数 310

14.4.4 DD语句中与设备相关的关键字参数 312

14.4.5 特殊的DD语句 314

14.5 JCL实用程序 316

14.5.1 IEFBR14实用程序 316

14.5.2 IEBGENER实用程序 316

14.5.3 IEBCOPY实用程序 318

14.5.4 ICEMAN实用程序 320

14.5.5 IEBPTPCH实用程序 320

14.5.6 IEBCOMPR实用程序 321

14.5.7 IEHLIST实用程序 322

14.6 JCL 的过程 322

14.7 通过JCL管理VSAM数据集 324

14.8 本章回顾 327

第15章 DB2扩展 328

15.1 基本概念 328

15.1.1 关系数据库的概念 328

15.1.2 DB2简介 330

15.1.3 DB2的组织结构及创建步骤 332

15.2 DB2的基本应用 334

15.2.1 DB2在COBOL中的编码 334

15.2.2 含DB2的COBOL编译过程 336

15.3 常用SQL语句 338

15.3.1 DML类别的SQL语句 338

15.3.2 DDL类别的SQL语句 341

15.3.3 DCL类别的SQL语句 343

15.4 嵌入式SQL 344

15.4.1 主变量 344

15.4.2 指示变量 345

15.4.3 SQLCA 346

15.5 动态SQL 347

15.5.1 不含参数的非SELECT语句 347

15.5.2 含有参数的非SELECT语句 348

15.6 DB2 中的游标 349

15.6.1 游标的基本定义及用法 349

15.6.2 回滚游标的概念及指向方式 352

15.6.3 静态回滚游标 352

15.6.4 动态回滚游标 354

15.6.5 利用游标同时处理多行记录 354

15.7 DB2中的锁 356

15.8 访问路径以及EXPLAIN 357

15.8.1 访问路径 358

15.8.2 EXPLAIN优化工具 360

15.9 本章回顾 361

第16章 CICS扩展 362

16.1 基本概念 362

16.1.1 CICS简介 362

16.1.2 CICS中的交易和任务 363

16.1.3 CICS的基本操作 365

16.2 CICS编译处理过程 366

16.2.1 CICS程序编译流程 367

16.2.2 使用CEDA定义资源 367

16.2.3 使用CEMT查询和设置资源 370

16.2.4 使用CEDF调试程序 371

16.3 CICS在COBOL中的基本应用 371

16.3.1 基本程序结构 372

16.3.2 使用CICS进行输入输出 372

16.3.3 输入过程中的异常处理 374

16.3.4 输出过程中的光标定位 375

16.3.5 获取CICS的终端信息 376

16.3.6 获取CICS的时间信息 377

16.3.7 获取CICS的日期信息 379

16.4 伪会话程序 382

16.4.1 伪会话程序的基本概念 382

16.4.2 RETURN到不同的程序 384

16.4.3 RETURN到相同的程序 386

16.5 CICS中的程序调用 388

16.5.1 使用LINK命令进行程序调用 388

16.5.2 使用XCTL命令进行程序调用 389

16.6 CICS中的MAP 390

16.6.1 MAP的基本概念 390

16.6.2 MAP的创建 391

16.6.3 MAP的应用 393

16.7 CICS对于文件的操作 395

16.7.1 读取文件 395

16.7.2 写入文件 396

16.8 CICS中的队列 397

16.9 本章回顾 398

第17章 大型机汇编语言扩展 400

17.1 基本概念 400

17.1.1 主存组织 400

17.1.2 数码表示 401

17.1.3 寄存器与程序状态字 402

17.1.4 操作数的主存地址表示方式 403

17.1.5 程序基本结构 405

17.2 指令类型与机器码 406

17.2.1 RR指令类型及其机器码 406

17.2.2 RX指令类型及其机器码 407

17.2.3 RS指令类型及其机器码 408

17.2.4 SI指令类型及其机器码 408

17.2.5 SS指令类型及其机器码 409

17.3 数据的定义 410

17.3.1 使用DC定义常量 410

17.3.2 使用DS定义存储空间 411

17.4 数据的传递 413

17.5 数据的运算 414

17.5.1 打包十进制数的运算 415

17.5.2 定点二进制数的运算 416

17.6 数据的转换 417

17.6.1 使用CVB和CVD指令转换数据 418

17.6.2 使用PACK和UNPK指令转换数据 418

17.6.3 使用ED指令转换数据 419

17.7 跳转指令与宏命令 421

17.8 程序模块化与DCB参数 422

17.9 综合实例 423

17.9.1 输出商品报表实例 423

17.9.2 显示系统时间实例 425

17.10 本章回顾 428

第18章 开发小型银行账户管理信息系统 429

18.1 主菜单模块 429

18.2 添加账户功能模块 432

18.3 删除账户功能模块 439

18.4 修改账户功能模块 445

18.5 查询账户功能模块 452

18.6 本章回顾 456