VMS Help MACRO, VAX MACRO Assembler, Instructions, ACBx *Conan The Librarian (sorry for the slow response - running on an old VAX) |
Purpose: Add compare and branch - maintain loop count and loop Format: opcode limit.rx,add.rx,index.rx,displ.bw Operation: index = index + add; if {{add GEQ 0} AND {index LEQ limit}} OR {{add LSS 0} AND {index GEQ limit}} then PC = PC + SEXT (displ) C. Codes: N = {index LSS 0}, Z = {index EQL 0}, C = C, V = {integer or floating overflow} Exceptions: Integer or floating overflow, floating underflow, reserved operand Opcodes: 9D ACBB Add compare and branch byte 3D ACBW Add compare and branch word F1 ACBL Add compare and branch long 4F ACBF Add compare and branch F_floating 6F ACBD Add compare and branch D_floating 4FFD ACBG Add compare and branch G_floating 6FFD ACBH Add compare and branch H_floating Description: add is added to index and index is replaced by the result. index is compared with limit. If add is greater than or equal to zero and the comparison is less than or equal to zero or if add is less than zero and the comparison is greater than or equal, the branch is taken. The condition codes are unpredictable on a reserved operand fault.
|