Оставлю пример здесь. Зеркалирование байта, другой способ.
Код:; Mirror byte Z80 example 1 LD HL,BYTE ; Set pointer to byte LD DE,#5533 ; Masks to registers LD (HL),#0F ; Set byte to memory (for example) ;---------------------------------------------------------------------- ; 21 bytes, 103 t. LD A,(HL) AND D ADD A,A LD C,A LD A,(HL) RRA AND D OR C LD B,A RRA RRA AND E LD C,A LD A,B AND E ADD A,A ADD A,A OR C LD (HL),A RRD ;---------------------------------------------------------------------- LD A,(HL) ; Get result from memory to reg A RET ;---------------------------------------------------------------------- ; Mirror byte Z80 example 2 ; 17 bytes, 66 t. LD C,A RLCA RLCA XOR C AND %10101010 XOR C LD C,A RLCA RLCA RLCA RRC C XOR C AND %01100110 XOR C ;---------------------------------------------------------------------- ; Get result to reg A




Ответить с цитированием
