HP3000-L Archives

May 2008, Week 5

HP3000-L@RAVEN.UTC.EDU

Options: Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Subject:
From:
Brian Donaldson <[log in to unmask]>
Reply To:
Brian Donaldson <[log in to unmask]>
Date:
Sat, 31 May 2008 20:06:27 -0400
Content-Type:
text/plain
Parts/Attachments:
text/plain (166 lines)
Here's what I figured out with the ORD function:

A = +0066
B = +0067
C = +0068
D = +0069
E = +0070
F = +0071
G = +0072
H = +0073
I = +0074
J = +0075
K = +0076
L = +0077
M = +0078
N = +0079
O = +0080
P = +0081
Q = +0082
R = +0083
S = +0084
T = +0085
U = +0086
V = +0087
W = +0088
X = +0089
Y = +0090
Z = +0091
---------------------------------
a = +0098
b = +0099
c = +0100
d = +0101
e = +0102
f = +0103
g = +0104
h = +0105
i = +0106
j = +0107
k = +0108
l = +0109
m = +0110
n = +0111
o = +0112
p = +0113
q = +0114
r = +0115
s = +0116
t = +0117
u = +0118
v = +0119
w = +0120
x = +0121
y = +0122
z = +0123
---------------------------------
0 = +0049
1 = +0050
2 = +0051
3 = +0052
4 = +0053
5 = +0054
6 = +0055
7 = +0056
8 = +0057
9 = +0058

Easy to write a quickie program to do the above.

However, it beats me why anyone would need to know this seemingly useless
information. There are apps out there that would need to know this? :-)

Here is the Cobol source to give you the above:

 IDENTIFICATION DIVISION.
 PROGRAM-ID. ORDINALFUNCTION.
 ENVIRONMENT DIVISION.
 CONFIGURATION SECTION.
 SPECIAL-NAMES. CONDITION-CODE IS C-C.
 DATA DIVISION.
 WORKING-STORAGE SECTION.
 01  WS-ALPHA-TABLE.
     05  FILLER PIC X(26) VALUE 
     "ABCDEFGHIJKLMNOPQRSTUVWXYZ".
 01  WS-ALPHA-TABEL REDEFINES
     WS-ALPHA-TABLE.
     05  WS-AT       PIC  X(01) OCCURS 26.

 01  WS-ALPHA-TABLE-2.
     05  FILLER PIC X(26) VALUE 
     "abcdefghijklmnopqrstuvwxyz".
 01  WS-ALPHA-TABEL-2 REDEFINES
     WS-ALPHA-TABLE-2.
     05  WS-AT-2     PIC  X(01) OCCURS 26.

 01  WS-AT-LENGTH    PIC S9(04) COMP VALUE ZEROES.
 01  WS-ORD-NUM      PIC S9(04) COMP VALUE ZEROES.
 01  WS-SUB          PIC S9(04) COMP VALUE ZEROES.
  PROCEDURE DIVISION.
 A000-MAINLINE.
 
     COMPUTE WS-AT-LENGTH = FUNCTION LENGTH(WS-ALPHA-TABLE)
     PERFORM VARYING WS-SUB FROM 1 BY 1
               UNTIL WS-SUB > WS-AT-LENGTH
        COMPUTE WS-ORD-NUM = FUNCTION ORD(WS-AT (WS-SUB))
        DISPLAY WS-AT (WS-SUB) " = " WS-ORD-NUM
     END-PERFORM

     DISPLAY "---------------------------------".

     PERFORM VARYING WS-SUB FROM 1 BY 1
               UNTIL WS-SUB > WS-AT-LENGTH
        COMPUTE WS-ORD-NUM = FUNCTION ORD(WS-AT-2 (WS-SUB))
        DISPLAY WS-AT-2 (WS-SUB) " = " WS-ORD-NUM
     END-PERFORM

     DISPLAY "---------------------------------".

     COMPUTE WS-ORD-NUM = FUNCTION ORD("0")
     DISPLAY "0 = " WS-ORD-NUM
     COMPUTE WS-ORD-NUM = FUNCTION ORD("1")
     DISPLAY "1 = " WS-ORD-NUM
     COMPUTE WS-ORD-NUM = FUNCTION ORD("2")
     DISPLAY "2 = " WS-ORD-NUM
     COMPUTE WS-ORD-NUM = FUNCTION ORD("3")
     DISPLAY "3 = " WS-ORD-NUM
     COMPUTE WS-ORD-NUM = FUNCTION ORD("4")
     DISPLAY "4 = " WS-ORD-NUM
     COMPUTE WS-ORD-NUM = FUNCTION ORD("5")
     DISPLAY "5 = " WS-ORD-NUM
     COMPUTE WS-ORD-NUM = FUNCTION ORD("6")
     DISPLAY "6 = " WS-ORD-NUM
     COMPUTE WS-ORD-NUM = FUNCTION ORD("7")
     DISPLAY "7 = " WS-ORD-NUM
     COMPUTE WS-ORD-NUM = FUNCTION ORD("8")
     DISPLAY "8 = " WS-ORD-NUM
     COMPUTE WS-ORD-NUM = FUNCTION ORD("9")
     DISPLAY "9 = " WS-ORD-NUM
     STOP RUN.

HTH,
Brian Donaldson.

On Fri, 30 May 2008 05:48:04 -0400, ianne <[log in to unmask]>
wrote:

>Hi everyone,
>
>In a COBOL program, if I have this line:
>     compute var = function ord(<certain char>) - 161
>what does it actually compute?
>
>Also, if you happen to know too. Given that's how to compute a certain 
>character (above equation), would you know the range of integer of control 
>characters? Or even just the ordinal position of all control characters
[function 
>ord()]?
>
>Thanks a lot! =)
>
>* To join/leave the list, search archives, change list settings, *
>* etc., please visit http://raven.utc.edu/archives/hp3000-l.html *

* To join/leave the list, search archives, change list settings, *
* etc., please visit http://raven.utc.edu/archives/hp3000-l.html *

ATOM RSS1 RSS2