| Operation: | MOV |
| Function: | Move Memory |
| Syntax: | MOV operand1,operand2 |
| Instructions | OpCode | Bytes | Cycles | Flags |
| MOV @R0,#data | 0x76 | 2 | 1 | None |
| MOV @R1,#data | 0x77 | 2 | 1 | None |
| MOV @R0,A | 0xF6 | 1 | 1 | None |
| MOV @R1,A | 0xF7 | 1 | 1 | None |
| MOV @R0,iram addr | 0xA6 | 2 | 2 | None |
| MOV @R1,iram addr | 0xA7 | 2 | 2 | None |
| MOV A,#data | 0x74 | 2 | 1 | None |
| MOV A,@R0 | 0xE6 | 1 | 1 | None |
| MOV A,@R1 | 0xE7 | 1 | 1 | None |
| MOV A,R0 | 0xE8 | 1 | 1 | None |
| MOV A,R1 | 0xE9 | 1 | 1 | None |
| MOV A,R2 | 0xEA | 1 | 1 | None |
| MOV A,R3 | 0xEB | 1 | 1 | None |
| MOV A,R4 | 0xEC | 1 | 1 | None |
| MOV A,R5 | 0xED | 1 | 1 | None |
| MOV A,R6 | 0xEE | 1 | 1 | None |
| MOV A,R7 | 0xEF | 1 | 1 | None |
| MOV A,iram addr | 0xE5 | 2 | 1 | None |
| MOV C,bit addr | 0xA2 | 2 | 1 | C |
| MOV DPTR,#data16 | 0x90 | 3 | 2 | None |
| MOV R0,#data | 0x78 | 2 | 1 | None |
| MOV R1,#data | 0x79 | 2 | 1 | None |
| MOV R2,#data | 0x7A | 2 | 1 | None |
| MOV R3,#data | 0x7B | 2 | 1 | None |
| MOV R4,#data | 0x7C | 2 | 1 | None |
| MOV R5,#data | 0x7D | 2 | 1 | None |
| MOV R6,#data | 0x7E | 2 | 1 | None |
| MOV R7,#data | 0x7F | 2 | 1 | None |
| MOV R0,A | 0xF8 | 1 | 1 | None |
| MOV R1,A | 0xF9 | 1 | 1 | None |
| MOV R2,A | 0xFA | 1 | 1 | None |
| MOV R3,A | 0xFB | 1 | 1 | None |
| MOV R4,A | 0xFC | 1 | 1 | None |
| MOV R5,A | 0xFD | 1 | 1 | None |
| MOV R6,A | 0xFE | 1 | 1 | None |
| MOV R7,A | 0xFF | 1 | 1 | None |
| MOV R0,iram addr | 0xA8 | 2 | 2 | None |
| MOV R1,iram addr | 0xA9 | 2 | 2 | None |
| MOV R2,iram addr | 0xAA | 2 | 2 | None |
| MOV R3,iram addr | 0xAB | 2 | 2 | None |
| MOV R4,iram addr | 0xAC | 2 | 2 | None |
| MOV R5,iram addr | 0xAD | 2 | 2 | None |
| MOV R6,iram addr | 0xAE | 2 | 2 | None |
| MOV R7,iram addr | 0xAF | 2 | 2 | None |
| MOV bit addr,C | 0x92 | 2 | 2 | None |
| MOV iram addr,#data | 0x75 | 3 | 2 | None |
| MOV iram addr,@R0 | 0x86 | 2 | 2 | None |
| MOV iram addr,@R1 | 0x87 | 2 | 2 | None |
| MOV iram addr,R0 | 0x88 | 2 | 2 | None |
| MOV iram addr,R1 | 0x89 | 2 | 2 | None |
| MOV iram addr,R2 | 0x8A | 2 | 2 | None |
| MOV iram addr,R3 | 0x8B | 2 | 2 | None |
| MOV iram addr,R4 | 0x8C | 2 | 2 | None |
| MOV iram addr,R5 | 0x8D | 2 | 2 | None |
| MOV iram addr,R6 | 0x8E | 2 | 2 | None |
| MOV iram addr,R7 | 0x8F | 2 | 2 | None |
| MOV iram addr,A | 0xF5 | 2 | 1 | None |
| MOV iram addr,iram addr | 0x85 | 3 | 2 | None |
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
(C) Copyright 1997 - 2008 by Vault Information Services LLC. All Rights Reserved.
Information provided "as-is" without warranty. Please see details.
Contact us for usage and copy permission.
|