Инструменты пользователя

Инструменты сайта


microprocessor_kit_z80-book1:11

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
microprocessor_kit_z80-book1:11 [2020-07-12 14:19]
GreyWolf
microprocessor_kit_z80-book1:11 [2020-07-12 14:58] (текущий)
GreyWolf [Команды DD CB / FD CB]
Строка 4: Строка 4:
  
 ===== Основной набор команд ===== ===== Основной набор команд =====
-FIXME 
- 
  
 | ^  По горизонтали:​ \\ старшая тетрада ​ | | ^  По горизонтали:​ \\ старшая тетрада ​ |
Строка 22: Строка 20:
 ^  9  |ADD HL,BC|ADD HL,DE|ADD HL,HL|ADD HL,SP|LD C,C|LD E,C|LD L,C|LD A,C|ADC A,C|SBC A,C|XOR C|CP C|RET|EXX|JP (HL)|LD SP,HL| ^  9  |ADD HL,BC|ADD HL,DE|ADD HL,HL|ADD HL,SP|LD C,C|LD E,C|LD L,C|LD A,C|ADC A,C|SBC A,C|XOR C|CP C|RET|EXX|JP (HL)|LD SP,HL|
 ^  A  |LD A,(BC)|LD A,(DE)|LD HL,(nn)|LD A,(nn)|LD C,D|LD E,D|LD L,D|LD A,D|ADC A,D|SBC A,D|XOR D|CP D|JP Z,nn|JP C,nn|JP PE,nn|JP M,nn| ^  A  |LD A,(BC)|LD A,(DE)|LD HL,(nn)|LD A,(nn)|LD C,D|LD E,D|LD L,D|LD A,D|ADC A,D|SBC A,D|XOR D|CP D|JP Z,nn|JP C,nn|JP PE,nn|JP M,nn|
-^  B  |DEC BC|DEC DE|DEC HL|DEC SP|LD C,E|LD E,E|LD L,E|LD A,E|ADC A,E|SBC A,E|XOR E|CP E|**CB**|IN A,(n)|EX DE,HL|EI|+^  B  |DEC BC|DEC DE|DEC HL|DEC SP|LD C,E|LD E,E|LD L,E|LD A,E|ADC A,E|SBC A,E|XOR E|CP E|**[[#CB]]**|IN A,(n)|EX DE,HL|EI|
 ^  C  |INC C|INC E|INC L|INC A|LD C,H|LD E,H|LD L,H|LD A,H|ADC A,H|SBC A,H|XOR H|CP H|CALL Z,nn|CALL C,nn|CALL PE,nn|CALL M,nn| ^  C  |INC C|INC E|INC L|INC A|LD C,H|LD E,H|LD L,H|LD A,H|ADC A,H|SBC A,H|XOR H|CP H|CALL Z,nn|CALL C,nn|CALL PE,nn|CALL M,nn|
-^  D  |DEC C|DEC E|DEC L|DEC A|LD C,L|LD E,L|LD L,L|LD A,L|ADC A,L|SBC A,L|XOR L|CP L|CALL nn|**DD**|**ED**|**FD**|+^  D  |DEC C|DEC E|DEC L|DEC A|LD C,L|LD E,L|LD L,L|LD A,L|ADC A,L|SBC A,L|XOR L|CP L|CALL nn|**[[#DD]]**|**[[#ED]]**|**[[#FD]]**|
 ^  E  |LD C,n|LD E,n|LD L,n|LD A,n|LD C,(HL)|LD E,(HL)|LD L,(HL)|LD A,(HL)|ADC A,(HL)|SBC A,(HL)|XOR (HL)|CP (HL)|ADC A,n|SBC A,n|XOR n|CP n| ^  E  |LD C,n|LD E,n|LD L,n|LD A,n|LD C,(HL)|LD E,(HL)|LD L,(HL)|LD A,(HL)|ADC A,(HL)|SBC A,(HL)|XOR (HL)|CP (HL)|ADC A,n|SBC A,n|XOR n|CP n|
 ^  F  |RRCA|RRA|CPL|CCF|LD C,A|LD E,A|LD L,A|LD A,A|ADC A,A|SBC A,A|XOR A|CP A|RST 08H|RST 18H|RST 28H|RST 38H| ^  F  |RRCA|RRA|CPL|CCF|LD C,A|LD E,A|LD L,A|LD A,A|ADC A,A|SBC A,A|XOR A|CP A|RST 08H|RST 18H|RST 28H|RST 38H|
  
 +{{anchor:​cb}}
 ===== Команда CB ===== ===== Команда CB =====
-FIXME 
  
 | ^  По горизонтали:​ \\ старшая тетрада ​ | | ^  По горизонтали:​ \\ старшая тетрада ​ |
 ^  По вертикали:​ \\ младшая тетрада ​ ^ ^ ^  По вертикали:​ \\ младшая тетрада ​ ^ ^
  
 +| ^  0  ^  1  ^  2  ^  3  ^  4  ^  5  ^  6  ^  7  ^  8  ^  9  ^  A  ^  B  ^  C  ^  D  ^  E  ^  F  ^
 +^  0  |RLC B|RL B|SLA B|-|BIT 0,B|BIT 2,B|BIT 4,B|BIT 6,B|RES 0,B|RES 2,B|RES 4,B|RES 6,B|SET 0,B|SET 2,B|SET 4,B|SET 6,B|
 +^  1  |RLC C|RL C|SLA C|-|BIT 0,C|BIT 2,C|BIT 4,C|BIT 6,C|RES 0,C|RES 2,C|RES 4,C|RES 6,C|SET 0,C|SET 2,C|SET 4,C|SET 6,C|
 +^  2  |RLC D|RL D|SLA D|-|BIT 0,D|BIT 2,D|BIT 4,D|BIT 6,D|RES 0,D|RES 2,D|RES 4,D|RES 6,D|SET 0,D|SET 2,D|SET 4,D|SET 6,D|
 +^  3  |RLC E|RL E|SLA E|-|BIT 0,E|BIT 2,E|BIT 4,E|BIT 6,E|RES 0,E|RES 2,E|RES 4,E|RES 6,E|SET 0,E|SET 2,E|SET 4,E|SET 6,E|
 +^  4  |RLC H|RL H|SLA H|-|BIT 0,H|BIT 2,H|BIT 4,H|BIT 6,H|RES 0,H|RES 2,H|RES 4,H|RES 6,H|SET 0,H|SET 2,H|SET 4,H|SET 6,H|
 +^  5  |RLC L|RL L|SLA L|-|BIT 0,L|BIT 2,L|BIT 4,L|BIT 6,L|RES 0,L|RES 2,L|RES 4,L|RES 6,L|SET 0,L|SET 2,L|SET 4,L|SET 6,L|
 +^  6  |RLC (HL)|RL (HL)|SLA (HL)|-|BIT 0,(HL)|BIT 2,(HL)|BIT 4,(HL)|BIT 6,(HL)|RES 0,(HL)|RES 2,(HL)|RES 4,(HL)|RES 6,(HL)|SET 0,(HL)|SET 2,(HL)|SET 4,(HL)|SET 6,(HL)|
 +^  7  |RLC A|RL A|SLA A|-|BIT 0,A|BIT 2,A|BIT 4,A|BIT 6,A|RES 0,A|RES 2,A|RES 4,A|RES 6,A|SET 0,A|SET 2,A|SET 4,A|SET 6,A|
 +^  8  |RRC B|RR B|SRA B|SRL B|BIT 1,B|BIT 3,B|BIT 5,B|BIT 7,B|RES 1,B|RES 3,B|RES 5,B|RES 7,B|SET 1,B|SET 3,B|SET 5,B|SET 7,B|
 +^  9  |RRC C|RR C|SRA C|SRL C|BIT l,C|BIT 3,C|BIT 5,C|BIT 7,C|RES l,C|RES 3,C|RES 5,C|RES 7,C|SET l,C|SET 3,C|SET 5,C|SET 7,C|
 +^  A  |RRC D|RR D|SRA D|SRL D|BIT 1,0|BIT 3,D|BIT 5,D|BIT 7,D|RES 1,D|RES 3,D|RES 5,D|RES 7,D|SET 1,D|SET 3,D|SET 5,D|SET 7,D|
 +^  B  |RRC E|RR E|SRA E|SRL E|BIT 1,E|BIT 3,E|BIT 5,E|BIT 7,E|RES 1,E|RES 3,E|RES 5,E|RES 7,E|SET 1,E|SET 3,E|SET 5,E|SET 7,E|
 +^  C  |RRC H|RR H|SRA H|SRL H|BIT l,H|BIT 3,H|BIT 5,H|BIT 7,H|RES l,H|RES 3,H|RES 5,H|RES 7,H|SET l,H|SET 3,H|SET 5,H|SET 7,H|
 +^  D  |RRC L|RR L|SRA L|SRL L|BIT l,L|BIT 3,L|BIT 3,L|BIT 7,L|RES l,L|RES 3,L|RES 5,L|RES 7,L|SET l,L|SET 3,L|SET 5,L|SET 7,L|
 +^  E  |RRC (HL)|RR (HL)|SRA (HL)|SRL (HL)|BIT 1,(HL)|BIT 3,(HL)|BIT 5,(HL)|BIT 7,(HL)|RES l,(HL)|RES 3,(HL)|RES 5,(HL)|RES 7,(HL)|SET 1,(HL)|SET 3,(HL)|SET 5,(HL)|SET 7,(HL)|
 +^  F  |RRC A|RR A|SRA A|SRL A|BIT l,A|BIT 3,A|BIT 5,A|BIT 7,A|RES l,A|RES 3,A|RES 5,A|RES 7,A|SET l,A|SET 3,A|SET 5,A|SET 7,A|
 +
 +{{anchor:​dd}}
 +{{anchor:​fd}}
 ===== Команды DD/FD ===== ===== Команды DD/FD =====
  
Строка 44: Строка 62:
 |  09  |ADD ii,BC| |  09  |ADD ii,BC|
 |  19  |ADD ii,DE| |  19  |ADD ii,DE|
 +| ||
 |  21  |LD ii,nn| |  21  |LD ii,nn|
 |  22  |LD (nn),ii| |  22  |LD (nn),ii|
 +| ||
 |  23  |INC ii| |  23  |INC ii|
 +| ||
 |  29  |ADD ii,ii| |  29  |ADD ii,ii|
 +| ||
 |  2A  |LD ii,(nn)| |  2A  |LD ii,(nn)|
 +| ||
 |  2B  |DEC ii| |  2B  |DEC ii|
 |  34  |INC (ii+d)| |  34  |INC (ii+d)|
 |  35  |DEC (ii+d)| |  35  |DEC (ii+d)|
 +| ||
 |  36  |LD (ii+d),n| |  36  |LD (ii+d),n|
 +| ||
 |  39  |ADD ii,SP| |  39  |ADD ii,SP|
 +| ||
 |  46  |LD B,(ii+d)| |  46  |LD B,(ii+d)|
 |  4E  |LD C,(ii+d)| |  4E  |LD C,(ii+d)|
Строка 60: Строка 86:
 |  66  |LD H,(ii+d)| |  66  |LD H,(ii+d)|
 |  6E  |LD L,(ii+d)| |  6E  |LD L,(ii+d)|
 +| ||
 |  70  |LD (ii+d),B| |  70  |LD (ii+d),B|
 |  71  |LD (ii+d),C| |  71  |LD (ii+d),C|
Строка 67: Строка 94:
 |  75  |LD (ii+d),L| |  75  |LD (ii+d),L|
 |  77  |LD (ii+d),A| |  77  |LD (ii+d),A|
 +| ||
 |  7E  |LD A,(ii+d)| |  7E  |LD A,(ii+d)|
 +| ||
 |  B6  |ADD A,(ii+d)| |  B6  |ADD A,(ii+d)|
 |  BE  |ADC A,(ii+d)| |  BE  |ADC A,(ii+d)|
Строка 76: Строка 105:
 |  B6  |OR (ii+d)| |  B6  |OR (ii+d)|
 |  BE  |CP (ii+d)| |  BE  |CP (ii+d)|
-|  CB  |**DD/CB** **FD/CB**|+| || 
 +|  CB  |**[[#​DD_CB_FD_CB|DD CB / FD CB]]**
 +| ||
 |  E1  |POP ii| |  E1  |POP ii|
 |  E3  |EX (SP),ii| |  E3  |EX (SP),ii|
Строка 84: Строка 115:
  
  
 +{{anchor:​ed}}
 ===== Команда ED ===== ===== Команда ED =====
  
Строка 106: Строка 138:
 ^  E|-|IM 2|-|-|-|-| ^  E|-|IM 2|-|-|-|-|
 ^  F|LD R,A|LD A,​R|RLD|-|-|-| ^  F|LD R,A|LD A,​R|RLD|-|-|-|
 +
 +{{anchor:​dd_cb_fd_cb}}
 +===== Команды DD CB / FD CB =====
 +
 +^Первый байт|DD:​ ii=IX \\ FD: ii=IY|
 +^Второй байт|CB|
 +^Третий байт|Смещение d|
 +
 +^Четвёртый байт^Команда^
 +|06|RLC (ii+d)|
 +|0Е|RRC (ii+d)|
 +|16|RL (ii+d)|
 +|1E|RR (ii+d)|
 +|26|SLA (ii+d)|
 +|2E|SRA (ii+d)|
 +|3E|SRL (ii+d)|
 +|46|BIT 0,(ii+d)|
 +|4E|BIT 1,(ii+d)|
 +|56|BIT 2,(ii+d)|
 +|5E|BIT 3,(ii+d)|
 +|66|BIT 4,(ii+d)|
 +|6E|BIT 5,(ii+d)|
 +|76|BIT 6,(ii+d)|
 +|7E|BIT 7,(ii+d)|
 +|86|RES 0,(ii+d)|
 +|8E|RES 1,(ii+d)|
 +|96|RES 2,(ii+d)|
 +|9E|RES 3,(ii+d)|
 +|A6|RES 4,(ii+d)|
 +|AE|RES 5,(ii+d)|
 +|B6|RES 6,(ii+d)|
 +|BE|RES 7,(ii+d)|
 +|C6|SET 0,(ii+d)|
 +|CE|SET 1,(ii+d)|
 +|D6|SET 2,(ii+d)|
 +|DE|SET 3,(ii+d)|
 +|E6|SET 4,(ii+d)|
 +|EE|SET 5,(ii+d)|
 +|F6|SET 6,(ii+d)|
 +|FE|SET 7,(ii+d)|
 +
 +
  
  
microprocessor_kit_z80-book1/11.1594552758.txt.gz · Последние изменения: 2020-07-12 14:19 — GreyWolf