~ubuntu-branches/ubuntu/precise/perl/precise

« back to all changes in this revision

Viewing changes to pod/perlebcdic.pod

  • Committer: Bazaar Package Importer
  • Author(s): Niko Tyni
  • Date: 2011-02-06 11:31:38 UTC
  • mto: (8.2.12 experimental) (1.1.12)
  • mto: This revision was merged to the branch mainline in revision 46.
  • Revision ID: james.westby@ubuntu.com-20110206113138-lzpm3g6rur7i3eyp
Tags: upstream-5.12.3
ImportĀ upstreamĀ versionĀ 5.12.3

Show diffs side-by-side

added added

removed removed

Lines of Context:
70
70
range.
71
71
 
72
72
Some IBM EBCDIC character sets may be known by character code set 
73
 
identification numbers (CCSID numbers) or code page numbers.  Leading
74
 
zero digits in CCSID numbers within this document are insignificant.
75
 
E.g. CCSID 0037 may be referred to as 37 in places.
 
73
identification numbers (CCSID numbers) or code page numbers.
76
74
 
77
75
Perl can be compiled on platforms that run any of three commonly used EBCDIC
78
76
character sets, listed below.
97
95
Character code set ID 0037 is a mapping of the ASCII plus Latin-1 
98
96
characters (i.e. ISO 8859-1) to an EBCDIC set.  0037 is used 
99
97
in North American English locales on the OS/400 operating system 
100
 
that runs on AS/400 computers.  CCSID 37 differs from ISO 8859-1 
 
98
that runs on AS/400 computers.  CCSID 0037 differs from ISO 8859-1 
101
99
in 237 places, in other words they agree on only 19 code point values.
102
100
 
103
101
=head2 1047
216
214
    open($f, ">:encoding(utf8)", "test.utf8");
217
215
    print $f "Hello World!\n";
218
216
 
219
 
to get four files containing "Hello World!\n" in ASCII, CP 37 EBCDIC,
 
217
to get four files containing "Hello World!\n" in ASCII, CP 0037 EBCDIC,
220
218
ISO 8859-1 (Latin-1) (in this example identical to ASCII since only ASCII
221
219
characters were printed), and 
222
220
UTF-EBCDIC (in this example identical to normal EBCDIC since only characters
236
234
corresponding to I<The Unicode Standard, Version 3.0> albeit with 
237
235
substitutions such as s/LATIN// and s/VULGAR// in all cases, 
238
236
s/CAPITAL LETTER// in some cases, and s/SMALL LETTER ([A-Z])/\l$1/ 
239
 
in some other cases (the C<charnames> pragma names unfortunately do 
240
 
not list explicit names for the C0 or C1 control characters).  The 
241
 
"names" of the C1 control set (128..159 in ISO 8859-1) listed here are 
242
 
somewhat arbitrary.  The differences between the 0037 and 1047 sets are 
 
237
in some other cases.  The "names" of the controls listed here are 
 
238
the Unicode Version 1 names, except for the few that don't have names, in which
 
239
case the names in the Wikipedia article were used
 
240
(L<http://en.wikipedia.org/wiki/C0_and_C1_control_codes>.
 
241
The differences between the 0037 and 1047 sets are 
243
242
flagged with ***.  The differences between the 1047 and POSIX-BC sets 
244
243
are flagged with ###.  All ord() numbers listed are decimal.  If you 
245
244
would rather see this table listing octal values then run the table 
252
251
 
253
252
=back
254
253
 
255
 
    perl -ne 'if(/(.{33})(\d+)\s+(\d+)\s+(\d+)\s+(\d+)/)' \
 
254
    perl -ne 'if(/(.{43})(\d+)\s+(\d+)\s+(\d+)\s+(\d+)/)' \
256
255
     -e '{printf("%s%-9o%-9o%-9o%o\n",$1,$2,$3,$4,$5)}' perlebcdic.pod
257
256
 
258
257
If you want to retain the UTF-x code points then in script form you
266
265
 
267
266
    open(FH,"<perlebcdic.pod") or die "Could not open perlebcdic.pod: $!";
268
267
    while (<FH>) {
269
 
        if (/(.{33})(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\.?(\d*)\s+(\d+)\.?(\d*)/)  {
 
268
        if (/(.{43})(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\.?(\d*)\s+(\d+)\.?(\d*)/)  {
270
269
            if ($7 ne '' && $9 ne '') {
271
270
                printf("%s%-9o%-9o%-9o%-9o%-3o.%-5o%-3o.%o\n",$1,$2,$3,$4,$5,$6,$7,$8,$9);
272
271
            }
288
287
 
289
288
=back
290
289
 
291
 
    perl -ne 'if(/(.{33})(\d+)\s+(\d+)\s+(\d+)\s+(\d+)/)' \
 
290
    perl -ne 'if(/(.{43})(\d+)\s+(\d+)\s+(\d+)\s+(\d+)/)' \
292
291
     -e '{printf("%s%-9X%-9X%-9X%X\n",$1,$2,$3,$4,$5)}' perlebcdic.pod
293
292
 
294
293
Or, in order to retain the UTF-x code points in hexadecimal:
301
300
 
302
301
    open(FH,"<perlebcdic.pod") or die "Could not open perlebcdic.pod: $!";
303
302
    while (<FH>) {
304
 
        if (/(.{33})(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\.?(\d*)\s+(\d+)\.?(\d*)/)  {
 
303
        if (/(.{43})(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\.?(\d*)\s+(\d+)\.?(\d*)/)  {
305
304
            if ($7 ne '' && $9 ne '') {
306
305
                printf("%s%-9X%-9X%-9X%-9X%-2X.%-6X%-2X.%X\n",$1,$2,$3,$4,$5,$6,$7,$8,$9);
307
306
            }
315
314
    }
316
315
 
317
316
 
318
 
                                                                     incomp-  incomp-
319
 
                                 8859-1                              lete     lete
320
 
    chr                          0819     0037     1047     POSIX-BC UTF-8    UTF-EBCDIC
321
 
    ------------------------------------------------------------------------------------
322
 
    <NULL>                       0        0        0        0        0        0 
323
 
    <START OF HEADING>           1        1        1        1        1        1
324
 
    <START OF TEXT>              2        2        2        2        2        2
325
 
    <END OF TEXT>                3        3        3        3        3        3
326
 
    <END OF TRANSMISSION>        4        55       55       55       4        55 
327
 
    <ENQUIRY>                    5        45       45       45       5        45 
328
 
    <ACKNOWLEDGE>                6        46       46       46       6        46 
329
 
    <BELL>                       7        47       47       47       7        47 
330
 
    <BACKSPACE>                  8        22       22       22       8        22 
331
 
    <HORIZONTAL TABULATION>      9        5        5        5        9        5 
332
 
    <LINE FEED>                  10       37       21       21       10       21       ***
333
 
    <VERTICAL TABULATION>        11       11       11       11       11       11
334
 
    <FORM FEED>                  12       12       12       12       12       12
335
 
    <CARRIAGE RETURN>            13       13       13       13       13       13
336
 
    <SHIFT OUT>                  14       14       14       14       14       14
337
 
    <SHIFT IN>                   15       15       15       15       15       15
338
 
    <DATA LINK ESCAPE>           16       16       16       16       16       16
339
 
    <DEVICE CONTROL ONE>         17       17       17       17       17       17
340
 
    <DEVICE CONTROL TWO>         18       18       18       18       18       18
341
 
    <DEVICE CONTROL THREE>       19       19       19       19       19       19
342
 
    <DEVICE CONTROL FOUR>        20       60       60       60       20       60
343
 
    <NEGATIVE ACKNOWLEDGE>       21       61       61       61       21       61
344
 
    <SYNCHRONOUS IDLE>           22       50       50       50       22       50
345
 
    <END OF TRANSMISSION BLOCK>  23       38       38       38       23       38
346
 
    <CANCEL>                     24       24       24       24       24       24
347
 
    <END OF MEDIUM>              25       25       25       25       25       25
348
 
    <SUBSTITUTE>                 26       63       63       63       26       63
349
 
    <ESCAPE>                     27       39       39       39       27       39
350
 
    <FILE SEPARATOR>             28       28       28       28       28       28
351
 
    <GROUP SEPARATOR>            29       29       29       29       29       29
352
 
    <RECORD SEPARATOR>           30       30       30       30       30       30
353
 
    <UNIT SEPARATOR>             31       31       31       31       31       31
354
 
    <SPACE>                      32       64       64       64       32       64
355
 
    !                            33       90       90       90       33       90
356
 
    "                            34       127      127      127      34       127
357
 
    #                            35       123      123      123      35       123
358
 
    $                            36       91       91       91       36       91
359
 
    %                            37       108      108      108      37       108
360
 
    &                            38       80       80       80       38       80
361
 
    '                            39       125      125      125      39       125
362
 
    (                            40       77       77       77       40       77
363
 
    )                            41       93       93       93       41       93
364
 
    *                            42       92       92       92       42       92
365
 
    +                            43       78       78       78       43       78
366
 
    ,                            44       107      107      107      44       107
367
 
    -                            45       96       96       96       45       96
368
 
    .                            46       75       75       75       46       75
369
 
    /                            47       97       97       97       47       97
370
 
    0                            48       240      240      240      48       240
371
 
    1                            49       241      241      241      49       241
372
 
    2                            50       242      242      242      50       242
373
 
    3                            51       243      243      243      51       243
374
 
    4                            52       244      244      244      52       244
375
 
    5                            53       245      245      245      53       245
376
 
    6                            54       246      246      246      54       246
377
 
    7                            55       247      247      247      55       247
378
 
    8                            56       248      248      248      56       248
379
 
    9                            57       249      249      249      57       249
380
 
    :                            58       122      122      122      58       122
381
 
    ;                            59       94       94       94       59       94
382
 
    <                            60       76       76       76       60       76
383
 
    =                            61       126      126      126      61       126
384
 
    >                            62       110      110      110      62       110
385
 
    ?                            63       111      111      111      63       111
386
 
    @                            64       124      124      124      64       124
387
 
    A                            65       193      193      193      65       193
388
 
    B                            66       194      194      194      66       194
389
 
    C                            67       195      195      195      67       195
390
 
    D                            68       196      196      196      68       196
391
 
    E                            69       197      197      197      69       197
392
 
    F                            70       198      198      198      70       198
393
 
    G                            71       199      199      199      71       199
394
 
    H                            72       200      200      200      72       200
395
 
    I                            73       201      201      201      73       201
396
 
    J                            74       209      209      209      74       209
397
 
    K                            75       210      210      210      75       210
398
 
    L                            76       211      211      211      76       211
399
 
    M                            77       212      212      212      77       212
400
 
    N                            78       213      213      213      78       213
401
 
    O                            79       214      214      214      79       214
402
 
    P                            80       215      215      215      80       215
403
 
    Q                            81       216      216      216      81       216
404
 
    R                            82       217      217      217      82       217
405
 
    S                            83       226      226      226      83       226
406
 
    T                            84       227      227      227      84       227
407
 
    U                            85       228      228      228      85       228
408
 
    V                            86       229      229      229      86       229
409
 
    W                            87       230      230      230      87       230
410
 
    X                            88       231      231      231      88       231
411
 
    Y                            89       232      232      232      89       232
412
 
    Z                            90       233      233      233      90       233
413
 
    [                            91       186      173      187      91       173      *** ###
414
 
    \                            92       224      224      188      92       224      ### 
415
 
    ]                            93       187      189      189      93       189      ***
416
 
    ^                            94       176      95       106      94       95       *** ###
417
 
    _                            95       109      109      109      95       109
418
 
    `                            96       121      121      74       96       121      ###
419
 
    a                            97       129      129      129      97       129
420
 
    b                            98       130      130      130      98       130
421
 
    c                            99       131      131      131      99       131
422
 
    d                            100      132      132      132      100      132
423
 
    e                            101      133      133      133      101      133
424
 
    f                            102      134      134      134      102      134
425
 
    g                            103      135      135      135      103      135
426
 
    h                            104      136      136      136      104      136
427
 
    i                            105      137      137      137      105      137
428
 
    j                            106      145      145      145      106      145
429
 
    k                            107      146      146      146      107      146
430
 
    l                            108      147      147      147      108      147
431
 
    m                            109      148      148      148      109      148
432
 
    n                            110      149      149      149      110      149
433
 
    o                            111      150      150      150      111      150
434
 
    p                            112      151      151      151      112      151
435
 
    q                            113      152      152      152      113      152
436
 
    r                            114      153      153      153      114      153
437
 
    s                            115      162      162      162      115      162
438
 
    t                            116      163      163      163      116      163
439
 
    u                            117      164      164      164      117      164
440
 
    v                            118      165      165      165      118      165
441
 
    w                            119      166      166      166      119      166
442
 
    x                            120      167      167      167      120      167
443
 
    y                            121      168      168      168      121      168
444
 
    z                            122      169      169      169      122      169
445
 
    {                            123      192      192      251      123      192      ###
446
 
    |                            124      79       79       79       124      79
447
 
    }                            125      208      208      253      125      208      ###
448
 
    ~                            126      161      161      255      126      161      ###
449
 
    <DELETE>                     127      7        7        7        127      7
450
 
    <C1 0>                       128      32       32       32       194.128  32
451
 
    <C1 1>                       129      33       33       33       194.129  33
452
 
    <C1 2>                       130      34       34       34       194.130  34
453
 
    <C1 3>                       131      35       35       35       194.131  35
454
 
    <C1 4>                       132      36       36       36       194.132  36
455
 
    <C1 5>                       133      21       37       37       194.133  37       ***
456
 
    <C1 6>                       134      6        6        6        194.134  6
457
 
    <C1 7>                       135      23       23       23       194.135  23
458
 
    <C1 8>                       136      40       40       40       194.136  40
459
 
    <C1 9>                       137      41       41       41       194.137  41
460
 
    <C1 10>                      138      42       42       42       194.138  42
461
 
    <C1 11>                      139      43       43       43       194.139  43
462
 
    <C1 12>                      140      44       44       44       194.140  44
463
 
    <C1 13>                      141      9        9        9        194.141  9
464
 
    <C1 14>                      142      10       10       10       194.142  10
465
 
    <C1 15>                      143      27       27       27       194.143  27
466
 
    <C1 16>                      144      48       48       48       194.144  48
467
 
    <C1 17>                      145      49       49       49       194.145  49
468
 
    <C1 18>                      146      26       26       26       194.146  26
469
 
    <C1 19>                      147      51       51       51       194.147  51
470
 
    <C1 20>                      148      52       52       52       194.148  52
471
 
    <C1 21>                      149      53       53       53       194.149  53
472
 
    <C1 22>                      150      54       54       54       194.150  54
473
 
    <C1 23>                      151      8        8        8        194.151  8
474
 
    <C1 24>                      152      56       56       56       194.152  56
475
 
    <C1 25>                      153      57       57       57       194.153  57
476
 
    <C1 26>                      154      58       58       58       194.154  58
477
 
    <C1 27>                      155      59       59       59       194.155  59
478
 
    <C1 28>                      156      4        4        4        194.156  4
479
 
    <C1 29>                      157      20       20       20       194.157  20
480
 
    <C1 30>                      158      62       62       62       194.158  62
481
 
    <C1 31>                      159      255      255      95       194.159  255      ###
482
 
    <NON-BREAKING SPACE>         160      65       65       65       194.160  128.65
483
 
    <INVERTED EXCLAMATION MARK>  161      170      170      170      194.161  128.66
484
 
    <CENT SIGN>                  162      74       74       176      194.162  128.67   ###
485
 
    <POUND SIGN>                 163      177      177      177      194.163  128.68
486
 
    <CURRENCY SIGN>              164      159      159      159      194.164  128.69
487
 
    <YEN SIGN>                   165      178      178      178      194.165  128.70
488
 
    <BROKEN BAR>                 166      106      106      208      194.166  128.71   ###
489
 
    <SECTION SIGN>               167      181      181      181      194.167  128.72
490
 
    <DIAERESIS>                  168      189      187      121      194.168  128.73   *** ###
491
 
    <COPYRIGHT SIGN>             169      180      180      180      194.169  128.74
492
 
    <FEMININE ORDINAL INDICATOR> 170      154      154      154      194.170  128.81
493
 
    <LEFT POINTING GUILLEMET>    171      138      138      138      194.171  128.82
494
 
    <NOT SIGN>                   172      95       176      186      194.172  128.83   *** ###
495
 
    <SOFT HYPHEN>                173      202      202      202      194.173  128.84
496
 
    <REGISTERED TRADE MARK SIGN> 174      175      175      175      194.174  128.85
497
 
    <MACRON>                     175      188      188      161      194.175  128.86   ###
498
 
    <DEGREE SIGN>                176      144      144      144      194.176  128.87
499
 
    <PLUS-OR-MINUS SIGN>         177      143      143      143      194.177  128.88
500
 
    <SUPERSCRIPT TWO>            178      234      234      234      194.178  128.89
501
 
    <SUPERSCRIPT THREE>          179      250      250      250      194.179  128.98
502
 
    <ACUTE ACCENT>               180      190      190      190      194.180  128.99
503
 
    <MICRO SIGN>                 181      160      160      160      194.181  128.100
504
 
    <PARAGRAPH SIGN>             182      182      182      182      194.182  128.101
505
 
    <MIDDLE DOT>                 183      179      179      179      194.183  128.102
506
 
    <CEDILLA>                    184      157      157      157      194.184  128.103
507
 
    <SUPERSCRIPT ONE>            185      218      218      218      194.185  128.104
508
 
    <MASC. ORDINAL INDICATOR>    186      155      155      155      194.186  128.105
509
 
    <RIGHT POINTING GUILLEMET>   187      139      139      139      194.187  128.106
510
 
    <FRACTION ONE QUARTER>       188      183      183      183      194.188  128.112
511
 
    <FRACTION ONE HALF>          189      184      184      184      194.189  128.113
512
 
    <FRACTION THREE QUARTERS>    190      185      185      185      194.190  128.114
513
 
    <INVERTED QUESTION MARK>     191      171      171      171      194.191  128.115
514
 
    <A WITH GRAVE>               192      100      100      100      195.128  138.65
515
 
    <A WITH ACUTE>               193      101      101      101      195.129  138.66
516
 
    <A WITH CIRCUMFLEX>          194      98       98       98       195.130  138.67
517
 
    <A WITH TILDE>               195      102      102      102      195.131  138.68
518
 
    <A WITH DIAERESIS>           196      99       99       99       195.132  138.69
519
 
    <A WITH RING ABOVE>          197      103      103      103      195.133  138.70
520
 
    <CAPITAL LIGATURE AE>        198      158      158      158      195.134  138.71
521
 
    <C WITH CEDILLA>             199      104      104      104      195.135  138.72
522
 
    <E WITH GRAVE>               200      116      116      116      195.136  138.73
523
 
    <E WITH ACUTE>               201      113      113      113      195.137  138.74
524
 
    <E WITH CIRCUMFLEX>          202      114      114      114      195.138  138.81
525
 
    <E WITH DIAERESIS>           203      115      115      115      195.139  138.82
526
 
    <I WITH GRAVE>               204      120      120      120      195.140  138.83
527
 
    <I WITH ACUTE>               205      117      117      117      195.141  138.84
528
 
    <I WITH CIRCUMFLEX>          206      118      118      118      195.142  138.85
529
 
    <I WITH DIAERESIS>           207      119      119      119      195.143  138.86
530
 
    <CAPITAL LETTER ETH>         208      172      172      172      195.144  138.87
531
 
    <N WITH TILDE>               209      105      105      105      195.145  138.88
532
 
    <O WITH GRAVE>               210      237      237      237      195.146  138.89
533
 
    <O WITH ACUTE>               211      238      238      238      195.147  138.98
534
 
    <O WITH CIRCUMFLEX>          212      235      235      235      195.148  138.99
535
 
    <O WITH TILDE>               213      239      239      239      195.149  138.100
536
 
    <O WITH DIAERESIS>           214      236      236      236      195.150  138.101
537
 
    <MULTIPLICATION SIGN>        215      191      191      191      195.151  138.102
538
 
    <O WITH STROKE>              216      128      128      128      195.152  138.103
539
 
    <U WITH GRAVE>               217      253      253      224      195.153  138.104  ###
540
 
    <U WITH ACUTE>               218      254      254      254      195.154  138.105
541
 
    <U WITH CIRCUMFLEX>          219      251      251      221      195.155  138.106  ###
542
 
    <U WITH DIAERESIS>           220      252      252      252      195.156  138.112
543
 
    <Y WITH ACUTE>               221      173      186      173      195.157  138.113  *** ###
544
 
    <CAPITAL LETTER THORN>       222      174      174      174      195.158  138.114
545
 
    <SMALL LETTER SHARP S>       223      89       89       89       195.159  138.115
546
 
    <a WITH GRAVE>               224      68       68       68       195.160  139.65
547
 
    <a WITH ACUTE>               225      69       69       69       195.161  139.66
548
 
    <a WITH CIRCUMFLEX>          226      66       66       66       195.162  139.67
549
 
    <a WITH TILDE>               227      70       70       70       195.163  139.68
550
 
    <a WITH DIAERESIS>           228      67       67       67       195.164  139.69
551
 
    <a WITH RING ABOVE>          229      71       71       71       195.165  139.70
552
 
    <SMALL LIGATURE ae>          230      156      156      156      195.166  139.71
553
 
    <c WITH CEDILLA>             231      72       72       72       195.167  139.72
554
 
    <e WITH GRAVE>               232      84       84       84       195.168  139.73
555
 
    <e WITH ACUTE>               233      81       81       81       195.169  139.74
556
 
    <e WITH CIRCUMFLEX>          234      82       82       82       195.170  139.81
557
 
    <e WITH DIAERESIS>           235      83       83       83       195.171  139.82
558
 
    <i WITH GRAVE>               236      88       88       88       195.172  139.83
559
 
    <i WITH ACUTE>               237      85       85       85       195.173  139.84
560
 
    <i WITH CIRCUMFLEX>          238      86       86       86       195.174  139.85
561
 
    <i WITH DIAERESIS>           239      87       87       87       195.175  139.86
562
 
    <SMALL LETTER eth>           240      140      140      140      195.176  139.87
563
 
    <n WITH TILDE>               241      73       73       73       195.177  139.88
564
 
    <o WITH GRAVE>               242      205      205      205      195.178  139.89
565
 
    <o WITH ACUTE>               243      206      206      206      195.179  139.98
566
 
    <o WITH CIRCUMFLEX>          244      203      203      203      195.180  139.99
567
 
    <o WITH TILDE>               245      207      207      207      195.181  139.100
568
 
    <o WITH DIAERESIS>           246      204      204      204      195.182  139.101
569
 
    <DIVISION SIGN>              247      225      225      225      195.183  139.102
570
 
    <o WITH STROKE>              248      112      112      112      195.184  139.103
571
 
    <u WITH GRAVE>               249      221      221      192      195.185  139.104  ###
572
 
    <u WITH ACUTE>               250      222      222      222      195.186  139.105
573
 
    <u WITH CIRCUMFLEX>          251      219      219      219      195.187  139.106
574
 
    <u WITH DIAERESIS>           252      220      220      220      195.188  139.112
575
 
    <y WITH ACUTE>               253      141      141      141      195.189  139.113
576
 
    <SMALL LETTER thorn>         254      142      142      142      195.190  139.114
577
 
    <y WITH DIAERESIS>           255      223      223      223      195.191  139.115
 
317
                                      ISO 8859-1  CCSID    CCSID                    CCSID 1047
 
318
 chr                                  CCSID 0819  0037     1047    POSIX-BC  UTF-8  UTF-EBCDIC
 
319
 ----------------------------------------------------------------------------------------------
 
320
 <NULL>                                    0        0        0        0        0        0 
 
321
 <START OF HEADING>                        1        1        1        1        1        1
 
322
 <START OF TEXT>                           2        2        2        2        2        2
 
323
 <END OF TEXT>                             3        3        3        3        3        3
 
324
 <END OF TRANSMISSION>                     4        55       55       55       4        55 
 
325
 <ENQUIRY>                                 5        45       45       45       5        45 
 
326
 <ACKNOWLEDGE>                             6        46       46       46       6        46 
 
327
 <BELL>                                    7        47       47       47       7        47 
 
328
 <BACKSPACE>                               8        22       22       22       8        22 
 
329
 <HORIZONTAL TABULATION>                   9        5        5        5        9        5 
 
330
 <LINE FEED>                               10       37       21       21       10       21       ***
 
331
 <VERTICAL TABULATION>                     11       11       11       11       11       11
 
332
 <FORM FEED>                               12       12       12       12       12       12
 
333
 <CARRIAGE RETURN>                         13       13       13       13       13       13
 
334
 <SHIFT OUT>                               14       14       14       14       14       14
 
335
 <SHIFT IN>                                15       15       15       15       15       15
 
336
 <DATA LINK ESCAPE>                        16       16       16       16       16       16
 
337
 <DEVICE CONTROL ONE>                      17       17       17       17       17       17
 
338
 <DEVICE CONTROL TWO>                      18       18       18       18       18       18
 
339
 <DEVICE CONTROL THREE>                    19       19       19       19       19       19
 
340
 <DEVICE CONTROL FOUR>                     20       60       60       60       20       60
 
341
 <NEGATIVE ACKNOWLEDGE>                    21       61       61       61       21       61
 
342
 <SYNCHRONOUS IDLE>                        22       50       50       50       22       50
 
343
 <END OF TRANSMISSION BLOCK>               23       38       38       38       23       38
 
344
 <CANCEL>                                  24       24       24       24       24       24
 
345
 <END OF MEDIUM>                           25       25       25       25       25       25
 
346
 <SUBSTITUTE>                              26       63       63       63       26       63
 
347
 <ESCAPE>                                  27       39       39       39       27       39
 
348
 <FILE SEPARATOR>                          28       28       28       28       28       28
 
349
 <GROUP SEPARATOR>                         29       29       29       29       29       29
 
350
 <RECORD SEPARATOR>                        30       30       30       30       30       30
 
351
 <UNIT SEPARATOR>                          31       31       31       31       31       31
 
352
 <SPACE>                                   32       64       64       64       32       64
 
353
 !                                         33       90       90       90       33       90
 
354
 "                                         34       127      127      127      34       127
 
355
 #                                         35       123      123      123      35       123
 
356
 $                                         36       91       91       91       36       91
 
357
 %                                         37       108      108      108      37       108
 
358
 &                                         38       80       80       80       38       80
 
359
 '                                         39       125      125      125      39       125
 
360
 (                                         40       77       77       77       40       77
 
361
 )                                         41       93       93       93       41       93
 
362
 *                                         42       92       92       92       42       92
 
363
 +                                         43       78       78       78       43       78
 
364
 ,                                         44       107      107      107      44       107
 
365
 -                                         45       96       96       96       45       96
 
366
 .                                         46       75       75       75       46       75
 
367
 /                                         47       97       97       97       47       97
 
368
 0                                         48       240      240      240      48       240
 
369
 1                                         49       241      241      241      49       241
 
370
 2                                         50       242      242      242      50       242
 
371
 3                                         51       243      243      243      51       243
 
372
 4                                         52       244      244      244      52       244
 
373
 5                                         53       245      245      245      53       245
 
374
 6                                         54       246      246      246      54       246
 
375
 7                                         55       247      247      247      55       247
 
376
 8                                         56       248      248      248      56       248
 
377
 9                                         57       249      249      249      57       249
 
378
 :                                         58       122      122      122      58       122
 
379
 ;                                         59       94       94       94       59       94
 
380
 <                                         60       76       76       76       60       76
 
381
 =                                         61       126      126      126      61       126
 
382
 >                                         62       110      110      110      62       110
 
383
 ?                                         63       111      111      111      63       111
 
384
 @                                         64       124      124      124      64       124
 
385
 A                                         65       193      193      193      65       193
 
386
 B                                         66       194      194      194      66       194
 
387
 C                                         67       195      195      195      67       195
 
388
 D                                         68       196      196      196      68       196
 
389
 E                                         69       197      197      197      69       197
 
390
 F                                         70       198      198      198      70       198
 
391
 G                                         71       199      199      199      71       199
 
392
 H                                         72       200      200      200      72       200
 
393
 I                                         73       201      201      201      73       201
 
394
 J                                         74       209      209      209      74       209
 
395
 K                                         75       210      210      210      75       210
 
396
 L                                         76       211      211      211      76       211
 
397
 M                                         77       212      212      212      77       212
 
398
 N                                         78       213      213      213      78       213
 
399
 O                                         79       214      214      214      79       214
 
400
 P                                         80       215      215      215      80       215
 
401
 Q                                         81       216      216      216      81       216
 
402
 R                                         82       217      217      217      82       217
 
403
 S                                         83       226      226      226      83       226
 
404
 T                                         84       227      227      227      84       227
 
405
 U                                         85       228      228      228      85       228
 
406
 V                                         86       229      229      229      86       229
 
407
 W                                         87       230      230      230      87       230
 
408
 X                                         88       231      231      231      88       231
 
409
 Y                                         89       232      232      232      89       232
 
410
 Z                                         90       233      233      233      90       233
 
411
 [                                         91       186      173      187      91       173      *** ###
 
412
 \                                         92       224      224      188      92       224      ### 
 
413
 ]                                         93       187      189      189      93       189      ***
 
414
 ^                                         94       176      95       106      94       95       *** ###
 
415
 _                                         95       109      109      109      95       109
 
416
 `                                         96       121      121      74       96       121      ###
 
417
 a                                         97       129      129      129      97       129
 
418
 b                                         98       130      130      130      98       130
 
419
 c                                         99       131      131      131      99       131
 
420
 d                                         100      132      132      132      100      132
 
421
 e                                         101      133      133      133      101      133
 
422
 f                                         102      134      134      134      102      134
 
423
 g                                         103      135      135      135      103      135
 
424
 h                                         104      136      136      136      104      136
 
425
 i                                         105      137      137      137      105      137
 
426
 j                                         106      145      145      145      106      145
 
427
 k                                         107      146      146      146      107      146
 
428
 l                                         108      147      147      147      108      147
 
429
 m                                         109      148      148      148      109      148
 
430
 n                                         110      149      149      149      110      149
 
431
 o                                         111      150      150      150      111      150
 
432
 p                                         112      151      151      151      112      151
 
433
 q                                         113      152      152      152      113      152
 
434
 r                                         114      153      153      153      114      153
 
435
 s                                         115      162      162      162      115      162
 
436
 t                                         116      163      163      163      116      163
 
437
 u                                         117      164      164      164      117      164
 
438
 v                                         118      165      165      165      118      165
 
439
 w                                         119      166      166      166      119      166
 
440
 x                                         120      167      167      167      120      167
 
441
 y                                         121      168      168      168      121      168
 
442
 z                                         122      169      169      169      122      169
 
443
 {                                         123      192      192      251      123      192      ###
 
444
 |                                         124      79       79       79       124      79
 
445
 }                                         125      208      208      253      125      208      ###
 
446
 ~                                         126      161      161      255      126      161      ###
 
447
 <DELETE>                                  127      7        7        7        127      7
 
448
 <PADDING CHARACTER>                       128      32       32       32       194.128  32
 
449
 <HIGH OCTET PRESET>                       129      33       33       33       194.129  33
 
450
 <BREAK PERMITTED HERE>                    130      34       34       34       194.130  34
 
451
 <NO BREAK HERE>                           131      35       35       35       194.131  35
 
452
 <INDEX>                                   132      36       36       36       194.132  36
 
453
 <NEXT LINE>                               133      21       37       37       194.133  37       ***
 
454
 <START OF SELECTED AREA>                  134      6        6        6        194.134  6
 
455
 <END OF SELECTED AREA>                    135      23       23       23       194.135  23
 
456
 <CHARACTER TABULATION SET>                136      40       40       40       194.136  40
 
457
 <CHARACTER TABULATION WITH JUSTIFICATION> 137      41       41       41       194.137  41
 
458
 <LINE TABULATION SET>                     138      42       42       42       194.138  42
 
459
 <PARTIAL LINE FORWARD>                    139      43       43       43       194.139  43
 
460
 <PARTIAL LINE BACKWARD>                   140      44       44       44       194.140  44
 
461
 <REVERSE LINE FEED>                       141      9        9        9        194.141  9
 
462
 <SINGLE SHIFT TWO>                        142      10       10       10       194.142  10
 
463
 <SINGLE SHIFT THREE>                      143      27       27       27       194.143  27
 
464
 <DEVICE CONTROL STRING>                   144      48       48       48       194.144  48
 
465
 <PRIVATE USE ONE>                         145      49       49       49       194.145  49
 
466
 <PRIVATE USE TWO>                         146      26       26       26       194.146  26
 
467
 <SET TRANSMIT STATE>                      147      51       51       51       194.147  51
 
468
 <CANCEL CHARACTER>                        148      52       52       52       194.148  52
 
469
 <MESSAGE WAITING>                         149      53       53       53       194.149  53
 
470
 <START OF GUARDED AREA>                   150      54       54       54       194.150  54
 
471
 <END OF GUARDED AREA>                     151      8        8        8        194.151  8
 
472
 <START OF STRING>                         152      56       56       56       194.152  56
 
473
 <SINGLE GRAPHIC CHARACTER INTRODUCER>     153      57       57       57       194.153  57
 
474
 <SINGLE CHARACTER INTRODUCER>             154      58       58       58       194.154  58
 
475
 <CONTROL SEQUENCE INTRODUCER>             155      59       59       59       194.155  59
 
476
 <STRING TERMINATOR>                       156      4        4        4        194.156  4
 
477
 <OPERATING SYSTEM COMMAND>                157      20       20       20       194.157  20
 
478
 <PRIVACY MESSAGE>                         158      62       62       62       194.158  62
 
479
 <APPLICATION PROGRAM COMMAND>             159      255      255      95       194.159  255      ###
 
480
 <NON-BREAKING SPACE>                      160      65       65       65       194.160  128.65
 
481
 <INVERTED EXCLAMATION MARK>               161      170      170      170      194.161  128.66
 
482
 <CENT SIGN>                               162      74       74       176      194.162  128.67   ###
 
483
 <POUND SIGN>                              163      177      177      177      194.163  128.68
 
484
 <CURRENCY SIGN>                           164      159      159      159      194.164  128.69
 
485
 <YEN SIGN>                                165      178      178      178      194.165  128.70
 
486
 <BROKEN BAR>                              166      106      106      208      194.166  128.71   ###
 
487
 <SECTION SIGN>                            167      181      181      181      194.167  128.72
 
488
 <DIAERESIS>                               168      189      187      121      194.168  128.73   *** ###
 
489
 <COPYRIGHT SIGN>                          169      180      180      180      194.169  128.74
 
490
 <FEMININE ORDINAL INDICATOR>              170      154      154      154      194.170  128.81
 
491
 <LEFT POINTING GUILLEMET>                 171      138      138      138      194.171  128.82
 
492
 <NOT SIGN>                                172      95       176      186      194.172  128.83   *** ###
 
493
 <SOFT HYPHEN>                             173      202      202      202      194.173  128.84
 
494
 <REGISTERED TRADE MARK SIGN>              174      175      175      175      194.174  128.85
 
495
 <MACRON>                                  175      188      188      161      194.175  128.86   ###
 
496
 <DEGREE SIGN>                             176      144      144      144      194.176  128.87
 
497
 <PLUS-OR-MINUS SIGN>                      177      143      143      143      194.177  128.88
 
498
 <SUPERSCRIPT TWO>                         178      234      234      234      194.178  128.89
 
499
 <SUPERSCRIPT THREE>                       179      250      250      250      194.179  128.98
 
500
 <ACUTE ACCENT>                            180      190      190      190      194.180  128.99
 
501
 <MICRO SIGN>                              181      160      160      160      194.181  128.100
 
502
 <PARAGRAPH SIGN>                          182      182      182      182      194.182  128.101
 
503
 <MIDDLE DOT>                              183      179      179      179      194.183  128.102
 
504
 <CEDILLA>                                 184      157      157      157      194.184  128.103
 
505
 <SUPERSCRIPT ONE>                         185      218      218      218      194.185  128.104
 
506
 <MASC. ORDINAL INDICATOR>                 186      155      155      155      194.186  128.105
 
507
 <RIGHT POINTING GUILLEMET>                187      139      139      139      194.187  128.106
 
508
 <FRACTION ONE QUARTER>                    188      183      183      183      194.188  128.112
 
509
 <FRACTION ONE HALF>                       189      184      184      184      194.189  128.113
 
510
 <FRACTION THREE QUARTERS>                 190      185      185      185      194.190  128.114
 
511
 <INVERTED QUESTION MARK>                  191      171      171      171      194.191  128.115
 
512
 <A WITH GRAVE>                            192      100      100      100      195.128  138.65
 
513
 <A WITH ACUTE>                            193      101      101      101      195.129  138.66
 
514
 <A WITH CIRCUMFLEX>                       194      98       98       98       195.130  138.67
 
515
 <A WITH TILDE>                            195      102      102      102      195.131  138.68
 
516
 <A WITH DIAERESIS>                        196      99       99       99       195.132  138.69
 
517
 <A WITH RING ABOVE>                       197      103      103      103      195.133  138.70
 
518
 <CAPITAL LIGATURE AE>                     198      158      158      158      195.134  138.71
 
519
 <C WITH CEDILLA>                          199      104      104      104      195.135  138.72
 
520
 <E WITH GRAVE>                            200      116      116      116      195.136  138.73
 
521
 <E WITH ACUTE>                            201      113      113      113      195.137  138.74
 
522
 <E WITH CIRCUMFLEX>                       202      114      114      114      195.138  138.81
 
523
 <E WITH DIAERESIS>                        203      115      115      115      195.139  138.82
 
524
 <I WITH GRAVE>                            204      120      120      120      195.140  138.83
 
525
 <I WITH ACUTE>                            205      117      117      117      195.141  138.84
 
526
 <I WITH CIRCUMFLEX>                       206      118      118      118      195.142  138.85
 
527
 <I WITH DIAERESIS>                        207      119      119      119      195.143  138.86
 
528
 <CAPITAL LETTER ETH>                      208      172      172      172      195.144  138.87
 
529
 <N WITH TILDE>                            209      105      105      105      195.145  138.88
 
530
 <O WITH GRAVE>                            210      237      237      237      195.146  138.89
 
531
 <O WITH ACUTE>                            211      238      238      238      195.147  138.98
 
532
 <O WITH CIRCUMFLEX>                       212      235      235      235      195.148  138.99
 
533
 <O WITH TILDE>                            213      239      239      239      195.149  138.100
 
534
 <O WITH DIAERESIS>                        214      236      236      236      195.150  138.101
 
535
 <MULTIPLICATION SIGN>                     215      191      191      191      195.151  138.102
 
536
 <O WITH STROKE>                           216      128      128      128      195.152  138.103
 
537
 <U WITH GRAVE>                            217      253      253      224      195.153  138.104  ###
 
538
 <U WITH ACUTE>                            218      254      254      254      195.154  138.105
 
539
 <U WITH CIRCUMFLEX>                       219      251      251      221      195.155  138.106  ###
 
540
 <U WITH DIAERESIS>                        220      252      252      252      195.156  138.112
 
541
 <Y WITH ACUTE>                            221      173      186      173      195.157  138.113  *** ###
 
542
 <CAPITAL LETTER THORN>                    222      174      174      174      195.158  138.114
 
543
 <SMALL LETTER SHARP S>                    223      89       89       89       195.159  138.115
 
544
 <a WITH GRAVE>                            224      68       68       68       195.160  139.65
 
545
 <a WITH ACUTE>                            225      69       69       69       195.161  139.66
 
546
 <a WITH CIRCUMFLEX>                       226      66       66       66       195.162  139.67
 
547
 <a WITH TILDE>                            227      70       70       70       195.163  139.68
 
548
 <a WITH DIAERESIS>                        228      67       67       67       195.164  139.69
 
549
 <a WITH RING ABOVE>                       229      71       71       71       195.165  139.70
 
550
 <SMALL LIGATURE ae>                       230      156      156      156      195.166  139.71
 
551
 <c WITH CEDILLA>                          231      72       72       72       195.167  139.72
 
552
 <e WITH GRAVE>                            232      84       84       84       195.168  139.73
 
553
 <e WITH ACUTE>                            233      81       81       81       195.169  139.74
 
554
 <e WITH CIRCUMFLEX>                       234      82       82       82       195.170  139.81
 
555
 <e WITH DIAERESIS>                        235      83       83       83       195.171  139.82
 
556
 <i WITH GRAVE>                            236      88       88       88       195.172  139.83
 
557
 <i WITH ACUTE>                            237      85       85       85       195.173  139.84
 
558
 <i WITH CIRCUMFLEX>                       238      86       86       86       195.174  139.85
 
559
 <i WITH DIAERESIS>                        239      87       87       87       195.175  139.86
 
560
 <SMALL LETTER eth>                        240      140      140      140      195.176  139.87
 
561
 <n WITH TILDE>                            241      73       73       73       195.177  139.88
 
562
 <o WITH GRAVE>                            242      205      205      205      195.178  139.89
 
563
 <o WITH ACUTE>                            243      206      206      206      195.179  139.98
 
564
 <o WITH CIRCUMFLEX>                       244      203      203      203      195.180  139.99
 
565
 <o WITH TILDE>                            245      207      207      207      195.181  139.100
 
566
 <o WITH DIAERESIS>                        246      204      204      204      195.182  139.101
 
567
 <DIVISION SIGN>                           247      225      225      225      195.183  139.102
 
568
 <o WITH STROKE>                           248      112      112      112      195.184  139.103
 
569
 <u WITH GRAVE>                            249      221      221      192      195.185  139.104  ###
 
570
 <u WITH ACUTE>                            250      222      222      222      195.186  139.105
 
571
 <u WITH CIRCUMFLEX>                       251      219      219      219      195.187  139.106
 
572
 <u WITH DIAERESIS>                        252      220      220      220      195.188  139.112
 
573
 <y WITH ACUTE>                            253      141      141      141      195.189  139.113
 
574
 <SMALL LETTER thorn>                      254      142      142      142      195.190  139.114
 
575
 <y WITH DIAERESIS>                        255      223      223      223      195.191  139.115
578
576
 
579
577
If you would rather see the above table in CCSID 0037 order rather than
580
578
ASCII + Latin-1 order then run the table through:
585
583
 
586
584
=back
587
585
 
588
 
    perl -ne 'if(/.{33}\d{1,3}\s{6,8}\d{1,3}\s{6,8}\d{1,3}\s{6,8}\d{1,3}/)'\
 
586
    perl -ne 'if(/.{43}\d{1,3}\s{6,8}\d{1,3}\s{6,8}\d{1,3}\s{6,8}\d{1,3}/)'\
589
587
     -e '{push(@l,$_)}' \
590
588
     -e 'END{print map{$_->[0]}' \
591
589
     -e '          sort{$a->[1] <=> $b->[1]}' \
592
 
     -e '          map{[$_,substr($_,42,3)]}@l;}' perlebcdic.pod
 
590
     -e '          map{[$_,substr($_,52,3)]}@l;}' perlebcdic.pod
593
591
 
594
 
If you would rather see it in CCSID 1047 order then change the digit
595
 
42 in the last line to 51, like this:
 
592
If you would rather see it in CCSID 1047 order then change the number
 
593
52 in the last line to 61, like this:
596
594
 
597
595
=over 4
598
596
 
600
598
 
601
599
=back
602
600
 
603
 
    perl -ne 'if(/.{33}\d{1,3}\s{6,8}\d{1,3}\s{6,8}\d{1,3}\s{6,8}\d{1,3}/)'\
 
601
    perl -ne 'if(/.{43}\d{1,3}\s{6,8}\d{1,3}\s{6,8}\d{1,3}\s{6,8}\d{1,3}/)'\
604
602
     -e '{push(@l,$_)}' \
605
603
     -e 'END{print map{$_->[0]}' \
606
604
     -e '          sort{$a->[1] <=> $b->[1]}' \
607
 
     -e '          map{[$_,substr($_,51,3)]}@l;}' perlebcdic.pod
 
605
     -e '          map{[$_,substr($_,61,3)]}@l;}' perlebcdic.pod
608
606
 
609
 
If you would rather see it in POSIX-BC order then change the digit
610
 
51 in the last line to 60, like this:
 
607
If you would rather see it in POSIX-BC order then change the number
 
608
61 in the last line to 70, like this:
611
609
 
612
610
=over 4
613
611
 
615
613
 
616
614
=back
617
615
 
618
 
    perl -ne 'if(/.{33}\d{1,3}\s{6,8}\d{1,3}\s{6,8}\d{1,3}\s{6,8}\d{1,3}/)'\
 
616
    perl -ne 'if(/.{43}\d{1,3}\s{6,8}\d{1,3}\s{6,8}\d{1,3}\s{6,8}\d{1,3}/)'\
619
617
     -e '{push(@l,$_)}' \
620
618
     -e 'END{print map{$_->[0]}' \
621
619
     -e '          sort{$a->[1] <=> $b->[1]}' \
622
 
     -e '          map{[$_,substr($_,60,3)]}@l;}' perlebcdic.pod
 
620
     -e '          map{[$_,substr($_,70,3)]}@l;}' perlebcdic.pod
623
621
 
624
622
 
625
623
=head1 IDENTIFYING CHARACTER CODE SETS
758
756
 
759
757
An interesting property of the 32 C0 control characters
760
758
in the ASCII table is that they can "literally" be constructed
761
 
as control characters in perl, e.g. C<(chr(0) eq "\c@")> 
762
 
C<(chr(1) eq "\cA")>, and so on.  Perl on EBCDIC platforms has been 
763
 
ported to take "\c@" to chr(0) and "\cA" to chr(1) as well, but the
 
759
as control characters in perl, e.g. C<(chr(0) eq C<\c@>)> 
 
760
C<(chr(1) eq C<\cA>)>, and so on.  Perl on EBCDIC platforms has been 
 
761
ported to take C<\c@> to chr(0) and C<\cA> to chr(1), etc. as well, but the
764
762
thirty three characters that result depend on which code page you are
765
 
using.  The table below uses the character names from the previous table 
766
 
but with substitutions such as s/START OF/S.O./; s/END OF /E.O./; 
767
 
s/TRANSMISSION/TRANS./; s/TABULATION/TAB./; s/VERTICAL/VERT./; 
768
 
s/HORIZONTAL/HORIZ./; s/DEVICE CONTROL/D.C./; s/SEPARATOR/SEP./; 
769
 
s/NEGATIVE ACKNOWLEDGE/NEG. ACK./;.  The POSIX-BC and 1047 sets are
 
763
using.  The table below uses the standard acronyms for the controls.
 
764
The POSIX-BC and 1047 sets are
770
765
identical throughout this range and differ from the 0037 set at only 
771
766
one spot (21 decimal).  Note that the C<LINE FEED> character
772
 
may be generated by "\cJ" on ASCII platforms but by "\cU" on 1047 or POSIX-BC 
 
767
may be generated by C<\cJ> on ASCII platforms but by C<\cU> on 1047 or POSIX-BC 
773
768
platforms and cannot be generated as a C<"\c.letter."> control character on 
774
 
0037 platforms.  Note also that "\c\\" maps to two characters
775
 
not one.
776
 
 
777
 
    chr   ord  8859-1               0037                1047 && POSIX-BC     
778
 
    ------------------------------------------------------------------------
779
 
    "\c?" 127  <DELETE>             "                   "              ***><
780
 
    "\c@"   0  <NULL>               <NULL>              <NULL>         ***><
781
 
    "\cA"   1  <S.O. HEADING>       <S.O. HEADING>      <S.O. HEADING> 
782
 
    "\cB"   2  <S.O. TEXT>          <S.O. TEXT>         <S.O. TEXT>
783
 
    "\cC"   3  <E.O. TEXT>          <E.O. TEXT>         <E.O. TEXT>
784
 
    "\cD"   4  <E.O. TRANS.>        <C1 28>             <C1 28> 
785
 
    "\cE"   5  <ENQUIRY>            <HORIZ. TAB.>       <HORIZ. TAB.>    
786
 
    "\cF"   6  <ACKNOWLEDGE>        <C1 6>              <C1 6>   
787
 
    "\cG"   7  <BELL>               <DELETE>            <DELETE>   
788
 
    "\cH"   8  <BACKSPACE>          <C1 23>             <C1 23>
789
 
    "\cI"   9  <HORIZ. TAB.>        <C1 13>             <C1 13>
790
 
    "\cJ"  10  <LINE FEED>          <C1 14>             <C1 14>
791
 
    "\cK"  11  <VERT. TAB.>         <VERT. TAB.>        <VERT. TAB.>
792
 
    "\cL"  12  <FORM FEED>          <FORM FEED>         <FORM FEED>    
793
 
    "\cM"  13  <CARRIAGE RETURN>    <CARRIAGE RETURN>   <CARRIAGE RETURN> 
794
 
    "\cN"  14  <SHIFT OUT>          <SHIFT OUT>         <SHIFT OUT>
795
 
    "\cO"  15  <SHIFT IN>           <SHIFT IN>          <SHIFT IN>
796
 
    "\cP"  16  <DATA LINK ESCAPE>   <DATA LINK ESCAPE>  <DATA LINK ESCAPE> 
797
 
    "\cQ"  17  <D.C. ONE>           <D.C. ONE>          <D.C. ONE>
798
 
    "\cR"  18  <D.C. TWO>           <D.C. TWO>          <D.C. TWO>
799
 
    "\cS"  19  <D.C. THREE>         <D.C. THREE>        <D.C. THREE> 
800
 
    "\cT"  20  <D.C. FOUR>          <C1 29>             <C1 29> 
801
 
    "\cU"  21  <NEG. ACK.>          <C1 5>              <LINE FEED>    ***
802
 
    "\cV"  22  <SYNCHRONOUS IDLE>   <BACKSPACE>         <BACKSPACE>
803
 
    "\cW"  23  <E.O. TRANS. BLOCK>  <C1 7>              <C1 7>
804
 
    "\cX"  24  <CANCEL>             <CANCEL>            <CANCEL>
805
 
    "\cY"  25  <E.O. MEDIUM>        <E.O. MEDIUM>       <E.O. MEDIUM>
806
 
    "\cZ"  26  <SUBSTITUTE>         <C1 18>             <C1 18>
807
 
    "\c["  27  <ESCAPE>             <C1 15>             <C1 15>
808
 
    "\c\\" 28  <FILE SEP.>\         <FILE SEP.>\        <FILE SEP.>\
809
 
    "\c]"  29  <GROUP SEP.>         <GROUP SEP.>        <GROUP SEP.>
810
 
    "\c^"  30  <RECORD SEP.>        <RECORD SEP.>       <RECORD SEP.>  ***><
811
 
    "\c_"  31  <UNIT SEP.>          <UNIT SEP.>         <UNIT SEP.>    ***><
812
 
 
 
769
0037 platforms.  Note also that C<\c\> cannot be the final element in a string
 
770
or regex, as it will absorb the terminator.   But C<\c\I<X>> is a C<FILE
 
771
SEPARATOR> concatenated with I<X> for all I<X>.
 
772
 
 
773
 chr   ord   8859-1    0037    1047 && POSIX-BC     
 
774
 ------------------------------------------------------------------------
 
775
 \c?   127   <DEL>       "            "    
 
776
 \c@     0   <NUL>     <NUL>        <NUL>
 
777
 \cA     1   <SOH>     <SOH>        <SOH> 
 
778
 \cB     2   <STX>     <STX>        <STX>
 
779
 \cC     3   <ETX>     <ETX>        <ETX>
 
780
 \cD     4   <EOT>     <ST>         <ST>    
 
781
 \cE     5   <ENQ>     <HT>         <HT>    
 
782
 \cF     6   <ACK>     <SSA>        <SSA>    
 
783
 \cG     7   <BEL>     <DEL>        <DEL>   
 
784
 \cH     8   <BS>      <EPA>        <EPA>  
 
785
 \cI     9   <HT>      <RI>         <RI>   
 
786
 \cJ    10   <LF>      <SS2>        <SS2>  
 
787
 \cK    11   <VT>      <VT>         <VT>
 
788
 \cL    12   <FF>      <FF>         <FF>    
 
789
 \cM    13   <CR>      <CR>         <CR> 
 
790
 \cN    14   <SO>      <SO>         <SO>
 
791
 \cO    15   <SI>      <SI>         <SI>
 
792
 \cP    16   <DLE>     <DLE>        <DLE> 
 
793
 \cQ    17   <DC1>     <DC1>        <DC1>
 
794
 \cR    18   <DC2>     <DC2>        <DC2>
 
795
 \cS    19   <DC3>     <DC3>        <DC3> 
 
796
 \cT    20   <DC4>     <OSC>        <OSC>   
 
797
 \cU    21   <NAK>     <NEL>        <LF>              ***
 
798
 \cV    22   <SYN>     <BS>         <BS>
 
799
 \cW    23   <ETB>     <ESA>        <ESA> 
 
800
 \cX    24   <CAN>     <CAN>        <CAN>
 
801
 \cY    25   <EOM>     <EOM>        <EOM>
 
802
 \cZ    26   <SUB>     <PU2>        <PU2>  
 
803
 \c[    27   <ESC>     <SS3>        <SS3>  
 
804
 \c\X   28   <FS>X     <FS>X        <FS>X
 
805
 \c]    29   <GS>      <GS>         <GS>
 
806
 \c^    30   <RS>      <RS>         <RS>
 
807
 \c_    31   <US>      <US>         <US>
813
808
 
814
809
=head1 FUNCTION DIFFERENCES
815
810
 
948
943
        if (ord('^')==94)  { # ascii
949
944
            return $char =~ /[\000-\037]/;
950
945
        } 
951
 
        if (ord('^')==176) { # 37
 
946
        if (ord('^')==176) { # 0037
952
947
            return $char =~ /[\000-\003\067\055-\057\026\005\045\013-\023\074\075\062\046\030\031\077\047\034-\037]/;
953
948
        }
954
949
        if (ord('^')==95 || ord('^')==106) { # 1047 || posix-bc
976
971
        if (ord('^')==94)  { # ascii
977
972
            return $char =~ /[\200-\237]/;
978
973
        }
979
 
        if (ord('^')==176) { # 37
 
974
        if (ord('^')==176) { # 0037
980
975
            return $char =~ /[\040-\044\025\006\027\050-\054\011\012\033\060\061\032\063-\066\010\070-\073\040\024\076\377]/;
981
976
        }
982
977
        if (ord('^')==95)  { # 1047
993
988
        if (ord('^')==94)  { # ascii
994
989
            return $char =~ /[\240-\377]/;
995
990
        }
996
 
        if (ord('^')==176) { # 37
 
991
        if (ord('^')==176) { # 0037
997
992
            return $char =~ 
998
993
              /[\101\252\112\261\237\262\152\265\275\264\232\212\137\312\257\274\220\217\352\372\276\240\266\263\235\332\233\213\267\270\271\253\144\145\142\146\143\147\236\150\164\161-\163\170\165-\167\254\151\355\356\353\357\354\277\200\375\376\373\374\255\256\131\104\105\102\106\103\107\234\110\124\121-\123\130\125-\127\214\111\315\316\313\317\314\341\160\335\336\333\334\215\216\337]/;
999
994
        }
1427
1422
Joe Smith.  Trademarks, registered trademarks, service marks and 
1428
1423
registered service marks used in this document are the property of 
1429
1424
their respective owners.
1430
 
 
1431