一、PL/1的字符集及书写 1、PL/1的字符集
PL/1的字符集一般分为48个字符与60个字符两种,目前采用60个字符的字符集。
1.1 29个字母字符
A,B,…….,Z,$,@,#
1.2 10个数字
0,1,2,3,4,5,6,7,8,9
1.3 21个专用字符(如下所示) ♀ 空格 % 百分号 = 等号 ; 分号 + 加号 : 冒号 - 减号 < 小于 *
星号(乘号) > 大于 /
斜线(除号) | 或 (
左括号 & 与 )
右括号
┒ 非 , 逗号 _
短划号 .
小数点 ? 问号 ’ 引号
2、L/I源程序的书写
2.1源程序从第2列开始写至第72列为止
2.2每个语句(Statement)以“;”结束
2.3注释(Comment)以“/*”开始,以“*/”结束,其间可出现仸何字符。
2.4第1列上的字符用作打印时的控制字符 1 :
换新页 ♀ :
换一行 0 :
换二行(空一行,现换一行) - :
换三行(空二行,再换一行)
二、数据和表达式(DATA and Expression) 数据类型分两类:
n 运算型数据
A、 算术数据
a:定点十进数(Fixed decimal data)
b: 定点二进数(Fixed binary data)
B、 数值字符数据(numeric character data)
C、 字符串数据(String data)
n 控制型数据
A、 文件数据(file data)
B、 标号数据(label data)
C、 入口数据(entry data)
D、 定位数据(locator data)
1、运算型数据
1.1算术数据有下列4个特性
进位制(Base): 十进位、二进位;
记数法(scale): 定点、浮点
精确度(precision):(P:表示有效数位;q:表示有效小数位)
型(mode): 实型、复型等。
1.1.1定点十进数 例:
定点十进数 3.1416 732 003 0.0012 -528
精确度 (5.4)
(3.0) (3.0) (4.4) (4.0)
存储形式
(十六进制) 31,41,60 73,20 00,30 0,01,20 528,0
注: 对定点十进数(p,q)
2 占用存贮的字符数==[p/2]+1
2 P最大值是15,占8个字符
2 (p,q)未指明时,系统约定为(5,0)
1.1.2定点二进数
例: 定点二进数 0001 0110 11111111
十六进制表示 16 F F
十进制表示 22 - 1 注:
2 最大有效数位31,占4字符
2 未指明时系统约定值为FIXED BIN(15), 占2字符.
2 位数低于15位的也占2字符
2 位数高于15位的,则占4字符
2 变量名以I,J,K,L,M,N开始,若未指明时,约定为FIXED BIN(15);以其它
字母开始约定为FIXED DEC(6)
1.2 数值字符数据
它是介于算术数据与字符串数据间的数据 数 123
732.10 98.7 书写
PIC ‘999’
PIC ‘999V.99’
PIC ‘99V9’
存贮形式 F1 F2 F3 F7 F3 F2 4B F1 F0 F9 F8 F7
其中: V表明在数据域中该位置出现一个隐含的十进位或二进位小数点.
若V后面还有“.”,表明相应数据域位置包含一个小数点
注:
u 数值字符数据主要是构成定点十进数,定点二进数可打印的形式;
u 在PIC后面引号(”)中的数字字符个数最多15个;
u 数值字符数据可进行算术运算,但须经转换;
u 如果一个数字字符定义为PIC ‘ZZZV.’,则不管此字符是否有值,都显示为“ .”。