What is the difference in data type "X" and "P"?
Answers were Sorted based on User's Feedback
Answer / sourav
X is used for Hexadecimal fields where as P is for Packed
decimal. X denotes alphanumeric in COBOL, not in MVS ASM.
Is This Answer Correct ? | 28 Yes | 0 No |
Answer / guest
X is used for hexa decimal values, but the packed decimal
mainly used for date purpose and to have the values with
positive and negative
Is This Answer Correct ? | 2 Yes | 0 No |
Answer / saurabh biswas
In MVS assembler data type X denotes hexadecimal data type
which unsigned pack. suppose you define VAR1 as "VAR1 DC
X'01'". It will occupy 1 byte in the memory and stored as:
0 in the zoned nibble and 1 in the numeric nibble.
P denotes the packed data type, similar to COMP-3 in COBOL.
if you declare any variable with this data type then it
must have a sign byte at last nibble. See following example:
VAR2 DC P'1'
it will occupy one byte in the memory and stored as '1C'.
Is This Answer Correct ? | 2 Yes | 1 No |
Answer / guru
X is used for Hexadecimal fields where as P is for Packed
decimal.X store in a full word where as Packed has half
word boundry.
Is This Answer Correct ? | 1 Yes | 2 No |
Answer / bhanu prathap
X is used for Alphanumeric and P is used for Packed Decimal.
Is This Answer Correct ? | 2 Yes | 21 No |
How many maximum base registers we can have in a program?
What does the following code do? Ap wkur,=p5 where wkur is a label?
What is the use of trt instruction?
Can we use MVC instruction to move pack field to pack field....which instruction you will use and why ?
how to produce SOC7 abend
what is need of START 0?. In steed of '0' can we use any other numerics?. if we use what will happen?.
WHAT WILL HAPPEN IF WE DROP THE BASE REGISTER IN THE PGM WHICH CONTAINS ONLY ONE BASEREG?
How are data passed from JCL parm to assembler program. And how is data passed from a calling program to an assembler called program.
In the house keeping section of an MVS assembly language program, like the one below STM R14,R12,12(R13) BASR R12,R0 USING *,R12,R11 LA R11,2048 LA R11,2048(R11,R12) .... .... 1. What if BASR R12,R0 IS NOT PRECEDE USING *,R12,R11? 2. USING (base address), REGISTER does USING directive says assembler to treat particular Register as a base register with the mentioned base address..in the above case * i.e current location counter..well if that is the case why we need BASR R12,R0 ? 3. What if I write like STM R14,R12,12(R13) BASR R12,R0 LA R11,2048 LA R11,2048(R11,R12) USING *,R12,R11 there is no address resolution being calculated in both LA statements so is it a right way to set Base register?..will there be any issues with Domain regarding R11 and R12?
Explain about base register?
about ICM instruction.
What will happen if we drop the base register in the program which contains only one basereg?