360 Assembly/360 Instructions/LGR
LGR - Load Register - 64 Bit - Opcode B904 - RRE Instruction
- LGR 2,6
The specific syntax is
- LGR target register, source register.
|RRE Instruction (4 bytes)|
|Bytes 1 and 2||Byte 3||Byte 4|
|target register||source register|
- The first argument is a target register which value is affected by the instruction.
- The second argument is the source value register.
The LGR instruction is 64-bit, and is only available on the 370 series and z/System. It will cause an opcode exception on the 360 series.
The LGR instruction copies a 64-bit value from the register specified by the second argument to the register specified by the first argument.
Condition codes are not changed.
Register 0 is valid for either register and is not ignored as in some other instructions.
Exceptions and Faults
- 360 Series: Opcode Exception
- 370 Series and zSystem: None.
Since LA does not access memory, but only calculates a number, which can, but does not have to be, an address, the most closely related instruction is probably ALR - Add Logical Register. To think about it, LA calculates a number, L loads a value from memory. To think of LA as being related to Load instructions is neither proper, nor helpful.
- To load an 8-bit byte (character) value from memory, see IC.
- To load one or more 8-bit byte values into a register according to a mask, see ICM
- To load a 16-bit half-word value from memory, see LH.
- To load a 12-bit unsigned value into a register or add up to 4095 to the values in one or two 32-bit registers, see LA.
- To copy a 32-bit word value from one register to another register, see LR.
- To load a 32-bit word value from memory, see L.
- To store an 8-bit byte (character) value in memory, see STC.
- To store one or more 8-bit byte values into memory according to a mask, see STCM
- To store a 16-bit half-word value in memory, see STH.
- To store a 32-bit word value in memory, see ST.
- To load a 20-bit signed value into a 32-bit or 64-bit register from an extended (20-bit) signed memory offset, see LAY.
- To load a 32-bit value into a 64-bit register from an extended (20-bit) signed memory offset, see LGF.
- To copy a 64-bit value from one 64-bit register to another 64-bit register, see LGR.
- To load a 64-bit value into a 64-bit register from memory, see LG.
- To store a 32-bit value from a register to an extended (20-bit) signed memory offset, see STY.
- To store a 64-bit value from a 64-bit register to an address in memory, see STG.
|360 Assembly Instructions||Next Instruction|
|360 Assembly Language|
|360 Family||Introduction · Basic FAQ · 360 Family · 360 Architecture|
|360 Instruction Set||360 Instructions · Branch Instructions · Data Transfer Instructions · Control Flow Instructions · Arithmetic Instructions · Logic Instructions · Shift and Rotate Instructions · Other Instructions|
|Syntaxes and Assemblers||360 Assemblers· Pseudo Instructions|
|Instruction Extensions||Floating Point · High-Level Languages|
| This page or section is an undeveloped draft or outline.
You can help to develop the work, or you can ask for assistance in the project room.