This shows you the differences between two versions of the page.

Link to this comparison view

instructions:eql [2008/05/13 07:22] (current)
Line 1: Line 1:
 +====== Branch on Equal (EQL)/OP=22 ======
 +==== Format ====
 +^  OP  ^  A Syllable  ^
 +''OP = 22''
 +The //A Syllable// is the branch address.   Address may be indexed, indirect or extended.
 +When not extended the final address controller bits specify the most
 +significant digit of the address.  This permits branching to any adddress up to
 +and including 299,998 relative to //Base #1// without indexing or extension.
 +When the address is indexed, the final //base indicant// should resolve to a
 +value of __1__.  The processor will always treat the resolved address as being
 +relative to //Base #1//.  The processor will not check for improper memory
 +==== Function ====
 +If the [[processor_state::comparison_flags|Comparison Flags]] are **EQUAL**, the **A**
 +address is selected as the next program instruction address otherwise
 +the next instruction is fetched with no significant action.
 +The address field of a non-taken branch must have the same attributes as any
 +address, however the address does not have to resolve to a valid address.  For
 +example, a six-digit address may not contain an undigit in the extended digit
 +position as this condition causes the processor to mistakenly treat this
 +address as an eight digit address.   An odd address only causes errors if the
 +branch is taken.
 +Undigits in address positions other than the address controller and extended
 +digit may result in incompatible behavior (see
 +[[compatibility_notes:a.51|Compatibility Notes A.51]]).
 +=== Notes ===
 +Use of //branch prediction op codes// may result in incompatible behavior.  See [[compatibility_notes:a.06|Compatibility Notes A.06]].
 +==== Comparison Flags ====
 +The [[processor_state:comparison_flags|Comparison Flags]] are not modified by
 +this instruction.
instructions/eql.txt ยท Last modified: 2008/05/13 07:22 (external edit)
Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki