Differences

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

Link to this comparison view

instructions:bzt [2008/11/25 12:21] (current)
scott created
Line 1: Line 1:
 +====== Bit Zero Test (BZT)/OP=40 ======
  
 +==== Format ====
 +
 +^  OP  ^  AF  ^  BF  ^  A Syllable  ^
 +
 +''OP = 40''
 +
 +**AF** is the length of the **A** field.  A value of __00__ is equal to
 +a length of __100__ units (digits or characters as specified by the
 +**A** address controller).  **AF** may be indirect or may indicate that the
 +**A** syllable is a literal.\\
 +**BF** is the eight-bit selection mask.   __One__ bits in this mask
 +select those bit positions to be tested for __zero__ bits within each
 +eight-bit group of the **A** data field.  **A** through **F** may be used 
 +to specify undigits in the mask.  The field will not be recognized as
 +indirect.
 +
 +The //A Syllable// is the address of the data field to be examined.
 +Address may be
 +indexed, indirect or extended.  The final address controller data type
 +must be **UN** or **UA**.   Use of **SN** data type is will
 +cause an //Illegal Instruction (**IEX = 03**) fault//.  See
 +[[compatibility_notes:a.05|Compatibility Notes A.05]].
 +
 +==== Function ====
 +
 +The Bit Zero Test instruction tests a data field in memory **A** in
 +eight-bit groups, for __zero__ bits in the bit positions selected
 +by the field mask **BF**.
 +
 +If the number of digits accessed is even, the entire eight-bit mask
 +is applied to successive groups of two digits.  if the number of 
 +digits is odd, the operation is the same until the last digit is accessed.
 +The most significant four bits of the mask are applied to this digit.
 +
 +
 +==== Comparison Flags ====
 +
 +Set the [[processor_state:comparison_flags|Comparison Flags]] to **EQUAL**
 +if any tested bit is __zero__ or to **HIGH** if all tested bits are __one__
 +bits.
 +
 +==== Overlap ====
 +
 +Field overlap is not applicable to this instruction.
 +
 +==== Examples ====
 +
 +=== Example (1) Zero test - Zero found ===
 +
 +^  OP  ^  AFBF  ^  A Syllable  ^  
 +|  40  |  04C0  |  A Field (UA)  |  
 +
 +                      BEFORE              AFTER
 +     A Field         C3C1B77B           unchanged
 +      MASK           C0C0C0C0
 +
 +     Comparison Flags   nn                EQUAL
 +
 +=== Example (2) Zero test - All ones found ===
 +
 +^  OP  ^  AFBF  ^  A Syllable  ^ 
 +|  40  |  04C0  |  A Field (UA)  |
 +
 +                      BEFORE              AFTER
 +     A Field         C2D9C1C3           unchanged
 +      MASK           C0C0C0C0
 +
 +     Comparison Flags   nn                 HIGH
instructions/bzt.txt ยท Last modified: 2008/11/25 12:21 by scott
 
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