Dealing with arithmetic exceptions

About this task

If the program check was due to an arithmetic error (interruption codes 7 through F), you need to find the operands used in the last instruction.

Procedure

  1. Use the procedure described in section Locating program data to locate the fields.
  2. Check that the operands are valid.
    You need to know a little about the type of arithmetic being done, so that you can verify the operands are correct. The interrupt you received tells you what sort of arithmetic the system was doing (binary, packed decimal, or floating point), but you need to determine if that is what you had intended to do. You might need to consult a programming language manual if you have any queries about this.
  3. When you have identified the operands, you need to decide where the problem is.
    Questions to consider include:
    • Has the data been overlaid?
    • Has the value been changed by faulty logic?
    • Does the data type not match the operation type? For example, if you define the variable as being packed decimal and then you read in binary information, this causes a ‘data exception’ error.