Branch Mnemonic Opcodes
 Assembler Branch Instructions
http://www.simotime.com
 Copyright © 1987-2010 SimoTime Enterprises All Rights Reserved
  Table of Contents Version 09.05.17 
  Introduction
  Unconditional or No Branch
  Branch After Compare Instruction
  Branch After Arithmetic Instruction
  Branch After Test Under Mask Instruction
  Summary
 
  Similar Points of Interest
  Comments or Suggestions
  About SimoTime

Introduction
(Next) (Previous) (Table-of-Contents)

This document provides a summary of the extended mnemonic opcodes for branch instructions. This program may serve as a tutorial for programmers that are new to 370 assembler or as a reference for experienced programmers. In the following tables the leftmost three columns show the mnemonic with the operands and a brief description. The rightmost three columns show the instruction format, the actual mnemonic opcode and the mask and addressing format that is generated from the extended mnemonic.

Notes: D2=displacement, X2=index register, B2=base register, R2=register containing branch address

Unconditional or No Branch
(Next) (Previous) (Table-of-Contents)

The following mnemonic opcodes are used for an Unconditional Branch or No Branch.

Mnemonic  Operands   Description  Format  Opcode  Mask/Operands 
           
B D2(X2,B2) Unconditional Branch  RX BC 15,D2(X2,B2)
BR R2   RR BCR 15,R2
NOP D2(X2,B2) No Operation RX BC 0,D2(X2,B2)
NOPR R2   RR BCR 0,R2

Branch After Compare Instruction
(Next) (Previous) (Table-of-Contents)

The following mnemonic opcodes are used after Compare Instructions.

Mnemonic  Operands   Description  Format  Opcode  Mask/Operands 
           
BH D2(X2,B2) Branch on High  RX BC 2,D2(X2,B2)
BHR R2   RR BCR 2,R2
BL D2(X2,B2) Branch on Low  RX BC 4,D2(X2,B2)
BLR R2   RR BCR 4,R2
BE D2(X2,B2) Branch on Equal  RX BC 8,D2(X2,B2)
BER R2   RR BCR 8,R2
BNH D2(X2,B2) Branch on Not High  RX BC 13,D2(X2,B2)
BNHR R2   RR BCR 13,R2
BNL D2(X2,B2) Branch on Not Low  RX BC 11,D2(X2,B2)
BNLR R2   RR BCR 11,R2
BNE D2(X2,B2) Branch on Not Equal   RX BC 7,D2(X2,B2)
BNER R2   RR BCR 7,R2

Branch After Arithmetic Instruction
(Next) (Previous) (Table-of-Contents)

The following mnemonic opcodes are used after Arithmetic Instructions.

Mnemonic  Operands   Description  Format  Opcode  Mask/Operands 
           
BP D2(X2,B2) Branch on Plus  RX BC 2,D2(X2,B2)
BPR R2   RR BCR 2,R2
BM D2(X2,B2) Branch on Minus  RX BC 4,D2(X2,B2)
BMR R2   RR BCR 4,R2
BZ D2(X2,B2) Branch on Zero  RX BC 8,D2(X2,B2)
BZR R2   RR BCR 8,R2
BO D2(X2,B2) Branch on Overflow  RX BC 1,D2(X2,B2)
BOR R2   RR BCR 1,R2
BNP D2(X2,B2) Branch on Not Plus  RX BC 13,D2(X2,B2)
BNPR R2   RR BCR 13,R2
BNM D2(X2,B2) Branch on Not Minus  RX BC 11,D2(X2,B2)
BNMR R2   RR BCR 11,R2
BNZ D2(X2,B2) Branch on Not Zero  RX BC 7,D2(X2,B2)
BNZR R2   RR BCR 7,R2
BNO D2(X2,B2) Branch on No Overflow   RX BC 14,D2(X2,B2)
BNOR R2   RR BCR 14,R2

Branch After Test Under Mask Instruction
(Next) (Previous) (Table-of-Contents)

The following mnemonic opcodes are used after Test Under Mask Instructions.

Mnemonic  Operands   Description  Format  Opcode  Mask/Operands 
           
BO D2(X2,B2) Branch if Ones  RX BC 1,D2(X2,B2)
BOR R2   RR BCR 1,R2
BM D2(X2,B2) Branch if Mixed  RX BC 4,D2(X2,B2)
BMR R2   RR BCR 4,R2
BZ D2(X2,B2) Branch if Zero  RX BC 8,D2(X2,B2)
BZR R2   RR BCR 8,R2
BNO D2(X2,B2) Branch if Not Ones  RX BC 14,D2(X2,B2)
BNOR R2   RR BCR 14,R2
BNM D2(X2,B2) Branch if Not Mixed    RX BC 11,D2(X2,B2)
BNMR R2   RR BCR 11,R2
BNZ D2(X2,B2) Branch if Not Zero  RX BC 7,D2(X2,B2)
BNZR R2   RR BCR 7,R2

Summary
(Next) (Previous) (Table-of-Contents)

The purpose of this document is to assist as a tutorial for new programmers or as a quick reference for experienced programmers. These reference documents are made available on an "as-is" basis and may be downloaded, copied and modified for specific situations as long as the copyright information is not removed or changed. As always, it is the programmer's responsibility to thoroughly test all programs and review all documentation.

Similar Points of Interest
(Next) (Previous) (Table-of-Contents)

Check out  The Assembler Connection  for more examples of mainframe Assembler coding techniques and sample code.

Comments or Suggestions
(Next) (Previous) (Table-of-Contents)

If you have any questions, suggestions or comments please call or send an e-mail to: helpdesk@simotime.com

About SimoTime Enterprises
(Next) (Previous) (Table-of-Contents)

Founded in 1987, SimoTime Enterprises is a privately owned company. We specialize in the creation and deployment of business applications using new or existing technologies and services. We have a team of individuals that understand the broad range of technologies being used in today's environments. This includes the smallest thin client using the Internet and the very large mainframe systems. There is more to making the Internet work for your company's business than just having a nice looking WEB site. It is about combining the latest technologies and existing technologies with practical business experience. It's about the business of doing business and looking good in the process. Quite often, to reach larger markets or provide a higher level of service to existing customers it requires the newer Internet technologies to work in a complementary manner with existing corporate mainframe systems. Whether you want to use the Internet to expand into new market segments or as a delivery vehicle for existing business functions simply give us a call or check the web site at http://www.simotime.com


Return-to-Top
Copyright © 1987-2010  SimoTime Enterprises  All Rights Reserved
When technology complements business
http://www.simotime.com