Difference between revisions of "PM Opc XCHG"

From SublabWiki
Jump to: navigation, search
(XCHG Instruction)
 
m (Examples)
 
Line 66: Line 66:
 
  ; BA = 0x1337
 
  ; BA = 0x1337
 
  ; HL = 0xC0D3
 
  ; HL = 0xC0D3
  XCHG BA, HL
+
  '''XCHG BA, HL'''
 
  ; BA = 0xC0D3
 
  ; BA = 0xC0D3
 
  ; HL = 0x1337
 
  ; HL = 0x1337
Line 72: Line 72:
 
  ; A = 0x45
 
  ; A = 0x45
 
  ; B = 0x12
 
  ; B = 0x12
  XCHG A, B
+
  '''XCHG A, B'''
 
  ; A = 0x12
 
  ; A = 0x12
 
  ; B = 0x45
 
  ; B = 0x45
  
 
[[PM_InstructionList|'''« Back to Instruction set''']]
 
[[PM_InstructionList|'''« Back to Instruction set''']]

Latest revision as of 00:31, 21 April 2009

XCHG = Exchange Registers

Hex Mnemonic Cycles
C8 XCHG BA, HL 12
C9 XCHG BA, X 12
CA XCHG BA, Y 12
CB XCHG BA, SP 12
CC XCHG A, B 8
CD XCHG A, [HL] 12

Execute

A        =  (8-Bits) Register A
B        =  (8-Bits) Register B
BA       = (16-Bits) Register BA: (B shl 8) or A
HL       = (16-Bits) Register HL: (H shl 8) or L
X        = (16-Bits) Register X
Y        = (16-Bits) Register Y
SP       = (16-Bits) Register SP (Stack Pointer)
[HL]     =  (8-Bits) Memory: (I shl 16) or HL
; XCHG Sc2, Sc
;
; Sc2 = Source 2
; Sc  = Source
; Tr = Temporary Register

Sc2   Sc
   \ /
    x
   / \
Sc2   Sc

Description

"Source" content is exchanged (swapped) with "Source 2".

Conditions

None

Examples

; BA = 0x1337
; HL = 0xC0D3
XCHG BA, HL
; BA = 0xC0D3
; HL = 0x1337
; A = 0x45
; B = 0x12
XCHG A, B
; A = 0x12
; B = 0x45

« Back to Instruction set