HLASM - BNLHR = Branch on Not Low or High Register

The opcode of the BNLHR extended mnemonic is X'07' with mask B'1001'.

The mask is the third hex digit of the instruction, and - though this is uncommon - can be regarded as the third hex digit of the opcode as well.

Usage

  1. Perform a branch if the condition code is neither 1 or B'01', meaning "low", nor 2 or B'10' meaning "high".
  2. Condition code 1 may occur after compare operations, such as CLC, indicating the first operand was lower than the second.
  3. Condition code 2 may occur after compare operations, such as CLC, indicating the first operand was higher than the second.

Arguments

  1. Register holding the destination address.

Function

  1. The processor uses the PSW's two-bit condition code as an index into the 4-bit condition mask.
  2. If the selected mask-bit is one, then it branches to the address specified in the second argument. If the bit is zero, then the processor continues with the next instruction.
  3. The condition code does not change.

Special Cases

  1. If the destination address is in register 0 no branch will be taken.

Related Instructions

  1. BNLH branches to a location that is directly addressable in base-displacement form.
  2. BCR is the real instruction associated with this extended mnemonic.

Hardware

  1. All hardware supports the BNLHR instruction.

Remarks

  1. The PSW's Amode setting determines how many bits are used for the destination address.
  2. HLASM does not support the BNLHR mnemonic, but some other assemblers do. For use with HLASM a simple macro can be used instead.

Examples

         YREGS                          * Define register names
         ...
         MACRO
&LABEL   BNLHR &REG
&LABEL   BCR   B'1001',&REG            * BR on Not Low or High cond.
         MEND
         ...
         CR    R1,R6                    * Limit reached?
         BNLHR R14                      * No: return to caller
         ...

To the Opcodes Overview.
To the English Homepage for Hlasm.com.
To the General Homepage for Bixoft and Hlasm.com.

This site is a member of WebRing.
You are invited to browse the list of mainframe-loving sites.
Running Tyrannosaurus Rex Dinos are not dead. They are alive and well and living in data centers all around you. They speak in tongues and work strange magics with computers. Beware the dino! And just in case you're waiting for the final demise of these dino's: remember that dinos ruled the world for 155-million years!
Dinos and other anachronisms
[ Join Now | Ring Hub | Random | << Prev | Next >> ]
 

Below you find the logo of our sponsor and logos of the web-standards that this page adheres to.