Body
#0B
24 сентября 1997 |
|
PUSH HL - Быстрая процедура вывода точки.
┌══════════════════════════════════════════════════════════════┐ │▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ PUSH HL ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓│ └══════════════════════════════════════════════════════════════┘ (C)WRECKER PHN 271-23-24 HI! :( ХЕ-ХЕ...НЕ ПУГАЙТЕСЬ, Т.К. ЭТО СНОВА Я, WRECKER. В СВЯЗИ С ТЕМ, ЧТО НАШ ПОСТОЯННЫЙ ВЕДУЩИЙ РУБРИКИ 'PUSH HL' НАХОДИТСЯ В МЕСТАХ НЕ СТОЛЬ ОТДАЛЕННЫХ, ТО Я БУДУ ВРЕМЕННО /Я НАДЕЮСЬ ТОЛЬКО В ЭТОМ НОМЕРЕ/ ЕГО ЗАМЕЩАТЬ. СЕГОДНЯ Я ХОЧУ ПРЕДСТВИТЬ ВАМ ПРОЦЕДУРУ ВЫВОДА ТОЧКИ НА ЭКРАН. А СВЯЗАНО ЭТО С ТЕМ, ЧТО НЕДАВНО МНЕ ПОСЧАСТЛИВИЛОСЬ УВИДЕТЬ НУЛЕВОЙ ВЫПУСК ГАЗЕТЫ 'MASK' В КОТОРОЙ ЕЕ АВТОР - SPACE5, ВЫСКЗАЛ СВОЕ НЕДОВОЛЬСТВО ПОДПРОГРАММОЙ, КОТОРУЮ МЫ ПУБЛИКОВАЛИ В ОДНОМ ИЗ НОМЕРОВ НАШЕЙ ГАЗЕТЫ, И ПРИВЕЛ СВОЙ "СПОСОБ" РЕШЕНИЯ ДАННОЙ "ПРОБЛЕМЫ". ВОТ ПРОЦЕДУРА КОТОРУЮ НАПИСАЛ В 'MASK #0', SPACE5... MASK_0 LD D,XPOSITION ;7t LD B,YPOSITION ;7t LD H,HIGH BYTE ;7t LD L,D ;4t LD E,(HL) ;7t INC H ;4t LD A,(HL) ;7t LD L,B ;4t INC H ;4t OR (HL) ;7t LD C,A ;4t INC H ;4t LD B,(HL) ;7t LD A,(BC) ;7t OR E ;4t LD (BC),A ;7t ----------------------------------- ;91 TAKT НЕ БУДУ СПОРИТЬ, ПРОЦЕДУРА ХОРОШАЯ, НО ЧТОБЫ ВЫ НЕ ПОДУМАЛИ, ЧТО НАШ КОДЕР "ЛОПУХ" И СПЕЦИАЛЬНО НАПИСАЛ ТАКУЮ ГРОМОЗДКУЮ ПРОЦЕДУРУ ДЛЯ ИСПОЛЬЗОВАНИЯ В ПРОГРАММАХ, Я СЕЙЧАС ВСЕ ОБЪЯСНЮ: 1) НАШ КОДЕР НЕ "ЛОПУХ" 2) ПОДПРОГРАММА БЫЛА НАПИСАНА ДЛЯ НАЧИНАЮЩИХ, И ЗАДАЧА СОСТОЯЛА НЕ В ТОМ ЧТО БЫ НАПИСАТЬ НАИКРУТЕЙШИЙ АЛГОРИТМ, А НАДО БЫЛО ПРОСТО И ДОСТУПНО ОБЪЯСНИТЬ ЛЮДЯМ ЧТО К ЧЕМУ. 3) СОБСТВЕННО СЕГОДНЯ МЫ ПУБЛИКУЕМ (СПЕЦИАЛЬНО ДЛЯ ПРОДВИНУТЫХ КОДЕРОВ) ДОВОЛЬНО БЫСТРУЮ ПРОЦЕДУРКУ. 4) ЕСЛИ КТО-ТО СМОЖЕТ БЫСТРЕЕ, БУДЕМ ТОЛЬКО РАДЫ. 5) КАК ГОВОРИТСЯ ИЗ ЛЮБОЙ СИТУАЦИИ ЕСТЬ НЕСКОЛЬКО ВЫХОДОВ. А ВОТ И ПРОЦЕДУРА НАЙДЕННАЯ МНОЮ НА ОДНОМ ИЗ SATSOFT'ОВСКИХ РАБОЧИХ ДИСКОВ, ПО-МОЕМУ ОНА РАБОТАЕТ БЫСТРЕЕ И КРУЧЕ, ЧЕМ ПРЕДЫДУЩАЯ. PLOT LD H,'TABLE_P ;7t LD L,B ;4t LD D,(HL) ;7t INC H ;4t LD A,(HL) ;7t INC H ;4t LD L,C ;4t ADD A,(HL) ;7t INC H ;4t LD E,A ;4t LD A,(DE) ;7t OR (HL) ;7t LD (DE),A ;7t ------------------------------------- ;73 TAKT ТАBLE_P EQU #FC00 ;АДРЕС ВАШЕЙ ТАБЛИЧКИ ВОТ СОБСТВЕННО ГОВОРЯ И ВСЕ. ОСТАЕТСЯ ТОЛЬКО ДОБАВИТЬ, ЧТО ВСЕ БЫЛО НАБРАНО В ALSM 3.8 (ЧИТАЙ BEST ASSEMBLER), И НЕ ЗАБУДЬТЕ СДЕЛАТЬ ТАБЛИЧКУ. :) P.S. НАДЕЮСЬ ТЕПЕРЬ SPACE5 ПОНРАВИТЬСЯ БЫСТРОДЕЙСТВИЕ :) ВСЕ ПОКА!
Другие статьи номера:
Похожие статьи:
В этот день... 21 ноября