Email: Password: Remember Me | Create Account (Free)
8051/8052 Instruction: MOV

Operation:MOV
Function:Move Memory
Syntax:MOV operand1,operand2

InstructionsOpCodeBytesCyclesFlags
MOV @R0,#data0x7621None
MOV @R1,#data0x7721None
MOV @R0,A0xF611None
MOV @R1,A0xF711None
MOV @R0,iram addr0xA622None
MOV @R1,iram addr0xA722None
MOV A,#data0x7421None
MOV A,@R00xE611None
MOV A,@R10xE711None
MOV A,R00xE811None
MOV A,R10xE911None
MOV A,R20xEA11None
MOV A,R30xEB11None
MOV A,R40xEC11None
MOV A,R50xED11None
MOV A,R60xEE11None
MOV A,R70xEF11None
MOV A,iram addr0xE521None
MOV C,bit addr0xA221C
MOV DPTR,#data160x9032None
MOV R0,#data0x7821None
MOV R1,#data0x7921None
MOV R2,#data0x7A21None
MOV R3,#data0x7B21None
MOV R4,#data0x7C21None
MOV R5,#data0x7D21None
MOV R6,#data0x7E21None
MOV R7,#data0x7F21None
MOV R0,A0xF811None
MOV R1,A0xF911None
MOV R2,A0xFA11None
MOV R3,A0xFB11None
MOV R4,A0xFC11None
MOV R5,A0xFD11None
MOV R6,A0xFE11None
MOV R7,A0xFF11None
MOV R0,iram addr0xA822None
MOV R1,iram addr0xA922None
MOV R2,iram addr0xAA22None
MOV R3,iram addr0xAB22None
MOV R4,iram addr0xAC22None
MOV R5,iram addr0xAD22None
MOV R6,iram addr0xAE22None
MOV R7,iram addr0xAF22None
MOV bit addr,C0x9222None
MOV iram addr,#data0x7532None
MOV iram addr,@R00x8622None
MOV iram addr,@R10x8722None
MOV iram addr,R00x8822None
MOV iram addr,R10x8922None
MOV iram addr,R20x8A22None
MOV iram addr,R30x8B22None
MOV iram addr,R40x8C22None
MOV iram addr,R50x8D22None
MOV iram addr,R60x8E22None
MOV iram addr,R70x8F22None
MOV iram addr,A0xF521None
MOV iram addr,iram addr0x8532None


Description: MOV copies the value of operand2 into operand1. The value of operand2 is not affected. Both operand1 and operand2 must be in Internal RAM. No flags are affected unless the instruction is moving the value of a bit into the carry bit in which case the carry bit is affected or unless the instruction is moving a value into the PSW register (which contains all the program flags).

** Note: In the case of "MOV iram addr,iram addr", the operand bytes of the instruction are stored in reverse order. That is, the instruction consisting of the bytes 0x85, 0x20, 0x50 means "Move the contents of Internal RAM location 0x20 to Internal RAM location 0x50" whereas the opposite would be generally presumed.

See Also: MOVC, MOVX, XCH, XCHD, PUSH, POP, Instruction Set