X instructions:
XDUMP
- used to "dump" the GPRs or program storage Format 1: XDUMP comment - produces a hexadecimal dump of the GPRs Format 2: XDUMP D(X,B),length - produces a hexadecimal dump of storage starting from D(X,B) for length bytes - a label can be substituted for D(X,B) - an expression that resolves to an integer value can be substituted for length If the line XDUMP NUM1,RESULT2+4-NUM1 was coded somewhere in the program, a hexadecimal dump of the entire storage area would be produced.
XREAD
- used to read an input record from the file indicated on FT05F001 DD card or from instream data Format: label XREAD D(X,B),length - reads length bytes into the input buffer located at D(X,B) Sets the Condition Code: Code Meaning 0 Successful read 1 End of file reached Example: XREAD BUFFER,80 Assuming that BUFFER DS CL80 is located in storage
XDECI
- used to convert a number from its character representation to its binary representation so that math can be performed Format: label XDECI R,D(X,B) - converts the number at D(X,B) to binary and stores it in R - Stops scanning when a space is reached - 1st character may be a digit or a plus (+) or minus (-) sign - Register 1 is set to the address of the next value to read Sets the Condition Code: Code Meaning 0 Converted number is 0 1 Converted number is less than 0 2 Converted number is greater than 0 3 Attempt to convert an invalid number XDECI 3,BUFFER Convert 1st number on an input record XDECI 4,0(,1) Convert 2nd number on the input record
XDECO
- used to convert a number from its binary representation to its character representation so it can be printed Format: label XDECO R,D(X,B) - converts the binary number in register R to printable characters and stores it at D(X,B) - Number is converted to a 12 byte character representation - If number is negative, a minus sign is printed to left of 1st digit XDECO 3,NUM1 Convert number in register 3 to printable format and place it in NUM1, which is defined as NUM1 DS CL12 XDECO 4,NUM2 Convert number in register 4 to printable format and place it in NUM2, which is defined as NUM2 DS CL12
XPRNT
- used to print a print line Format: label XPRNT D(X,B),length - prints length bytes of the print line located at D(X,B) - Print lines must be explicitly defined in program storage - usually 132 characters long - 1st character is used for carriage control space single spacing 0 double spacing - triple spacing 1 new page XPRNT LINE1,132 Print the print line >>> more code here <<< LINE1 DC CL1‘ ’ DC CL16’Num1 is equal to’ NUM1 DS CL12 DC CL5‘ ’ DC CL16’Num2 is equal to’ NUM2 DS CL12 DC CL70‘ ’