Set Data Pointer (SETDP)


Op Code (Hex) Operand 1 Operand 2

0096 Receiver Source

Operand 1: Data pointer.

Operand 2: Numeric variable scalar, character variable scalar, numeric variable array, or character variable array.

Bound program access

Built-in number for SETDP is 388. SETDP ( space_addressability : address data_type_attributes : aggregate(7) OR See SETDPAT for format literal(7) ) : data pointer

Description 

For non-bound programs  A data pointer is created and returned in the storage area specified by operand 1 and has the attributes and space addressability of the object specified by operand 2. Addressability is set to the low-order (leftmost) byte of the object specified by operand 2.

If operand 2 is a substring compound operand, the length attribute is set equal to the length of the substring. If operand 2 is a subscript compound operand, the attributes and addressability of the single array element specified are assigned to the data pointer. If operand 2 is an array, the attributes and addressability of the first element of the array are assigned to the data pointer. A data pointer can only be set to describe an element of a data array, not a data array in its entirety.

For bound (including service) programs  A data pointer is created and returned with the space addressability provided by the first operand and the attributes specified by the second operand. The attributes given to the data pointer include scalar type and scalar length.

For all programs  When the addressability in the data pointer is modified, the instruction signals the space addressing violation  (hex 0601) exception when one of the following conditions occurs:

If the exception is signaled by this instruction for one of these reasons, the pointer is not modified by the instruction.

Attempts to use a pointer whose offset value lies between the currently allocated extent of the space and the maximum allocatable extent cause the space addressing violation  (hex 0601) exception to be signaled.

Authorization Required

Lock Enforcement

Exceptions

06 Addressing

08 Argument/Parameter

10 Damage Encountered

1C Machine-Dependent

20 Machine Support

22 Object Access

24 Pointer Specification

2E Resource Control Limit

36 Space Management

44 Protection Violation