Platinum #01
08 августа 1996 |
![]() |

Предлагаем вашему вниманию очередной раздел нашего журнала КОНКУРС ЮНЫХ ПРОГРАММИСТОВ Прежде всего небольшая ошибка в выполнении команд LDIR и LDDR. Попробуйте сказать , будет ли работать такая процедура: ORG 30000 LD HL,M2 LD DE,M1+1 LD BC,65535 LDDR DEFS 198,0 M1 DEFB 0 DEFB #5Е JP CONTINUE DEFS 195,0 M2 DEFS,0 Результатом работы этой маленькой програмки будет выход по адресу CONTINUE с включением режима прерываний IM 2. Все дело в том , что процессор при выполнении команды LDDR после переброски очередного байта снова перечитывает код команды и после переброски бай- та #5Е вместо LDDR процессор примет команду IM 2 ну a коман- да JP уже переброшена Примечание : в данном примере перебрасывается 200 байт. В регистре BC количество якобы перебрaсывaемых байт - заведомо больше количества байт между первым байтом команды LDDR и меткой M1 Массив DEFS 198,0 может быть заполнен например программой инициализации чего-либо . Массив DEFS 195,0 может быть программой обработки прерываний или чем нибудь другим . Команду JP CONTINUE можно за- менить любой другой . теперь нужно сказать про эле- мент DEFB #5Е Это второй байт команды кото- рая будет выполняться вместо LDDR после отработки процедуры в данном случае это будет команда IM 2 ЕСЛИ ВМЕСтО #5Е ПОДСтАВИтЬ #В8 ПОСЛЕДСтВИЯ МОГУт БЫтЬ НЕПРЕДСКАЗУЕМЫМИ (ПОЧЕМУ ?) А тЕПЕРЬ МИНИ-ЗАДАЧКА Что будет в регистре ВС после выполнения следующей процедуры ORG 30000 LD BC,32 LD DE,M2+1 LD HL,M3 M2 LDIR JP CONTINUE M3 DEFB #XX DEFS 99,#XX (#XX НАПРИМЕР РАВЕН #79) И каковы будут результаты ее работы ? Наиболее полные ответы будут оценены , a их авторы получат небольшие призы ! Крупных хаккеров просьба не беспокоиться ,это конкурс для начинающих !!!! Ответы присылайте по адресу г.тОМСК 634062 ИРКУтСКИЙ тРАКт 128-А КВАРтИРА 6 CЛОБОДЯН АЛЕКСАНДРУ ВЛАДИМИРОВИЧУ C пометкой: "конкурс YOUNG CODER" ДО НОВЫХ ВСтРЕЧ ДРУЗЬЯ ! 03.08.96 NIKANOR.
Other articles:
|
|
|
|
|
|
|
|
|
Similar articles:
В этот день... 1 October
Scream #04(scl),
Bred #02,
Screamergy #01,
Bred #01,
Open Letters #08,
Millenium #01,
Body #2F,
Deja Vu #0A,
X-Magazine #17,
ZX Chart #01,
Skimer #02,
X-Magazine #12,
Body #17,
Bugs #01,
Adventurer #10,
X-Magazine #07,
Wallpaper #05,
Proton #48,
ZX Pilot #29,
Cheat #03 demo,
Proton #48,
Deja Vu #06,
Deja Vu #02,
ZX-News #41,
Spectrum Progress #01,
Nicron #01,
Maximum #18,
ZX Digest #02,
Speccy #01,
Emulate #02,
Speccy #01,
200 #B,
Spectrofon #09,
ZX Revija #01