Mnemonics

LD

8-Bit Load Group | 16-Bit Load Group
Expansion:
LoaD
Usage:
ld ({??})|{r|rr},({??})|{r|rr}

Load (place, copy) a value into a register or at a address in memory referenced by a register pointer from another register, address pointer or immediate value.

Z80.CPU instructions
Instruction Description Opcode
LD A, A Load value in register A into register A 7F
LD A, B Load value in register B into register A 78
LD A, C Load value in register C into register A 79
LD A, D Load value in register D into register A 7A
LD A, E Load value in register E into register A 7B
LD A, H Load value in register H into register A 7C
LD A, L Load value in register L into register A 7D
LD A, I Load value in register I into register A ED57
LD A, R Load value in register A into register A ED5F
LD A, {??} Load an immediate value into register A 3E {??}
LD A, (????) Load 8-bit value from an address into register A 3A {????}
LD A, (BC) Load 8-bit value from an address contained in register BC into register A 0A
LD A, (DE) Load 8-bit value from an address contained in register DE into register A 1A
LD A, (HL) Load 8-bit value from an address contained in register HL into register A 7E
LD A, (IX+dis) Load 8-bit value from an address contained in register IX + displacement into register A DD7E {??}
LD A, (IY+dis) Load 8-bit value from an address contained in register IY + displacement into register A FD7E {??}
Z80.CPU instructions
Instruction Description Opcode
LD B, A Load value in register A into register B 47
LD B, B Load value in register B into register B 40
LD B, C Load value in register C into register B 41
LD B, D Load value in register D into register B 42
LD B, E Load value in register E into register B 43
LD B, H Load value in register H into register B 44
LD B, L Load value in register L into register B 45
LD B, {??} Load an immediate value into register B 06 {??}
LD B, (HL) Load 8-bit value from an address contained in register HL into register B 46
LD B, (IX+dis) Load 8-bit value from an address contained in register IX + displacement into register B DD46 {??}
LD B, (IY+dis) Load 8-bit value from an address contained in register IY + displacement into register B FD46 {??}
Z80.CPU instructions
Instruction Description Opcode
LD C, A Load value in register A into register C 4F
LD C, B Load value in register B into register C 48
LD C, C Load value in register C into register C 49
LD C, D Load value in register D into register C 4A
LD C, E Load value in register E into register C 48
LD C, H Load value in register H into register C 4C
LD C, L Load value in register L into register C 4D
LD C, {??} Load an immediate value into register C 0E {??}
LD C, (HL) Load 8-bit value from an address contained in register HL into register C 4E
LD C, (IX+dis) Load 8-bit value from an address contained in register IX + displacement into register C DD4E {??}
LD C, (IY+dis) Load 8-bit value from an address contained in register IY + displacement into register C FD4E {??}
Z80.CPU instructions
Instruction Description Opcode
LD D, A Load value in register A into register D 57
LD D, B Load value in register B into register D 50
LD D, C Load value in register C into register D 51
LD D, D Load value in register D into register D 52
LD D, E Load value in register E into register D 53
LD D, H Load value in register H into register D 54
LD D, L Load value in register L into register D 55
LD D, {??} Load an immediate value into register D 16 {??}
LD D, (HL) Load 8-bit value from an address contained in register HL into register D 56
LD D, (IX+dis) Load 8-bit value from an address contained in register IX + displacement into register D DD56 {??}
LD D, (IY+dis) Load 8-bit value from an address contained in register IY + displacement into register D FD56 {??}
Z80.CPU instructions
Instruction Description Opcode
LD E, A Load value in register A into register E 5F
LD E, B Load value in register B into register E 58
LD E, C Load value in register C into register E 59
LD E, D Load value in register D into register E 5A
LD E, E Load value in register E into register E 5B
LD E, H Load value in register H into register E 5C
LD E, L Load value in register L into register E 5D
LD E, {??} Load an immediate value into register E 1E {??}
LD E, (HL) Load 8-bit value from an address contained in register HL into register E 5E
LD E, (IX+dis) Load 8-bit value from an address contained in register IX + displacement into register E DD5E {??}
LD E, (IY+dis) Load 8-bit value from an address contained in register IY + displacement into register E FD5E {??}
Z80.CPU instructions
Instruction Description Opcode
LD H, A Load value in register A into register H 7F
LD H, B Load value in register B into register H 78
LD H, C Load value in register C into register H 79
LD H, D Load value in register D into register H 7A
LD H, E Load value in register E into register H 7B
LD H, H Load value in register H into register H 7C
LD H, L Load value in register L into register H 7D
LD H, I Load value in register I into register H ED57
LD H, R Load value in register A into register H ED5F
LD H, {??} Load an immediate value into register H 3E {??}
LD H, (????) Load 8-bit value from an address into register H 3A {????}
LD H, (BC) Load 8-bit value from an address contained in register BC into register H 0A
LD H, (DE) Load 8-bit value from an address contained in register DE into register H 1A
LD H, (HL) Load 8-bit value from an address contained in register HL into register H 7E
LD H, (IX+dis) Load 8-bit value from an address contained in register IX + displacement into register H DD7E {??}
LD H, (IY+dis) Load 8-bit value from an address contained in register IY + displacement into register H FD7E {??}
Z80.CPU instructions
Instruction Description Opcode
LD L, A Load value in register A into register L 6F
LD L, B Load value in register B into register L 68
LD L, C Load value in register C into register L 69
LD L, D Load value in register D into register L 6A
LD L, E Load value in register E into register L 6B
LD L, H Load value in register H into register L 6C
LD L, L Load value in register L into register L 6D
LD L, {??} Load an immediate value into register L 2E {??}
LD L, (HL) Load 8-bit value from an address contained in register HL into register L 6E
LD L, (IX+dis) Load 8-bit value from an address contained in register IX + displacement into register L DD6E {??}
LD L, (IY+dis) Load 8-bit value from an address contained in register IY + displacement into register L FD6E {??}
Z80.CPU instructions
Instruction Description Opcode
LD I, A Load value in register A into register I ED47
Z80.CPU instructions
Instruction Description Opcode
LD R, A Load value in register A into register R ED4F
Z80.CPU instructions
Instruction Description Opcode
LD ({????}), A Load value in register A into memory address 32 {????}
LD ({????}), BC Load value in register BC into memory address ED43 {????}
LD ({????}), DE Load value in register DE into memory address ED53 {????}
LD ({????}), HL Load value in register HL into memory address 22 {????}
ED63 {????}*
LD ({????}), IX Load value in register IX into memory address DD22 {????}
LD ({????}), IY Load value in register IY into memory address FD22 {????}
LD ({????}), SP Load value in register SP into memory address ED73 {????}
Z80.CPU instructions
Instruction Description Opcode
LD (BC), A Load value in register A into memory address held in BC 02
LD (DE), A Load value in register A into memory address held in DE 12
LD (HL), A Load value in register A into memory address held in HL 77
LD (HL), B Load value in register B into memory address held in HL 70
LD (HL), C Load value in register C into memory address held in HL 71
LD (HL), D Load value in register D into memory address held in HL 72
LD (HL), E Load value in register E into memory address held in HL 73
LD (HL), H Load value in register H into memory address held in HL 74
LD (HL), L Load value in register L into memory address held in HL 75
LD (HL), {??} Load the immediate 8-bit value into memory address held in HL 36 {??}
LD (IX+dis), A Load value in register A into memory address held in IX + displacement DD77 {??}
LD (IX+dis), B Load value in register B into memory address held in IX + displacement DD70 {??}
LD (IX+dis), C Load value in register C into memory address held in IX + displacement DD71 {??}
LD (IX+dis), D Load value in register D into memory address held in IX + displacement DD72 {??}
LD (IX+dis), E Load value in register E into memory address held in IX + displacement DD73 {??}
LD (IX+dis), H Load value in register H into memory address held in IX + displacement DD74 {??}
LD (IX+dis), L Load value in register L into memory address held in IX + displacement DD75 {??}
LD (IX+dis), {??} Load immediate 8-bit value in into memory address held in IX + displacement DD36 {??} {??}
LD (IY+dis), A Load value in register A into memory address held in IY + displacement FD77 {??}
LD (IY+dis), B Load value in register B into memory address held in IY + displacement FD70 {??}
LD (IY+dis), C Load value in register C into memory address held in IY + displacement FD71 {??}
LD (IY+dis), D Load value in register D into memory address held in IY + displacement FD72 {??}
LD (IY+dis), E Load value in register E into memory address held in IY + displacement FD73 {??}
LD (IY+dis), H Load value in register H into memory address held in IY + displacement FD74 {??}
LD (IY+dis), L Load value in register L into memory address held in IY + displacement FD75 {??}
LD (IY+dis), {??} Load immediate 8-bit value in into memory address held in IY + displacement FD36 {??} {??}
Z80.CPU instructions
Instruction Description Opcode
LD BC, ({????}) Load 16-bit value from 16-bit memory location into register BC ED4B {????}
LD BC, {????} Load 16-bit immediate value into register BC 01 {????}
LD HL, ({????}) Load 16-bit value from 16-bit memory location into register HL 2A {????}
or ED68 {????}*
LD HL, {????} Load 16-bit immediate value into register HL 21 {????}
LD IX, ({????}) Load 16-bit value from 16-bit memory location into register IX DD2A {????}
LD IX, {????} Load 16-bit immediate value into register IX DD21 {????}
LD IY, ({????}) Load 16-bit value from 16-bit memory location into register IY FD2A {????}
LD IY, {????} Load 16-bit immediate value into register IY FD21 {????}
LD SP, ({????}) Load 16-bit value from 16-bit memory location into register SP ED7B {????}
LD SP, {????} Load 16-bit immediate value into register SP 31 {????}
LD SP, HL Load 16-bit value from register HL into register SP F9
LD SP, IX Load 16-bit value from register IX into register SP DDF9
LD SP, IY Load 16-bit value from register IY into register SP FDF9

* possibly should not be used (bad practice).

Z80.CPU instructions Truth Table
  A B C D E H L I R {??} {????}
A ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓
B ✓ ✓ ✓ ✓ ✓ ✓ ✓     ✓  
C ✓ ✓ ✓ ✓ ✓ ✓ ✓     ✓  
D ✓ ✓ ✓ ✓ ✓ ✓ ✓     ✓  
E ✓ ✓ ✓ ✓ ✓ ✓ ✓     ✓  
H ✓ ✓ ✓ ✓ ✓ ✓ ✓     ✓  
L ✓ ✓ ✓ ✓ ✓ ✓ ✓     ✓  
I ✓                    
R ✓                    
{??}                      
{????} ✓                    
BC                      
DE ✓                    
HL ✓ ✓ ✓ ✓ ✓ ✓ ✓     ✓ ✓
SP                     ✓
IX                      
IY                      
(BC) ✓                    
(DE) ✓                    
(HL) ✓ ✓ ✓ ✓ ✓ ✓ ✓     ✓  
(IX+dis) ✓ ✓ ✓ ✓ ✓ ✓ ✓     ✓  
(IY+dis) ✓ ✓ ✓ ✓ ✓ ✓ ✓     ✓  
({??})                      
({????})                      
Z80.CPU instructions Truth Table
  BC DE HL SP IX IY (BC) (DE) (HL) (IX+dis) (IY+dis) ({??}) ({????})
A             ✓ ✓ ✓ ✓ ✓ ✓  
B                   ✓ ✓ ✓  
C                 ✓ ✓ ✓ ✓  
D                 ✓ ✓ ✓ ✓  
E                 ✓ ✓ ✓ ✓  
H                 ✓ ✓ ✓ ✓  
L                 ✓ ✓ ✓ ✓  
I                          
R                          
{??}                          
{????}                          
BC                          
DE                         ✓
HL                         ✓
SP     ✓   ✓ ✓             ✓
IX                         ✓
IY                         ✓
(BC)                          
(DE)                          
(HL)                          
(IX+dis)                          
(IY+dis)                          
({??})                          
({????}) ✓ ✓ ✓ ✓ ✓ ✓     ✓        

Example

; Example ld b, 5 ; move the value 5 to reg B

See also