ZXNet эхоконференция «code.zx»
тема: algoritm
от: Aleksandr Majorov
кому: Andrey Orlov
дата: 21 Nov 1998
Хаюшки, Andrey!
Once in morning 18-11-97 12:46:49 somebody Andrey Orlov has
written to all about 'algoritm'.
AO> Есть: число в регистровой паре! HАПРИМЕР HL-12345 !
AO> надо: в массиве из пяти байт получить : DB 1,2,3,4,5 !!
AO> ?кто поткинет умную идею???
на крутость кода не претендую... но оно работает!
только сам разбирайся как ;-))))))
====================================================
;ПЕРЕВЕСТИ [BC] В ASCII-ЧИСЛО,
;В [A] - КОЛИЧЕСТВО ЦИФР, ЕСЛИ #00 - БЕЗ HУЛЕЙ
DECODE_BCA PUSH AF
LD HL,WORK_BUFF_S ;вот здесь будет результат
PUSH HL
PUSH BC: LD BC,#0730
LD (HL),C: INC HL: DJNZ $-2
LD (HL),B
POP DE
CALL WDECOD
POP HL
LD A,7: POP BC: SUB B
CP 7: JR Z,DECO_BCA0
ADD A,L: LD L,A: RET NC
INC H: RET
DECO_BCA0 LD A,(HL)
OR A: JR Z,DECO_BCA1
CP "0": RET NZ
INC HL: JR DECO_BCA0
DECO_BCA1 DEC HL: RET
DECODE_BC PUSH BC: LD BC,#0620
LD (HL),C: INC HL: DJNZ $-2
POP DE
WDECOD EX DE,HL
LD B,3
DECOD PUSH BC: LD B,16: XOR A
SBIT ADD HL,HL: ADC A,A: DAA
JR NC,$+3: INC HL
DJNZ SBIT: LD C,A
AND #0F: ADD A,"0"
DEC DE: LD (DE),A
LD A,C: RRCA: RRCA: RRCA: RRCA
AND #0F: ADD A,"0"
DEC DE: LD (DE),A
POP BC: DJNZ DECOD
RET
====================================================
Hу вот и все *MAS* с кувалдой
|