COMP-3 field occupy ?
Answers were Sorted based on User's Feedback
Answer / phani
if n is even, then n/2 + 1 bytes
if n is odd, then int(n+1/2) bytes
every time rightmost 1/2 byte is used to store sign value.
| Is This Answer Correct ? | 5 Yes | 3 No |
Answer / sp
Its not even and odd. Its jst (n+1)/2. If aftre calculation
we are getting decimal value then it will roundeed to next
value.
| Is This Answer Correct ? | 4 Yes | 2 No |
Answer / vasanth
No it should be M+N/2 for bytes allocation in case of
variable var1 pic 9(6)v99 comp-3
where M=6 and N=2
The limit of comp-3 variable declartion is EX: var1 s9(18)
comp-3
| Is This Answer Correct ? | 9 Yes | 9 No |
Answer / vasanth
I guess there is no Odd and Even theory in case of COMP-3
variable memory allocation calculation.
If there is an fractional output of M+N/2+1
Then the value is rounded off to its next value accordingly.
| Is This Answer Correct ? | 2 Yes | 2 No |
Answer / sid
Hi Friends;
Here I want to contribute a few lines in this discussion,
those might helpful to understand it very clearly.
BINARY
Specified for binary data items. Such items have a decimal
equivalent
consisting of the decimal digits 0 through 9, plus a sign.
Negative numbers
are represented as the two's complement of the positive
number with the same absolute value. The amount of storage
occupied by a binary item depends on the number of decimal
digits defined in its PICTURE clause:
1 through 4 2 bytes (halfword)
5 through 9 4 bytes (fullword)
10 through 18 8 bytes (doubleword)
The operational sign for ?big-endian? binary data (such as
OS/390 and VM) is contained in the left most bit of the
binary data. The operational sign for ?little-endian? binary
data is contained in the left most bit of the right most
byte of the binary data.
PACKED-DECIMAL
Specified for internal decimal items. Such an item appears
in storage in
packed decimal format. There are 2 digits for each character
position, except for the trailing character position, which
is occupied by the low-order digit and the sign. Such an
item can contain any of the digits 0 through 9, plus a sign,
representing a value not exceeding 18 decimal digits.
The sign representation uses the same bit configuration as
the 4-bit sign
representation in zoned decimal fields.
Following is the range I found in a IBM COBOL Programming manual
Picture Storage representation Numeric values
S9(1) through S9(4) Binary half-word (2 bytes) -32768
through +32767
S9(5) through S9(9) Binary full-word (4 bytes)
-2,147,483,648 through
+2,147,483,647
S9(10) through S9(18) Binary double-word (8bytes)
-9,223,372,036,854,775,808 through +9.223,372,036,854,775,807
9(1) through 9(4) Binary half-word (2 bytes) 0 through 65535
9(5) through 9(9) Binary full-word (4 bytes) 0 through
4,294,967,295
9(10) through 9(18) Binary double-word (8bytes) 0 through
18,446,744,073,709,551,615
| Is This Answer Correct ? | 1 Yes | 2 No |
Comp3 will occupy from s9(1) to s9(18) . it wont exceed more
than it . So max value of comp3 is 10 bytes
i.e, 18/2 +1 = 9 + 1 = 10 bytes .
I thk i am correct .
| Is This Answer Correct ? | 1 Yes | 2 No |
Answer / mf buzz
Hi,
for pic 9(n) comp-3.
if n is even, then n/2 + 1 bytes
if n is odd, then int(n/2) bytes.
| Is This Answer Correct ? | 5 Yes | 9 No |
How to read records which is in sequential file in reverse order ? Exp. 1 2 3 4 5 . i want 5 4 3 2 1?please clear my doubt any one
What is the difference between next sentence and continue in cobol programing language?
How many times the loop runs here 01 a pic 9(2) value 10. perform para1 a times stop run. para1: move 20 to a.
) How do u handle errors in BMS macro?
how to move the records from file to array table. give with code example
How can you declare the file ?
Difference between next and continue clause
What are differences between COBOL and java ? why we are giving more preference to COBOL ?
What is a subscript ?
How may divisions are there in JCL-COBOL?
In a program, variables are used but no DB2 involved in it. Can you call it as host variables??
can you declare redefine in level 01?