11.07.2015 Views

section 7 - Index of

section 7 - Index of

section 7 - Index of

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

R:V Register and V Memory Data Move R:YIf the opcode-operand portion <strong>of</strong> the instruction specifies a given source or destinationregister, that same register or portion <strong>of</strong> that register may be used as a source 81 and/or82 in the parallel data bus move operation. This allows data to be moved in the sameinstruction in which it is being used as a source operand by a data ALU operation. Thatis, duplicate sources are allowed within the same Instruction. Note that 81 and 82may specify the same register.Class I Example:ADDL B,A B,X1 Y:(R6)-N6,B ;2*A+B ~ A, update X1 ,B and R6Before ExecutionAfter ExecutionBI$80:123456:789ABC B I $00:654321 :000000X1 $000000 X1 I $800000R6 I $2020 R6 I $2000N6 I $0020 N6 I $0020Y:$2020 I $654321 Y:$2020 I $654321Explanation <strong>of</strong> the Class I Example: Prior to execution, the 56-bit B accumulator containsthe value $80:123456:789ABC, the 24-bit X1 register contains the value $000000,the 16-bit R6 address register contains the value $2020, the 16-bit N6 address <strong>of</strong>fsetregister contains the value $0020 and the 24-bit Y memory location Y:$2020 contains thevalue $654321. The execution <strong>of</strong> the parallel move portion <strong>of</strong> the instruction, B,X1Y:(R6)-N6,B, moves the 24-bit limited negative saturation constant $800000 into the X1register since the signed integer portion <strong>of</strong> the B accumulator was in use, uses the valuein the 16-bit R6 address register to move the 24-bit value in the Y memory locationY:$2020 into the 56-bit B accumulator with automatic sign extension <strong>of</strong> the upper portion<strong>of</strong> the accumulator (B2) and automatic zeroing <strong>of</strong> the lower portion <strong>of</strong> the accumulator(BO), and finally uses the contents <strong>of</strong> the 16-bit N6 address <strong>of</strong>fset register to update thevalue in the 16-bit R6 address register. The contents <strong>of</strong> the N6 address <strong>of</strong>fset registerare not affected.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!