
MAXQ612/MAXQ622 User’s Guide
Maxim Integrated 3-7
Register bits can be set or cleared individually using the MOVE instruction as follows:
move IGE, #1 ; set IGE (Interrupt Global Enable) bit
move APC.6, #0 ; clear IDS bit (APC.6)
As with other instructions, prefixing is required to select destination registers beyond index 07h. The MOVE instruction
can also be used to transfer any one of the lowest 8 bits from a register source or any active accumulator (Acc) bit to
the carry flag. There is no restriction on the source register module for the “MOVE C, src.bit” instruction.
move C, Acc.7 ; copy Acc.7 to Carry
Prefixing is required to select source registers beyond index 15h.
3.5 Using the Arithmetic and Logic Unit
The MAXQ612/MAXQ622 provides a 16-bit arithmetic and logic unit (ALU) that allows operations to be performed
between the active accumulator and any other register. The default ALU configuration provides 16 accumulator regis-
ters that are 16-bit wide, of which any one can be selected as the active accumulator.
3.5.1 Selecting the Active Accumulator
Any of the 16 accumulator registers A[0] to A[15] can be selected as the active accumulator by setting the low 4 bits
of the accumulator pointer register (AP) to the index of the accumulator register the users wants to select.
move AP, #01h ; select A[1] as the active accumulator
move AP, #0Fh ; select A[15] as the active accumulator
The current active accumulator can be accessed as the Acc register, which is also the register used as the implicit
destination for all arithmetic and logical operations.
move A[0], #55h ; set A[0] = 0055 hex
move AP, #00h ; select A[0] as active accumulator
move Acc, #55h ; set A[0] = 0055 hex
3.5.2 Enabling Autoincrement and Autodecrement
The accumulator pointer, AP, can be set to automatically increment or decrement after each arithmetic or logical
operation. This is useful for operations involving a number of accumulator registers, such as adding or subtracting two
multibyte integers.
If autoincrement/decrement is enabled, the AP register increments or decrements after any of the following operations:
• ADD src (Add source to active accumulator)
• ADDC src (Add source to active accumulator with carry)
• SUB src (Subtract source from active accumulator)
• SUBB src (Subtract source from active accumulator with borrow)
• AND src (Logical AND active accumulator with source)
• OR src (Logical OR active accumulator with source)
• XOR src (Logical XOR active accumulator with source)
• CPL (Bitwise complement active accumulator)
• NEG (Negate active accumulator)
• SLA (Arithmetic shift left on active accumulator)
• SLA2 (Arithmetic shift left active accumulator 2 bit positions)
• SLA4 (Arithmetic shift left active accumulator 4 bit positions)
• SRA (Arithmetic shift right on active accumulator)
• SRA2 (Arithmetic shift right active accumulator 2 bit positions)
Comentários a estes Manuais