Задача: вывести число 0-255 на экран как можно быстрее (имхо краткость кода уже нужна только писателям 512b интро). Вот мой вариант:
Код:prnnm: LD A,число LD HL,.dectb LD DE,адрес_на_экране LD B,3 .loop1: LD C,"0"-1 .loop2: INC C SUB (HL) JR NC,.loop2 ADD A,(HL) PUSH AF LD A,C CALL prnNUM ;вывод числа POP AF INC E INC HL DJNZ .loop1 RET .dectb: DB 100,10,1 prnNUM: ;вывод числа через стек ;в DE - ADDR (на начале строки!) ;в A - число PUSH BC,DE,HL LD BC,адресшрифта LD H,0 LD L,A ADD HL,HL ADD HL,HL ADD HL,HL ADD HL,BC LD (.savsp+1),SP LD SP,HL EX DE,HL POP DE LD (HL),E INC H LD (HL),D INC H POP DE LD (HL),E INC H LD (HL),D INC H POP DE LD (HL),E INC H LD (HL),D INC H POP DE LD (HL),E INC H LD (HL),D .savsp: LD SP,0 POP HL,DE,BC RET




ATM-Turbo 512 v4.50,
Commodore 64G + TAC-2, Retro-Bit Super Retro TRIO
Ответить с цитированием
Размещение рекламы на форуме способствует его дальнейшему развитию 