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 |
i have mainprogram and subgram...if i compile mainprogram without stop run..what will u get in compilation time?
here is my requirement A1 is alphanumeric with value 'A1B2C3D4' as defined below 05 A1 PIC X(8) VALUE IS 'A1B2C3D4' but i need to have A2,A3 as ABCD & 1234 repectively...... A2 = ABCD A3 = 1234 Can you please explain me what are the different ways to do it?
example for sub strings ? and refernce modifications whit output pls
0 Answers College School Exams Tests, IBM,
hi. This is Ram.i have one doubt.why can't we display comp-3 variables directly? let me answer quickly plez........
What does MAXCC 3 means? It is used in one my codes.
WHY LRECL NEEDS TO BE 4 EXTRA THEN THE COBOL FILE LENGTH & WHAT IT CONTAIN IN THAT LENGTH
what is the difference between Plan & package
I have a variable account-number declared as comp-3, s9(10) comp-3 in a file. How do i find a particular account number say 123456 in that file?
Write a cobol program making use of the redefine clause.
01 MOVE 10 TO N 05 PERFOM PARA1 TIMES STOP RUN WAT WILL HAPPEN?? WILL IT RUN INFINITELY OR AN ERROR WIL BE THER BECAUSE NO OF TIMES IS NOT GIVEN??
what is the advantage of using redefines instead of delaring the variables ?
Explain about Redefines cluse?