Assembler Language
CSCI 360-1 Assignment 4 Name_____________________
Spring 2019 ABENDs and Dump Reading
25 points
This programming assignment does not require any further coding or documentation than what is provided. The program will ABEND and your task is to learn how to investigate what happened so that you can debug your own Assembler programs in the future. To begin, run the following program on the Marist mainframe using the ASSIST JCL used previously. Be sure you type it or copy it EXACTLY as shown below:
DUMP1 CSECT
USING DUMP1,15 ESTABLISH REG 15 AS BASE REG
*
SR 2,2 CLEAR REG 2
*
LA 3,NUM1 LOAD ADDRESS OF NUM1 INTO REG 3
LA 4,NUM2 LOAD ADDRESS OF NUM2 INTO REG 4
*
A 2,0(,3) ADD NUM1 TO REG 2
A 2,0(,4) ADD NUM2 TO REG 2
*
LA 5,SUM LOAD ADDRESS OF SUM INTO REG 5
ST 2,0(,5) STORE THE SUM OF NUM1 & NUM2 AT SUM
*
XDUMP , SET REG 2 TO 35
*
LTORG
*
SUM DC F'0' FULLWORD OF ZERO TO LATER HOLD SUM
*
NUM1 DC F'1206000000' VARIOUS FULLWORD INTEGER VALUES
NUM2 DC F'972460'
NUM3 DC F'1344335922'
*
END DUMP1
Use the resulting ABEND dump output to answer the questions below. Each is worth 2 points except question 11 which is worth 5 points.
Did this error occur (a) while the program was being assembled or (b) when it was being run?
________________________________________________________________________________
What is the address of the next instruction which would have been executed?________________________________________________________________________________
What is the value of the condition code at the time of the ABEND?
________________________________________________________________________________
What is the length of the instruction that caused the ABEND (number of bytes)?
_______________________________________________________________________________
What is the address of the instruction that caused the abend?
_________________________________________________________________________________
What type of error occurred (number and name)?
_________________________________________________________________________________
What usually causes this error?
_________________________________________________________________________________
What does the value in register 2 represent at the time of the ABEND dump?
__________________________________________________________________________________
What instruction needs to be added to fix this ABEND?
_________________________________________________________________________________
What does the value stored at location counter value 00002C represent?
_________________________________________________________________________________
What exactly happened here to cause the ABEND? Be detailed but succinct in your description.
_________________________________________________________________________________
_________________________________________________________________________________
_________________________________________________________________________________
_________________________________________________________________________________
_________________________________________________________________________________