Юный техник - для умелых рук 1989-08, страница 11запустить программу часов в МОНИТО-PE-«F», необходимо убедиться до отключения МОНИТОР А-«0», что часы «идут» с помощью директивы «В». Затем директивой «М» загрузить в ячейки ОЗУ следующие коды: C000H — F3H7, С003Н — СЗН, С002Н — ООН, С003Н — F8H, С038Н — СЗН, С039Н — С1Н, СОЗАН—FFH, F6FDH - ООН (секунды), F6FEH — код минут, F6FFH —- код часов. Далее переключают ОЗУ из области С000 — C3FFH в область 0000 — 03FFH, одновременно отключив МОНИТОРА» (для этого подойдет любой сдвоенный тумблер). Затем по сигналам точного времени необходимо нажать на клавишу «УСТ», пустив тем самым часы в дисплейном модуле. Несколько слов следует сказать о пользовании директивами записи и чтения данных с магнитофона при наличии прерываний в микроЭВМ. Директивами записи и чтения МОНИТОРА-«0» (директивы «9», «А» соответственно) следует пользоваться при небольшом объеме информации, так как в драйверах записи и чтения байта на магнитофон этого МОНИТОРА программно не делается запрет прерывания, и при большом объеме данных для надежной записи и чтения на магнитофон следует аппаратно (с помощью дополнительного тумблера) отключать запрос прерывания от вывода 14 микропроцессора и подключать этот вывод на общий провод. Директивы записи и чтения данных «0» и «1» MOHMTOPA-«F» дисплейного модуля используют программный запрет прерывания в драйверах записи и чтения байта на магнитофон (останов часов на время вывода или ввода байта). Это требует коррекции времени после работы с магнитофоном, например, с помощью директивы «М». Используемый в «ЮТ-88» формат записи данных на магнитную ленту в МОНИТО-РЕ-«0» совладает с форматом записи, используемым в «Микро-80», а при использовании директив МОНИТОРA-«F» совпадает с форматом записи «РК-86». Благодаря этому обеспечивается программная совместимость по вводу данных с этими наиболее распространенными среди радиолюбителей микроЭВМ. Следует лишь помнить, что контрольная сумма в «РК-86» и «Микро-80» считается по-разному и совпадает лишь в младшем байте. В «ЮТ-88» контрольная сумма считается, как в «Микро-80». В частности, контрольная сумма МОНИТОРA-«F» ED46H. При работе с МОНИТОРОМ-«Я» порт ввода/вывода данных на кассетный магнитофон используется также для сигнализации коротким однотональным звуком нажатия клавиш. Поэтому удобно подключить к этому порту магнитофон .в режиме записи (с остановленной лентой). Последняя директива МОНИТОРАМ», которую осталось рассмотреть,— директива «R». Она служит для чтения информации из ПЗУ, подключенного к дополнительному инферфейсу. Параметрами этой директивы являются начальный адрес ПЗУ, конечный адрес ПЗУ и адрес загрузки ОЗУ. MOHMTOP-«F» имеет стандартный набор подпрограмм (см. табл. в № 5), которыми можно пользоваться при написании программ на «ЮТ-88». Набор подпрограмм в виде вектора переходов расположен в самом начале МОНИ-TOPA-«F» и полностью соответствует подпрограммам «Микро-80» и «РК-86». Это также обеспечивает программную совместимость «ЮТ-88» с «РК-86» и «Микро-80», конечно, при условии, что используются ресурсы «ЮТ-88» через вектор стандартных подпрограмм МОНИТОРA-«F». В. БАРТЕНЕВ IIII11IIIIIIII1IIIIIIIIIIIII1IIIIIII1IIIIIIIIIIII1 Это, пожалуй, одна из самых интересных математических игр. Придумал ее двадцать лет назад американский математик Конуэй. Свое название — «жизнь» — игра получила не случайно. Законы и правила, которым она подчиняется, очень похожи на реальные процессы, происходящие дри зарождении, развитии и гибели колоний простейших микроорганизмов. Для игры вам понадобится большая клетчатая доска или расчерченный на клетки лист бумаги и плоские двухцветные фишки. Идея игры в том, что, начав с какого-нибудь простого расположения фишек, надо проследить за эволюцией исходной позиции, изменяющейся под действием «генетических законов». Они управляют рождением, гибелью и выживанием фишек. Законы эти очень просты: 1. ВЫЖИВАНИЕ. Каждая фишка, имеющая две или три соседние фишки, выживает и переходит в следующее поколение. 2. ГИБЕЛЬ. Каждая фишка, у которой больше трех соседей, погибает (снимается с доски) из-за перенаселенности. Каждая фишка, вокруг которой свободны все соседние клетки или занята всего одна клетка, погибает от одиночества. 3. РОЖДЕНИЕ. Если число фишек, с которыми граничит какая-нибудь пустая клетка, в точности равно трем (не больше и не меньше), то на этой клетке происходит рождение нового «организма» — следующим ходом на нее ставится еще одна фишка. Заметим, что каждую клетку доски (она Рис. 1ИГРЫ ПРОГРАММИСТА считается бесконечной) окружают восемь соседних клеток: четыре имеют с ней общие стороны, а четыре другие общие вершины. Гибель и рождение организмов происходят одновременно. Вместе взятые, они образуют одно поколение, или, иначе говоря, один ход в эволюции начальной конфигурации. Сама начальная конфигурация считается первым ходом. Ходы лучше всего делать следующим образом: 1) начните с конфигурации, целиком состоящей из черных фишек; 2) определите, какие фишки должны погибнуть, и положите на каждую из них по одной черной фишке; 3) нацдите все свободные клетки, на которых должна родиться новая фишка, и положите на них фишки белого цвета. Проделав все эти операции, проверьте, не сделали ли вы ошибок, и только после этого снимите с доски все погибшие фишки (столбики из двух фишек), а все родившиеся замените черными. Проделав все операции, вы получите первое поколение в эволюции первоначальной конфигурации. Аналогичным образом получаются и все последующие поколения. Теперь вам, наверное, стало понятно, почему нужны фишки даух цветов: поскольку рождение и гибель «организмов» происходят одновременно, новорожденные фишки никак не влияют на гибель и рождение остальных фишек. Поэтому, проверяя новую конфигурацию, необходимо отличить их друг от друга. Допустить ошибку здесь очень легко. Вы получили первое поколение в эволюции первоначальной конфигурации. Та-
IllllUllllIllIIIIIIIIIIlUlIllIIIIIIIIIIlllIIIIIIlIllilllllllllllllllillll. "Milliillllillllllllli 11 УДИВИТЕЛЬНАЯ ИГРА «ЖИЗНЬ»
|