Текст
                    fl ВЫЧИСЛИТЕЛЬНАЯ
ТЕХНИКА
И ЕЕ ПРИМЕНЕНИЕ
Новое
в жизни,
науке,
технике
Периферийные
устройства
ЭВМ
1990
Подписная
научно*
популярная
серия
Издается
еже месячно
с 1988 г.



Новое в жизни, науке, технике ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА_________ И ЕЁ ПРИМЕНЕНИЕ Подписная научно- популярная серия 3/1990 ПЕРИФЕРИЙНЫЕ УСТРОЙСТВА ЭВМ Издается ежемесячно с 1988 г. Н. МЕШКОВ, С. УШАНОВ ПЕРСОНАЛЬНАЯ ЭВМ «ЯМАХА MSX-2»: ДИСКОВОД, МАГНИТОФОН, ЛОКАЛЬНАЯ СЕТЬ Рубрики Переводы БК за рога Обмен опытом Как «убить» машинное время Издательство «Знание» Москва 1990
ББК 32.973 П26 МЕШКОВ Николай Алексеевич — кандидат техни- ческих наук, старший научный сотрудник кафед- ры кибернетики МИЭМ, имеет несколько изобре- тений, награжден Почетным знаком Минвуза СССР и ЦК ВЛКСМ «За успехи в научно-техничес- ком творчестве молодежи». Победитель 1-го Мос- ковского городского конкурса молодых ученых и специалистов по учебным и игровым программам. УШАНОВ Сергей Николаевич — известный публи- цист. Основная направленность публикаций — пути развития научно-технического прогресса. УТЕНКОВ Сергей Альбертович — инженер, жур- налист. ГЕРМАН Н. — кандидат физико-математических наук, работает в Институте высоких температур АН СССР. ПОВИЛЕЙКО Рюрик Петрович — кандидат техни- ческих наук, доцент Новосибирского филиала ВИПК Госснаба СССР. РЕДАКТОР Б. М. ВАСИЛЬЕВ ISBN 5-07-000531 © Издательство «Знание», 1990 г.
Познакомившись в августовском выпуске брошюр этой серии с начальными главами нашего рассказа о компьютере «Ямаха», наиболее внимательные читатели, наверное, были несколько удивлены. Действительно, почему это авторы, описав правила составления программ на Бейсике и даже приведя шутливый пример простенькой программки, ничего не сказали о том, как ее сохранить? Ведь стоит только выключить компьютер — и все результаты нелегкого труда пропадут бесследно... При- чина нашей «невнимательности» вполне прозаическая: попро- сту не хватило места, и разговор о способах сохранения инфор- мации нам пришлось перенести в этот выпуск. Попутно мы собираемся сказать несколько слов и о «коллективной» работе компьютеров в составе небольшого комплекса, имену- емого локальной сетью. Н. МЕШКОВ, С. УШАНОВ ПЕРСОНАЛЬНАЯ ЭВМ «Ямаха MSX-2: ДИСКОВОД, МАГНИТОФОН, ЛОКАЛЬНАЯ СЕТЬ Впрочем, как говорит пословица, нет худа без добра. То, что следующий исключительно нашим рекомендациям прилежный читатель пока еще не нау- чился сохранять составленную им про- грамму, натолкнуло нас на озорную мысль сыграть с ним, читателем, небольшую шутку. Каемся, в программе «Капризный собеседник» мы поставили две замаскированные ловушки. Их не столь сложно обнаружить (в этом вам поможет сама машина), однако далеко не всякий начинающий программист сможет объяснить, в чем же суть зало- женных нами «мин», препятствующих правильной работе программы. Зная, что читатели не смогут сохранить текст программы и будут поневоле отно- ситься к ней всего лишь как к чернови- ку, мы полагали, что они за этот розы- грыш на нас не обидятся. Говоря же серьезно, без такой демонстрации путей возникновения ошибок в про- граммах мы считаем изложение просто неполным. Ваша последующая про- граммистская практика убедительно докажет: в этом мы совершенно правы. Вот увидите. Когда мы составляли программу «Капризный собеседник» (она не отняла много времени — совсем ведь несложная и короткая), даже у нас, людей все-таки достаточно опытных, ненароком проскочило несколько мел- ких ошибок. Одни огрехи, такие, как простые опечатки или очевидные неправильности пунктуации вроде лиш- ней запятой, были видны сразу и исправлялись легко. Серьезных, логи- ческих, ошибок в столь простой про- грамме мы, разумеется, не сделали. А вот пунктуационные погрешности более тонкого свойства были. И «невооружен- ным» глазом мы их сперва даже и не заметили. Когда же стали проверять программу в действии, компьютер сам указал нам, что не все в порядке. Про- грамма не работает! Раскроем секрет. В самом начале (строка 50) нами была введена сим- вольная переменная NAMES. Такое обозначение переменной использовать нельзя, потому что это сочетание букв (но без последующего знака $) в неко- торых версиях Бейсика применяется как служебное слово. Не во всех описа- ниях компьютеров или языка програм- мирования об этом сказано совершенно определенно, потому-то и появилась ошибка. Однако сама машина о том, несомненно, «знает» — она и предупре- дила нас, что в этой строке обнаружена ошибка. Как же теперь исправить нашу погрешность? Да очень просто: вычерк- нем из запретного слова какую-нибудь букву. Пусть теперь переменная назы- вается NAMS или NMES — и все пойдет как по маслу. Правда, просто? Вторая ловушка чуть похитрее. В строке 57 программы мы показали вам вариант сокращенной записи условия IF... THEN: IF G$ THEN BEEP. Эта вер- сия записи действительно применяется на практике и на самом деле работает, но только с числовыми переменными. А у нас переменная символьная! Поэтому машина такой вариант программной строки выполнять не желает. Что ж, придется, не мудрствуя лукаво, вер- нуться к традиционному способу и запи-
4 Н. Мешков, С. Ушанов сать начальную часть строки так: 57 IF GS О ««THEN ВЕЕР: А нам и вам пусть этот пример послужит хорошим уроком: не стоит стремиться к экзотическим приемам ради одного лишь желания оригинальности. Иначе не раз потом придется пожалеть. Надо сказать, что прежде чем решиться на установку «мин», мы долго спорили: стоит ли вообще шутить над читателями столь жестоко? А если стоит — то какой тип ошибок выбрать, чтобы и не слишком сложно это было, и достаточно поучительно, и на реальные программистские ошибки более или менее похоже? Остановились в конце концов на тонких деталях синтаксиса. Ибо именно на них легче всего спо- ткнуться вначале. А спотыкаться вам придется еще не раз и не два. Поэтому вам с самого первого дня следует нау- читься не обижаться на компьютер, который почему-то не хочет исполнять составленную вами программу, а вни- мательно прислушиваться (вчитывать- ся!) к его сообщениям, стараясь понять суть допущенной ошибки и сообразить, как ее проще исправить. К сожалению, машина находит и указывает вам далеко не все погрешности. Самые неприятные ошибки — логические — она обнаружить принципиально не может, поскольку не имеет представле- ния, чего же от нее хотел добиться про- граммист. Тут уж вам, кроме собствен- ной головы, помощи ждать неоткуда. Ну, продолжим. Итак, в результате напряженного труда вам удалось пройти полный цикл решения задач на ЭВМ: постановка задачи и выбор метода ее решения, разработка алго- ритма, составление, ввод, отладка и выполнение программы. Тем временем подошел конец рабочего дня. Пора выключать компьютер. Помните, как это делается? В первую очередь выключаем системный блок, а затем дисплей и периферийные устройства. ВНИМАНИЕ! При выключении систем- ного блока программа и значения пере- менных из памяти компьютера пропада- ют? Решившись на такой шаг, подумай- те, не сохранить ли вам текст програм- мы. Но как это сделать?.. Дисковод Для долговременного хранения тек- стов программ и иной компьютерной информации (данных и т. д.) исполь- зуют магнитные носители — дискеты (гибкие магнитные диски) и магнито- фонные кассеты. Запись и чтение ин- формации осуществляют посредством специальных устройств— дисководов и кассетных магнитофонов. Напомним, что дисководы «Ямахи» работают с микродискетами диаметром 3,5 дюйма (89 мм). Главная часть дис- кеты — гибкий магнитный диск. Он изготовлен из магнитной пленки и заключен в жесткий пластмассовый корпус, оклеенный изнутри особым вор- систым материалом. Такое покрытие снижает трение между диском и корпу- сом дискеты, а также собирает с поверхности диска мельчайшие пылин- ки, случайно проникшие снаружи. Частота вращения диска при записи и считывании информации довольно велика — 300—360 оборотов в мину- ту. Дискеты бывают двух типов — одно- сторонние и двусторонние, хотя и в том и в другом случае магнитный слой есть на обеих сторонах дисков. Чем же они отличаются? Как правило, технология изготовления дискет предусматривает проверку качества магнитного слоя. Дискеты, контроль которых с обеих сто- рон показал полное отсутствие ошибок, именуются двусторонними, а те диске- ты, у которых ошибок не имеет только одна сторона, — односторонними. Естественно, что односторонние дис- кеты дешевле двусторонних. Поэтому программисты в целях экономии иногда используют их как двусторонние — записывают информацию с обеих сто- рон. Предупреждаем, что в таких слу- чаях, если не воспользоваться особыми программами обнаружения и изоляции дефектных участков диска, при считы- вании записанной информации воз- можны непредсказуемые ошибки. Говоря о дискетах, нельзя не упомя- нуть о четко различаемых программи- стами физических характеристиках и логической структуре магнитных дис-
Персональная ЭВМ «Ямаха» 5 ков. К физическим характеристикам дискет относится число доступных сто- рон записи (одна или две), число информационных дорожек на каждой стороне диска и предельная плотность записи информации. Полная информа- ционная емкость — объем — двусто- ронней микродискеты с двойной плот- ностью записи равна одному миллиону байт. При записи информации на дискету происходит следующее: диск вра- щается вокруг своей центральной оси, а магнитные головки дисковода скачко- образно малыми шагами перемещаются по радиусу диска. Так возникает набор плотно расположенных концентричес- ких кольцевых дорожек записи. Каж- дое кольцо делится на одно и то же число секторов. Подобная логическая структура диска формируется компью- тером в результате выполнения спе- циальной начальной операции, имену- емой форматированием. Она опреде- ляет способ размещения информации на диске (формат). Основной ячейкой логического пространства диска явля- ется сектор (объем сектора 512 байт или, иными словами, 1/2 килобайта). Именно по секторам осуществляются запись и чтение информации. Каждый сектор имеет свой номер от 0 до 1439 (для двусторонних микродискет с двой- ной плотностью записи). Таким обра- зом, на «форматированную» дискету можно записать 720 кбайт полезной информации — примерно 3/4 ее полной информационной емкости. Потеря 74 емкости — неизбежная плата за упоря- доченную структуру записи, без кото- рой компьютер не сможет нормально работать. Возьмите любую микродискету. На ее жестком пластмассовом корпусе вы увидите металлическую шторку, закры- вающую прорези, через которые маг- нитные головки дисковода (их две — по одной с каждой стороны, если диско- вод двусторонний) соприкасаются с рабочей поверхностью магнитного дис- ка. На шторке имеется маркировка — фирменный знак и технические харак- теристики дискеты. Главная информа- ция содержится в загадочных для новичка сокращениях: 2DD, 2HD и т. п. Цифра 2 здесь означает, что мы имеем дело с двусторонними дискетами. Сим- волы характеризуют дискету с двойной плотностью записи информации (double density). Односторонние дискеты с двойной плотностью записи обозна- чают символами 1DD. Прочие диске- ты — 2HD (двусторонние с высокой плотностью записи — high density), 1SD и 2SD (однократная плотность записи — single density) при работе с компьюте- ром «Ямаха» не используются. Продолжая осматривать дискету, в нижней части ее корпуса вы обнару- жите маленькое квадратное отверстие и пластмассовый движок, открыва- ющий или закрывающий это отверстие. Перемещением этого движка можно защитить диск от записи информации (установить блокировку записи). Если отверстие закрыто движком, можно писать на диск и считывать с него. Если отверстие открыто, то с диска можно только считывать (надежное средство защиты особо ценной информации от случайного уничтожения!). Допустим, вы решили сохранить текст своей программы, записав его на диске- ту. Предположим, что эта дискета подготовлена к записи информации — отформатирована, как говорят про- граммисты (об операции форматирова- ния мы расскажем чуть позже), и воз- можно, уже содержит записанные ранее другие программы. Программа, записанная на диск, имеет специальное название — программный файл (запо- мните его). Существуют также файлы данных и текстовые файлы. Файл — это просто отдельная «папка» в нашей «компьютерной библиотеке». Чтобы различать «папки», каждому файлу следует присвоить имя — название, состоящее из двух частей. Первая часть — обязательная — собственно имя, несущее понятную человеку смы- словую нагрузку. Оно может состоять не более чем из восьми символов. Вто- рая часть — необязательная — назы- вается расширением и содержит допол- нительную информацию, например, о выбранном вами для составления про- граммы языке программирования, и
6 Н. Мешков, С. Ушанов состоит лишь из трех символов. Во избежание недоразумений в имя файла рекомендуется включать только рус- ские и латинские буквы (строчные и прописные), а также цифры, но не иные знаки. В качестве разделителя двух частей полного имени файла использу- ется точка. Если расширения в имени нет, то точку можно опустить. Помните, что на одну дискету можно записать не более 112 файлов! Придумаем имя своей программе. Назовем ее, к примеру, PRO- GRAMI.BAS (программа № 1, написан- ная на языке Бейсик). Вставьте теперь дискету в щель дисковода (не забудьте снять блокировку записи!), наберите на клавиатуре: SAVE «PROGRAM1.BAS» (закрывающие кавычки здесь разре- шается опускать) и нажмите клавишу ВК. По команде SAVE компьютер сам организует на дискете файл с именем PROGRAM1.BAS и запишет в него вашу программу. Хотите проверить? Пожа- луйста. Введите другую команду: FILES «PROGRAM1.BAS» (и здесь последние кавычки можно опу- стить). В ответ на экране дисплея появится сообщение PROGRAM1.BAS, свидетельствующее о том, что этот файл на дискете действительно суще- ствует. Если файла с этим именем на дискете нет, то компьютер так прямо и скажет: File not found — файл не най- ден. Команда FILES имеет несколько полезных модификаций. Если, напри- мер, мы скомандуем машине просто FILES, то получим на экране полный список всех файлов той дискеты, кото- рая в данный момент находится в дис- ководе. Этот список называют катало- гом. Команда FILES «*» позволяет нам обнаружить все файлы с именами без расширения, команда FILES «*».BAS, — файлы с расширением BAS, a FILES «Р*.*» — только те файлы, имена кото- рых начинаются с буквы Р. Звездочка, как вы уже поняли, говорит о том, что в именах файлов, которые мы ищем, вме- сто этого «универсального» знака может стоять любое разрешенное пра- вилами число произвольных символов. Возможны и другие варианты. Допу- стим, нам нужно выделить из общего списка все файлы, имеющие расшире- ние, состоящее не более чем из двух символов. Для этого используем другую команду: FILES «*.??». Еще один при- мер: FILES«P??????1.*» (что это зна- чит, попробуйте догадаться сами). Из этих примеров видно, что буквы, циф- ры, служебные знаки * и? в команде FILES можно комбинировать различ- ным образом. Единственное замечание: если в первой или второй части имени вы поставили звездочку на первое место, то после нее уже бессмысленно писать какие-либо символы, включая * и ?. Понимаете, почему? В ряде случаев бывает необходимо получить распечатку каталога дискеты на бумаге, чтобы иметь бумажную копию того, что вы видите на экране дисплея. Для этого используют команду LFILES. Все, что мы говорили выше о команде FILES, в полной мере относится и к этой команде. Пользуясь командой SAVE, соблю- дайте предельную осторожность. Пред- положим, вы задумали сохранить свою программу под именем PRO- GRAMI.BAS, совсем забыв, что на дис- кете уже имеется файл с таким именем. В результате этой операции старое содержимое файла PROGRAM1.BAS пропадает (будет стерто), а вместо него компьютер запишет текст вашей новой программы. Практический совет. Как правило, в процессе отладки у вас появляются различные варианты (версии) одной и той же программы, отличающиеся отдельными фрагментами. Обычно на одной дискете могут храниться 2—3 такие версии одновременно. Для удоб- ства работы их целесообразно записы- вать под единым общим именем, указы- вая в расширении номер конкретной версии (вот примеры таких имен: EXAM- PLES, EXAMPLE.2, EXAMPLE.3). Не вдаваясь в подробности, отметим еще одну разновидность команды SAVE: SAVE «PROGRAM2.BAS», А. В этом случае программный файл PRO-
Персональная ЭВМ «Ямаха» 7 GRAM2.BAS будет записан на дискету в так называемом формате ASCII. Фор- мат ASCII — это ставший международ- ным стандарт записи информации, при котором каждая командная строка про- граммы представляется в ее естествен- ном символьном виде (каждый символ кодируется числом в некотором коде, называемом ASCII — Американский стандартный код обмена информаци- ей), а завершается строка символом ВК. Систему кодирования знаков и сим- волов мы частично рассмотрели ранее. Теперь переходим к команде LOAD. По этой команде происходит загрузка программы, составленной на БЕЙСИКЕ, с дискеты в оперативную память маши- ны. Представьте себе, что в начале рабочего дня вы включили свой ком- пьютер и решили поработать с програм- мой PROGRAM1.BAS. Наберите на кла- виатуре LOAD «PROGRAM1.BAS» (здесь, как и раньше, последние кавычки можно опустить) и нажмите клавишу ВК. Выполнив команду LOAD, компьютер ответит «Ок» — «готово». После этого вы сможете работать со своей программой: запускать ее на выполнение командой RUN, вызывать текст программы на экран дисплея (LIST), редактировать (INS, DEL) и т. п. Кроме того, программу можно сразу запустить на выполнение одной коман- дой: LOAD «PROGRAM 1.BAS», R или, еще проще, — RUN «PROGRAM 1.BAS». Обратите внимание на одно важное обстоятельство: каждая новая про- грамма, загруженная командами LOAD или RUN, полностью уничтожает в памяти компьютера предыдущую про- грамму (словно по «очищающей» команде NEW).. Следующая команда — MERGE «PROGRAM2.BAS» — позволяет при- соединить к программе, уже находя- щейся в памяти компьютера, другую программу, пока лишь хранящуюся на дискете. Как уже отмечалось, команду LOAD в данном случае использовать нельзя (иначе первая программа исчез- нет из памяти). Программа PRO- GRAM2.BAS, которую мы собираемся присоединить к первой, должна хра- ниться в формате ASCII. Может оказа- ться, что в обеих программах имеются строки с одинаковыми номерами. Тогда произойдет замена таких строк первой программы соответствующими по номе- рам строками присоединяемой програм- мы. Подумайте, нужно ли это вам и перенумеруйте строки одной из скле- иваемых программ, если хотите избе- жать лишних потерь. Любую программу (точнее — любой файл) при желании можно переимено- вать. Для этого достаточно набрать на клавиатуре служебное слово NAME и указать сначала старое имя файла (на- пример, PROGRAM2.BAS), а затем новое имя файла (хотя бы ПРИМЕР), разделив их словом — AS, вот так: NAME PROGRAM2.BAS AS ПРИМЕР. Программирование — занятие инте- ресное, но утомительное. Хотите раз- влечься? Запустите компьютерную игру. Вам повезло: компьютеры MSX имеют множество увлекательных игро- вых программ. Одна из самых извест- ных — ANTADVEN. GM (Antarctic Adven- ture — антарктическое приключение, GM — признак игровой программы). Вы можете запустить ее командой BLOAD «ANTADVEN. GM», R (не забудьте нажать клавишу ВК!). Выполнение этой программы начи- нается с демонстрации традиционной фирменной заставки и основных игро- вых моментов. Компьютер учит вас пра- вилам игры. Звучит приятная мелодия, и на экране появляется географичес- кая карта Антарктиды с отмеченными на ней научно-исследовательскими станциями разных стран. Между стан- циями проложен маршрут движения пингвина-путешественника. С вашей помощью он должен бежать от станции к станции, искусно преодолевая множе- ство неожиданных препятствий и укла- дываясь в отведенное ему время. Управлять пингвином можно с помощью клавиатуры (клавишами со стрелками и «пробелом») или рукояткой — джойсти- ком. Каждый этап игры завершается подъемом флага на очередной антар- ктической станции и торжественным гимном в вашу честь. Если же вы будете слишком медлительны, в нака- зание придется начать все сначала.
Н. Мешков, С. Ушанов Программа ANTADVEN.GM состоит из одного файла. Но бывают и более сложные — многофайловые — игры. Например, игра KNIGHT MARE состоит из трех файлов. Для многофайловых игр разработаны особые правила запуска (на них мы останавливаться не будем). В этом разделе уже упоминалось об операции форматирования дискет. Теперь расскажем о ней более подроб- но. Возьмите абсолютно новую дискету (не забудьте снять блокировку записи!). Вставьте дискету в щель дисковода, наберите на клавиатуре CALL FORMAT (или FORMAT — так короче) и нажмите клавишу ВК. Прежде чем приступить к выполнению команды, компьютер спро- сит у вас: Drive name? (А, В) (имя диско- вода? А или В). Отвечая на этот вопрос, нажмите клавишу с буквой А (или В) и ВК (если у вас только один дисковод, то это дисковод А). Теперь компьютер попросит вас уточнить тип дискеты — двусторонняя (1 — Double Sided) или односторонняя (2 — Single Sided). Наж- мите клавиши 1 (или 2) и ВК. Следу- ющим сообщением компьютера будет фраза «Strike a key when ready» (когда будете готовы, нажмите любую клави- шу). И только после того, как вы выпол- ните это последнее указание компью- тера, он отформатирует дискету. А до этого еще можно передумать и отказа- ться от выполнения операции формати- рования. Точно так же можно форматировать и «старые» дискеты, то есть дискеты, уже содержащие какую-то информа- цию. Следует, однако, помнить, что в результате этой операции вся старая информация пропадает (стирается). Как уже было сказано, на одной дис- кете можно разместить не более 112 файлов общим объемом до 720 Кбайт. В случае переполнения диска информа- цией компьютер скажет вам: Disk full (диск заполнен), а при попытке запи- сать лишний файл — Too many files (слишком много файлов). Чтобы избе- жать ошибок в работе, научитесь опре- делять объем свободного пространства на диске. Это делается так: посылаем запрос компьютеру — ?DSKF(0). Здесь DSKF — стандартная функция, а вопро- сительный знак, как и раньше, заме- няет оператор PRINT. Число в скоб- ках — им может быть 0, 1 или 2 — соответствует номеру дисковода (0 — уже активизированный дисковод, 1 — дисковод А, 2 — дисковод В), в котором находится проверяемая дискета. Функ- ция DSKF сообщает нам, каким объ- емом свободного дискового простран- ства (в килобайтах) мы еще распола- гаем. Еще одна очень полезная (но и очень опасная!) команда — KILL. Она записы- вается так: KILL «EXAMPLE.1». Или так: KILL «EXAMPLE.*». По этой команде происходит удаление файлов с диска. В первом случае будет удален только файл EXAMPLE.1, во втором случае все файлы с общим именем EXAMPLE, независимо от расширения. Удаляя старые файлы, вы освобо- ждаете дисковое пространство для записи новой информации. Будьте вни- мательны! Можно случайно уничтожить и весьма нужные вам файлы... Вроде бы уже все сказано — авторы задумались: о чем еще рассказать чита- телям? Такая, скажем, ситуация: к вам пришли коллеги, принесли новые учеб- ные программы. Кое-что привлекло ваше внимание и вы решили скопиро- вать часть программ на свои дискеты. Как это сделать? Ну вот, мы совсем забыли про команду COPY — копирование файлов. Допустим, вы хотите скопировать про- грамму по имени ПРИМЕР с одной дис- кеты на другую. Вставьте дискету с этой программой в щель дисковода, наберите на клавиатуре: COPY «ПРИМЕР» ТО «В.» и нажмите клавишу ВК. В результате на экране дисплея появится сообщение: Insert diskette for drive В: and strike a key when ready. Компьютер просит вас вставить в дис- ковод В вторую дискету и нажать любую клавишу (например, «пробел»). Если ваш компьютер имеет только один дисковод (как часто и бывает), вам еле-
Персональная ЭВМ «Ямаха» 9 дует вынуть из него первую дискету и вставить вторую, а затем нажать какую-нибудь клавишу. На экране появится новое сообщение, очень похо- жее на предыдущее: Insert diskette for drive A: and strike a key when ready. Вторую дискету нужно заменить первой и опять нажать любую клавишу. И так продолжать до тех пор, пока компью- тер не скажет «Ок» — «О’кей». В конце концов на второй дискете будет соз- дана точная копия программы ПРИМЕР под тем же именем — ПРИМЕР. Копи- ровать файлы можно и по-другому: COPY «ПРИМЕР» ТО «В: EXAMPLE». В этом случае копия программы ПРИ- МЕР получит новое имя — EXAMPLE. Более опытный читатель, наверное, с нетерпением ждет от нас рассказа и о дисковой операционной системе (ДОС). Так что же такое ДОС? ДОС — особый программный ком- плекс, обеспечивающий взаимодей- ствие компьютера с дисководом, обслу- живающий работу других специальных программ (это и системы программиро- вания, и редакторы текста, и базы дан- ных, и электронные таблицы, и т. д.) и позволяющий наиболее эффективно использовать имеющиеся ресурсы. Компьютер «Ямаха» работает с дис- ковой операционной системой MSX DOS. Если вы хотите воспользоваться услугами этой системы, вам следует записать на свою дискету два файла — MSXDOS.SYS и COMMAND.COM. Пер- вый файл содержит подпрограммы управления вводом-выводом информа- ции, второй — программу, выполня- ющую определенный набор так назы- ваемых системных команд. Некоторые из этих команд вам уже знакомы (на- пример, COPY и FORMAT), но здесь они выглядят несколько иначе. Возьмите дискету с операционной системой, включите компьютер и быстро вставьте дискету в щель диско- вода. На экране дисплея появится над- пись: MSX — DOS version 1.03 Copyright 1984 by Microsoft COMMAND version 1.11 A> Значок A> свидетельствует о готов- ности компьютера к выполнению системных команд. Предположим, вам нужна система программирования на БЕЙСИКе. Сразу за А> наберите слово BASIC и нажмите ВК, на что компьютер отреагирует следующим образом: MSX BASIC version 2.1 Copyright 1986 by Microsoft DISK BASIC version 1.0 Ok Узнали? Нечто похожее вы уже видели на экране. Можете приступать к составлению и выполнению программ на БЕЙСИКе. Чтобы вновь вернуться в операционную систему, воспользуйтесь командой -SYSTEM. Знак подчеркива- ния (_) в этом случае является обяза- тельным. Переходим к команде COPY. Здесь она выглядит гораздо проще, чем в БЕЙСИКе: COPY ПРИМЕР В: или COPY ПРИМЕР В: EXAMPLE (отсутствуют кавычки и слово «ТО»). Возможен и другой вариант: COPY*. * b: Так можно скопировать все файлы с одной дискеты на другую. Команда FORMAT здесь тоже имеет некоторые отличия. В первую очередь это относится к слову CALL, которое теперь будет лишним (в БЕЙСИКе опе- рация форматирования выполняется как подпрограмма, а в ДОСе — как пол- ноправная системная команда). Как только вы наберете слово FORMAT (по- сле А>) и нажмете клавишу ВК, ком- пьютер спросит вас: Drive name? (А, В). Вопрос понятен? Отвечайте: дисковод А или В. Остальное, надеемся, вам уже известно. Системная команда DIR выполняет те же функции, что и FILES, — выдает на экран дисплея каталог дискеты. Примеры записи: DIR DIR* DIR*. BAS DIR Р**
10 Н. Мешков, С. Ушанов DIR*.?? DIR Р??????1.* В результате выполнения этих команд вы получите полный список интересу- ющих вас файлов, узнаете дату и время их создания и объем (в байтах). Подводя итог, компьютер сообщит вам общее число таких файлов и объем сво- бодного пространства на диске. При- мер: 12 files 515706 byte free (12 файлов, 515706 байт свободной памяти). Команду DIR можно записать и по- другому: DIR/W или DIR/Р. В первом случае в каталог будут включены одни только имена соответствующих фай- лов. Второй вариант команды преду- сматривает постраничный вывод ката- лога на экран дисплея (размер «страни- цы» будет равен числу строк на экра- не). Для продолжения вывода списка файлов достаточно нажать любую кла- вишу. Сказанное относится ко всем вариантам команды DIR: DIR*/W DIR Р*. BAS/P DIR Р*.* /Р Только что мы сказали, что каталог содержимого дискеты среди прочего содержит и информацию о дате созда- ния (или обновления) каждого файла. Поэтому, приступая к работе и собира- ясь что-либо записывать на диск, уста- новите на внутренних «часах» машины реальную текущую дату. Иначе ком- пьютер может указать в каталоге такую дату, что вы будете крайне удив- лены. Текущую дату устанавливают коман- дой DATE. Сначала на экране появля- ется сообщение: Current date is Fri 4—21—1989 1 (сегодня 21 апреля (4-й месяц) 1989 года, пятница), а затем — просьба вве- сти новую дату: Enter new date: Если вам надо изменить текущую дату, запишите ее таким образом: месяц (но- мер), потом число и год (все через тире) и нажмите клавишу ВК. Если вас устраивает старая дата, то просто сразу нажмите ВК. День недели ком- пьютер вычислит сам. (Догадайтесь, как он это делает.) Системное время устанавливает команда TIME, внешне очень похожая на команду DATE. По этой команде ком- пьютер сообщит вам и текущее время: Current time is 18:34:17.48р (18 часов 34 минуты 17.48 секунд). Символ «р» — признак второй половины дня (после полудня). Первую половину дня отме- чают символом «а». Продолжаем работать с файлами. Допустим, вас интересует содержимое текстового файла СПРАВКА (тексто- вые файлы создают с помощью спе- циальных программ — текстовых редакторов). Воспользуйтесь командой TYPE СПРАВКА. Подчиняясь этой команде, компьютер считает с дискеты соответствующий файл и выдаст его на экран дисплея — вы увидите текст документа под названием «СПРАВКА». Обратите внимание на одно важное обстоятельство. Вам может показа- ться, что при выполнении команды TYPE происходит загрузка соответству- ющего файла в память компьютера. Не волнуйтесь: на самом деле эта команда не меняет содержимого памяти (сохра- няются тексты программ, значения кон- стант и переменных). Раньше мы говорили о том, что файлы можно переименовывать. В ДОСе с этой целью используется команда REN. Вернемся к старому примеру — присвоим файлу ПРИМЕР его прежнее имя PROGRAM2.BAS: REN ПРИМЕР PROGRAM2.BAS. Если файл PROGRAM2.BAS уже существует, компьютер сообщит вам об ошибке. Магнитофон Люди, имеющие дело с персональ- ными компьютерами, ценят достоин- ства дисководов — высокое быстро- действие, надежность и возможность работать с дисковой операционной системой. Но дисководы стоят неде- шево — даже на богатом товарами западном рынке их цены составляют существенную долю стоимости про- стого персонального компьютера. Эко- номным программистам-любителям часто приходится довольствоваться
Персональная ЭВМ «Ямаха» 1 обычными кассетными магнитофонами. Потому-то мы и решили рассказать немного о работе компьютера с магни- тофоном. Будем надеяться, что физи- ческие принципы записи информации на магнитной ленте в той или иной сте- пени знакомы нашему читателю и сразу перейдем к логической структуре лен- ты. В отличие от магнитных дисков дан- ные на ленте могут быть записаны и прочитаны только строго последова- тельно — байт за байтом, файл за фай- лом. Каждый файл имеет специальные метки (маркеры) начала и конца файла, содержащие служебную информацию для компьютера. Такая структура опре- деляет условия доступа к данным: записывать файлы на ленту и считы- вать их с нее можно только последова- тельно — один за другим. Это, разуме- ется, весьма замедляет работу. Первая операция — LOAD — загрузка программы с кассеты (загружать можно только программы, записанные в коде ASC II). Возможны два варианта поиска программы: по имени или по порядко- вому номеру. Если вам, к примеру, надо загрузить в память компьютера про- грамму ABC.BAS, воспользуйтесь командой LOAD «С AS: АВС. В AS». Дру- гая команда — LOAD «CAS:» — загру- зит первую же программу, начало кото- рой находится на ленте далее того места, где в момент обращения к магни- тофону находилась магнитная головка. Если на ленте записано несколько про- грамм, а вам среди них нужно выбрать одну, установите ленту на начало соответствующего файла, пользуясь механизмом перемотки. Место начала файла должно быть известно заранее. Обычно его определяют еще при записи файла на ленту по показаниям счет- чика метража, имеющегося в магнито- фоне, или непосредственно перед чте- нием файла по характерному звуко- вому сигналу (писку). Опытные про- граммисты поступают иначе. Пользуясь микрофоном, они перед началом каждого файла записывают речевую вставку — краткое сообщение о назва- нии и номере версии программы, дате создания файла и т. п. Чтобы сразу запустить программу на выполнение, достаточно в команду LOAD включить соответствующий приз- нак — букву R. Два примера: LOAD «CAS:ABC.BAS», R LOAD «CAS:», R Но можно воспользоваться и коман- дой RUN: RUN «CAS:ABC.BAS» или RUN • « CAS:» В свое время мы упоминали о команде BLOAD, позволяющей запус- кать игровые программы. Возвращаясь к старому примеру, попробуйте запу- стить уже известную вам игру с кассе- ты: BLOAD «CAS: ANTADVEN. GM», R Команда MERGE загружает в память компьютера новую программу и объеди- няет ее со старой, уже находящейся в памяти. Эта команда выглядит так: MERGE «CAS:ABC2.BAS» или MERGE «CAS:» Не углубляясь в подробности, отме- тим, что запись программ на магнитную ленту в коде ASCII осуществляется по команде SAVE: SAVE « С AS: ABC 1. В AS» или просто SAVE «CAS:» (в последнем случае на ленте будет образован оче- редной «безымянный» программный файл). Если вам необходимо ускорить процесс общения компьютера с магни- тофоном, воспользуйтесь командами CSAVE (запись) и CLOAD (чтение). В этом случае ваша программа будет записана на ленту не в коде ASCII, а в том самом виде, в каком она хранится в памяти компьютера. Проверить пра- вильность записи можно посредством команды CLOAD? (не потеряйте вопро- сительный знак: здесь он просто необ- ходим!). По этой команде компьютер выполнит сравнение программы, считы- ваемой с ленты, с той программой, которая в данный момент находится в его оперативной памяти. Стандартная скорость записи инфор- мации на магнитную ленту равна 1200 бит в секунду (эту единицу называют «Бод»). Имея очень хороший магнито- фон, скорость записи можно удвоить. Об этом вам уже известно из прошлого нашего рассказа (речь идет об исполь-
12 Н. Мешков, С. Ушанов зовании четвертого параметра опера- тора SCREEN: SCREEN...,...,...,2). Ана- логично скорость записи можно опреде- лить и в команде CSAVE, установив соответствующее значение параметра: 1 (1200 Бод) или 2(2400 Бод). Пример: CSAVE «CAS:ABC2.BAS», 2 Полезный совет: если вы захотите переписать игровые программы с одной кассеты на другую, воспользуйтесь двумя хорошими магнитофонами, стан- дартными соединительными шнурами и действуйте точно в соответствии с инструкциями к этим магнитофонам. Локальная сеть Высокие технические характери- стики персональных компьютеров «Ямаха» (достаточный объем оператив- ной памяти, цветная графика, возмож- ность построения динамических изоб- ражений, простота и надежность аппа- ратных средств) послужили причиной широкого их использования в учебных заведениях, в том числе и в нашей стра- не. В течение ряда лет изготовитель поставляет нам комплекты учебной вычислительной техники, организован- ные в виде так называемых локальных сетей. Сети компьютеров MSX-2 бывают трех разновидностей. Сеть 1 состоит из 10 компьютеров (один компьютер для преподавателя — типа YIS805 — с цветным монитором и двумя встроенными дисководами, девять компьютеров для учеников — типа YIS503 — с монохромными монито- рами и без дисководов). В состав сети 2 входит 13 компьюте- ров YIS805 с цветными мониторами (компьютер преподавателя имеет два встроенных дисковода, компьютеры учеников — по одному). Сеть 3 объединяет 6 однотипных ком- пьютеров типа YIS805 с двумя встроен- ными дисководами. В комплект входят также принтер, кассетный магнитофон и манипуляторы «мышь». Если вы только что получили ком- плект учебной вычислительной техники «Ямаха MSX-2» (в любом исполнении), прежде всего внимательно изучите фирменное руководство по монтажу локальной сети и только потом присту- пайте к сборке, проверке и регулировке всей системы в целом. Мы же расска- жем вам сейчас об особенностях работы в составе локальной сети. Начнем с дополнительных команд языка БЕЙСИК-MSX для работы с сетью (эти команды едины для компью- теров и преподавателя и учеников). Команда HELP. Выдает на экран дис- плея список сетевых команд. Списки команд преподавателя и учеников существенно отличаются (можете про- верить). Примечание. Приказывая компью- теру выполнить ту или иную сетевую команду, вы должны набрать на кла- виатуре слово CALL, а вслед за ним эту команду (и как всегда ВК). Слово CALL можно заменить знаком подчеркивания (_). Так короче. Команда WHO. Сообщает собственный номер вашего компьютера в сети. (Всем компьютерам учеников присвоены неповторяющиеся номера в диапазоне от 1 до 15. Компьютер преподавателя имеет нулевой номер.) Команда NETINIT (допустимое сокра- щение — NETI). Инициализация (вклю- чение) сети. Сопровождается следу- ющим сообщением компьютера: Classroom network version 3.0 No.2 (школьная сеть, версия 3.0, 2-й компью- тер). Используется в том случае, если сеть была отключена. Команда NETEND (допустимое сокра- щение — NETE). Отключение сети. Позволяет перевести ваш компьютер в автономный режим работы (вне сети). Примечание. При включении компью- тера инициализация сети происходит автоматически и сопровождается такой заставкой: MSX BASIC version 2.1 Copyright 1986 by Microsoft Classroom network version 3.0 No.2 Если вы хотите этого избежать, сде- лайте так: включив компьютер, тут же нажмите клавишу DEL и держите ее до тех пор, пока на экране не появится сообщение, несколько отличающееся
Персональная ЭВМ «Ямаха» 13 от первого: MSX BASIC version 2.1 Copyright 1986 by Microsoft Аналогично можно отключить сеть и при загрузке операционной системы (в этом случае текст сообщения системы остается неизменным). Представим теперь себя в роли пре- подавателя компьютерного класса и приступим к работе. В первую очередь проверим, какие из ученических ком- пьютеров в данный момент подклю- чены к сети. Воспользуемся командой _СНЕСК(А) и оператором ?BIN$(A) (на- помним, что вопросительный знак здесь — сокращенное обозначение опе- ратора PRINT). Посмотрите на экран своего компьютера: вы видите цепочку нулей и единиц — двоичную запись зна- чения некоторой переменной А. Эле- менты этой цепочки называются бита- ми. Каждый бит закреплен за компью- тером с тем же номером. Счет идет справа налево — от 1 до 15. Значение любого бита переменной А определяет состояние соответствующего компью- тера (0 — компьютер подключен к сети, 1 — отключен от сети). Начиная урок, школьный учитель обычно говорит: «Здравствуйте, дети!» Вы тоже можете сделать приятный сюрприз своим ученикам. По команде -MESSAGE («Здравствуйте, дети!») ваше приветствие немедленно будет передано с компьютера преподавателя всем ученикам (оно высвечивается в нижней строке их экранов, отведенной для служебной информации). Та же команда (сокращенно MESS) позволяет обратиться и только к одному конкрет- ному ученику. Если, скажем, вы хотите вызвать к доске Иванова, работающего за десятым компьютером, вам следует воспользоваться этой командой (естественно, изменив текст сообще- ния, заключенный в кавычки), указав в ней номер его компьютера: -MESS («Иванов, прошу к доске!», 10). Так можно передать любое сообщение, помещающееся в одну экранную строку и состоящее не более чем из 56 симво- лов. Переданное сообщение исчезнет после нажатия учеником каких-либо клавиш. Естественно предположить, что и любой ученик тоже может обратиться к учителю и другим ученикам. Такая воз- можность, действительно, существует. Например, в результате выполнения команды -TALK («Я занят. Прошу не мешать!») на экране компьютера преподавателя появится следующая надпись: 3: Я занят. Прошу не мешать! Цифра «3» указывает на то, что сооб- щение поступило с третьего ученичес- кого компьютера. (Ответ не очень вежливый, но компьютер в том не вино- ват). В другом варианте этой команды используется дополнительный пара- метр В, принимающий значения от 0 до 15 (номер компьютера). Значение пере- менной В должно быть определено заранее. Пример: -TALK («I love you!», В) Представляете, что будет, если все ученики начнут обмениваться подоб- ными репликами! К счастью, с момента инициализации (включения) сети им дозволено всю свою информацию (со- общения, программы) передавать только преподавателю, который, одна- ко, может разрешить одному или нескольким прилежным ученикам (или всем сразу) обмениваться информа- цией через сеть. Для этого ему следует воспользоваться командой -ENACOM (5). Число в скобках определяет номер компьютера, которому разрешается выход в сеть (от 1 до 15). Если этот параметр равен нулю, передача разре- шается всем ученикам. Поддерживать дисциплину работы в сети позволяет команда -DISCOM (5), благодаря кото- рой рассерженный учитель может запретить определенному ученику передавать информацию товарищам. Организация учебного процесса с использованием локальной сети — дело тонкое, почти политическое. Ска- жем, вы обращаетесь к одному из уче- ников, а он не отвечает. Происходит что-то странное — компьютер сооб- щает вам: Device I/O error (ошибка
14 Н. Мешков, С. Ушанов устройства ввода-вывода). Что случи- лось? Оказывается, в такой сетевой «федерации» любой ученик может по собственному желанию отключиться от сети, воспользовавшись командой -OFFLINE. Чтобы вновь подключиться к сети, он должен скомандовать: -ONLINE Освоив те команды, о которых здесь говорилось, вы будете готовы вести с учениками простейший диалог через сеть. Переходим к пересылке про- грамм. Начнем с Бейсик-программ. В качестве первого примера предлагаем вам переслать клавиатурный тренажер «Азбука» (входит в состав стандарт- ного пакета по информатике И-86) с компьютера преподавателя всем уче- никам. Если у вас есть дискета с этой программой, вставьте ее в щель диско- вода, наберите на клавиатуре -SNDRUN («Азбука», 0) и нажмите ВК. (Параметр 0 указывает на то, что программу следует разослать по всем компьютерам, подключенным в этот момент к сети. Любая другая цифра будет определять номер един- ственного компьютера-приемника.) По этой команде ваш компьютер считает с дискеты указанную в команде про- грамму и приступит к передаче ее по сети. Обратите внимание на предупре- ждающую надпись «Wait» («ждите»), появившуюся на экранах ученических компьютеров (всех или одного, выбран- ного вами). Да, придется немного подо- ждать... Пройдет несколько томитель- ных секунд — и на ученических экранах появится красочная заставка про- граммы г «Азбука» (к сожалению, на монохромных дисплеях богатая цвето- вая гамма будет представлена всего лишь различными оттенками зеленого цвета). Можете приступать к работе. Если вы еще не знакомы с клавиатурой компьютера, программа предложит соответствующую инструкцию. Выбор режимов осуществляется посредством «меню». Команда SNDRUN имеет и другой вариант записи: -SNDRUN (,3). В этом случае третьему ученику будет пере- дана та программа, которая сейчас находится в памяти компьютера препо- давателя. А самые простые варианты выглядят так: -SNDRUN («Азбука») и -SNDRUN. Так можно переслать одну программу сразу всем ученикам. Допу- стим, интересующая вас программа уже находится в памяти компьютера препо- давателя и вы хотите разослать ее на все компьютеры учеников. Для этого достаточно набрать -SNDRUN (опустив имя программы и параметры) и нажать клавишу ВК. Как вы уже, наверное, сообразили, команда -SNDRUN выполняет сразу три операции — считывает программу с дискеты, передает ее ученикам и запус- кает на выполнение. Тот же результат дает последовательное применение двух других команд -SEND (пересылка по сети) и -RUN (запуск на выполне- ние). Практически все сказанное выше о команде -SNDRUN справедливо и для -SEND. Единственное отличие: по команде -SEND компьютер преподава- теля пересылает указанную ему про- грамму на любой ученический компью- тер (или сразу на все), не запуская ее на выполнение. Далее с этой програм- мой ученик может делать все, что ему угодно. Например, запустить ее на выполнение (командой RUN) или отре- дактировать (с помощью экранного редактора). Но при этом и преподава- тель сохраняет за собой право запу- стить программу со своего компьютера. (Примеры: _RUN(1,100), _RUN(1), -RUN. Здесь первое число — номер компьютера, второе — номер той строки программы, с которой следует начать ее выполнение. Если не указано ни то, ни другое, программы будут запу- щены одновременно на всех ученичес- ких компьютерах, причем с самого начала). Обратим ваше внимание на одну характерную особенность процедуры пересылки программ по сети: если память компьютеров — приемников уже содержит какие-либо Бейсик-про- граммы, то эти программы пропадут. (Совет ученикам: будьте внимательны и не забывайте, когда надо, отключать компьютеры от сети!) Напротив, считы-
Персональная ЭВМ «Ямаха» 15 вание с дискеты и пересылка программ по сети не влияют на содержимое «па- мяти» компьютера преподавателя. Представьте себе вполне реальную ситуацию: ученик составил хорошую программу, отладил ее и хочет сохра- нить на дискете. Как тут быть? Если речь идет о сетях типа 2 или 3, то здесь как-будто все ясно: можно воспользо- ваться дисководом (он есть в каждом ученическом компьютере). А если у вас сеть типа 1? В этом случае выручит команда .RECEIVE («PRO- GRAMI .BAS»,7). По этой команде ком- пьютер преподавателя прочтет из памяти 7-й ученической машины нахо- дящуюся там программу и уже при помощи своего дисковода запишет ее на дискету под именем PRO- GRAMI .BAS (содержимое памяти ком- пьютера преподавателя при этом не изменится). Мы надеемся, что наш рассказ о про- стейших сетевых командах поможет вам быстрее освоить работу в локаль- ной сети. Более подробное описание этих и других команд вы сможете найти в фирменном руководстве «Локальная сеть. Версия 3.0». Работайте! Желаем успехов. Помогут ли нейроны компьютеру? Человеку часто достаточно взгляда, чтобы не только без- ошибочно узнать знакомое лицо, но и определить по его выражению настроение или состояние. Невропатологам известно, что за распознавание лиц и их выражений отвечают две части мозга: нижняя височная изви- лина и верхняя височная бороз- да. Сейчас ученые США и Япо- нии предпринимают попытки точного определения, от каких именно нейронов зависит распо- знавание сложных образов. Исследователи надеются «обу- чить» подобному распознава- нию компьютерные нейросети. На состоявшейся в ноябре 1988 г. в Торонто ежегодной встрече нейроисследователей ученые США и Японии предста- вили результаты своих работ в этой области. Михаэль Хасселмо из Техно- логического института в Пасса- дене (шт. Калифорния) и Гордон Баулис из университета Сан- Диего исследовали деятель- ность 45 нейронов мозга двух макак во время показа им фото- графий с изображением девяти обезьян. Каждой макаке пооче- редно показывалось 27 фото- графий (по 3 фото каждой обезьяны: с мирным, угрожа- ющим и разъяренным выраже- нием лица). В результате экспе- риментов было определено 9 нейронов, различающих выра- жение лица, и 15 — отличающих лица друг от друга. Эти исследования могут про- лить свет на механизм двух видов прозопагнозии (болезни мозга человека): когда больной может определить выражение лица, но не отличает его от дру- гого, и наоборот, — больной отличает лица, но не понимает их выражения. Кенджи Куано и его коллеги из Электротехнической лабора- тории в Ибараки (Япония) обу- чали обезьян отличать лица людей по фотографиям. При этом они исследовали поведе- ние 446 нейронов мозга обезь- ян. Сравнивая реакцию нейро- нов на лица, составленные из частей, принадлежащих разным людям, ученые определили пять нейронов, отвечающих за от- дельные характеристики ли- ца. Однако, несмотря на опреде- ленные успехи, Баулис и Куано считают, что в конечном итоге распознавание лица — сложный и пока необъяснимый процесс. Science News №21, 19 ноября 1988 г., т. 34, с. 326 Нейронный робот учится видеть Робот, разработанный Миха- элем Куперстейном из Neurogen (Бруклин, шт. Массачусетс), основан на изучении окружа- ющего мира с помощью выявле- ния взаимосвязи между тем, что видят две его миниатюрные видеокамеры, и тем, как двига- ются руки. Сначала робот ничего не знает об окружающей его среде. Обучение начинается тогда, когда его контроллер начинает изучать предмет. В каждом новом положении стереокамеры определяют, где находится предмет, и вырабатывают раз- личные сигналы в зависимости от угла зрения камер. Анализи- руя сотни обработанных сигна- лов, контроллер выявляет взаимосвязь между углами
16 Переводы камер, определяющих положе- ние предмета, и углами рук робота, необходимыми для его захвата. После обучения, которое состоит из нескольких сот попы- ток в течение нескольких часов, робот может «чувствовать» и брать предмет, находящийся в произвольном месте. Контрол- лер определяет положение объ- екта и автоматически преобра- зует информацию о нем в дви- жения рук, для того чтобы достичь и взять его. При неудач- ных попытках робот совершает новые до тех пор, пока не сде- лает все безошибочно. Сейчас Куперстейн работает над более сложной проблемой: обучение робота выполнению последовательности операций, необходимых для достижения определенной цели в разных ситуациях. НАСА (Национальное управление по аэронавтике и исследованию космического пространства) рассматривает вопрос об использовании таких систем для сборки частей космических станций на орбите Земли. В таких условиях поло- жение монтируемых частей менее определено и предсказу- емо, чем, например, на заводе. Куперстейн считает, что его технология может служить средством принятия решений в таких задачах, как прохождение по неровной местности или поднятие грузов неизвестной массы, т. е. когда программа не может заранее определить, что именно надо делать. Science News № 2, 9 июля “ 1988 г., т. 134, С. 30 Работа с компьютером взглядом Ученые, изучающие работу глаз, имплантировали элект- роды в черепную коробку тяже- лобольного врача из Орегона Ланса Мегера так, чтобы импульсы его мозга помогали ему общаться с людьми. Мегер в течение 12 лет страдает боко- вым амиотрофическим склеро- зом (болезнь Шарко), при кото- ром поражены нервные клетки в коре головного мозга. После проведения имплантации Мегер может десять часов в сутки писать, а также произносить 10—20 слов в минуту с помощью речевого синтезатора. Об этом первом в своем роде эксперименте было сообщено на ежегодной встрече Американ- ской ассоциации по научному прогрессу. Система, исполь- зуемая Мегером, разработана Эриком Саттером в Smith — Kettlewell Eye Research Institute в Сан-Франциско. Ряд тяжелобольных, включая страдающих болезнью Шарко и церебральным параличом, те- перь получили возможность общаться без каких-либо уси- лий: им достаточно лишь смо- треть на определенный предмет или определенное место. Уче- ные разработали системы, ис- пользующие видеокамеры, кон- тролирующие движение глаз и определяющие, на какую букву или слово смотрит больной. Однако эти устройства требуют, чтобы голова человека была абсолютно неподвижной. В разработанной системе кла- вишный пульт представляет собой изображенные на экране дисплея 64 клетки, на которые смотрит пользователь. Такое «нажатие на клавиши» глазами заменяет работу пальцев на обычной клавиатуре. Каждая клетка — это буква или код соответствующего слова. Если пользователь хочет произнести слово, которого нет на экране дисплея, он смотрит на букву, с которой начинается нужное ему слово, и система высвечивает на экране весь набор слов, начи- нающихся с этой буквы. Таким образом пользователь может выдать на экран дисплея больше 600 простых слов. Затем система обработки слов может напечатать получившийся текст или произнести синтезирован- ные фразы через громкоговори- тель. Система определяет, на ка- кую клетку смотрит пользова- тель, с помощью измерения амплитудно-частотных характе- ристик электроэнцефаллограм- мы, полученных от коры голов- ного мозга. Клетки быстро меняют два цвета (синий и зеле- ный) и этим стимулируют деятельность коры мозга. «Кла- виши», находящиеся в центре поля зрения человека, вызы- вают наибольший ответный сиг- нал в зрительной коре. Каждая клетка имеет свой код и изме- няет цвет с только ей присущей частотой, а система распознает, какая из 64 клеток вызывает наибольшую реакцию у челове- ка. Для того чтобы пользова-
Переводы 17 тель знал, что компьютер выбрал правильную клавишу, система высвечивает ее звез- дочкой. Пользователь может исправить ошибку с помощью клавиши «стереть», а также разделить слова клавишей «пробел». Электроды, расположенные на задней части кожи черепа, измеряют сигналы, полученные от коры головного мозга. Но на них могут воздействовать и «по- мехи»: импульсы от мускулов лица и шеи. Мегер, страдающий навязчивыми идеями о полетах, был первым, кому имплантиро- вали электроды в череп так, что их сигналы не создают помех для восприятия электрических сигналов от мускулов. Элект- роды не контактируют с самим мозгом, они находятся снаружи твердой мозговой оболочки, окружающей мозг. Тонкий ка- бель соединяет электроды с инфракрасным передатчиком, посылающим сигналы от ушной раковины к компьютеру на обра- ботку. Саттер говорит, что система может работать с ком- пьютером, использующим «ил- люстрации» или изображение на экране. Но он не рассчиты- вает на широкое применение системы среди здоровых людей. «Десять пальцев быстрее одного взгляда», — считает он. Кроме того, большинство людей не согласятся на имплантацию электродов, хотя для парализо- ванных и травмированных людей система очень удобна. Саттер собирается вживить электроды и радиопередатчики 10 пациентам-добровольцам, с которыми он сможет провести клинические испытания. В это же время двое исследо- вателей Стэнфордского универ- ситета Хугх Ластед и Бен Напп разработали устройство «Био- муз», использующее электри- ческие сигналы, получаемые от мозга, мышц и глаз, для управ- ления обычным музыкальным синтезатором. Система дает возможность парализованным больным исполнять музыку, тан- цорам и композиторам — прео- бразовывать электрические сиг- налы, передаваемые телам, в хореографию и музыкальную партитуру. Электроды, подсоединенные к различным частям тела, вылавливают электрические сигналы. Сигнальный процессор извлекает информацию о час- тоте и интенсивности сигналов и использует ее для управления синтезатором. Например, чем больше напряжение мышц, тем выше звук, производимый син- тезатором. «Простое напряга- ние и расслабление руки позво- ляет музыканту использовать всю клавиатуру», — говорит физиолог Стэнфордского меди- цинского центре в Калифорнии — Лзстед. Кроме того, системэ использует движение глзз, чтобы сбэлэнсировэть гром- кость динэмиков, подключен- ных к синтеззтору. New Scientist № 1651, 11 февраля 1989 г., с. 38 Цифровой имплантат для глухих Исследователи Антверпен- ского университета в Бельгии разработали универсальное устройство, позволяющее слы- шать людям с совершенно не функционирующим внутренним ухом. Прибор, названный «Лау- ра», — представитель приборов, участвующих в проекте элект- ронных стимуляторных групп тридцати двух тысяч нервных клеток, посылающих сигналы от улитки внутреннего уха в мозг. В отличие от обычных стимулято- ров слуха, усиливающих и пере- дающих звук по ушному каналу, «Лаура» имеет 16 тонких сили- коноплатиновых электродов по 20 микрометров толщиной, вживленных в улитку. Программируемый речевой процессор величиной не больше плэйера анализирует звук, по- лучаемый от наружного уха, преобразует его в цифровой вид и передает по проводу радио- передатчику в ушной вкладыш. Отсюда по коже радиоданные поступают на специально сде- ланную круглую ИС диаметром 22 мм. Она покрыта титановой !IW . '/try////. *.....«II* 20* Ц» Rxitbn -20* Down 20* Right Crfuation 20*Left 300 гп rec
18 Переводы оболочкой для защиты от кор- розии воды. ИС, имплантированная в сос- цевидную кость сзади уха, при- нимает и декодирует радиосиг- нал, а затем передает его по кабелю через кость к электро- дам, расположенным в улитке. Хирург может получить приб- лизительное представление о количестве функционирующих нервных клеток, посылая элект- рический импульс на внешнюю стенку раковины. ИС в сосцевидной кости может посылать данные от электродов обратно хирургу. Она транслирует информацию по радиосвязи в персональный компьютер, находящийся в лаборатории, который в свою очередь связан с осциллогра- фом. Контролируя этот сигнал обратной связи, хирург может проверить состояние внутрен- ней электроники. Хирург может управлять воз- буждением нервных клеток, изменяя программируемые параметры в речевом процессо- ре. Процессор полностью управ- ляет ИС и посылает сигналы, изменяющие ток, проходящий через ИС к электродам. Аппа- ратные средства тоже могут контролировать электроды, но если потребуется какое-либо изменение, хирург должен будет заменить всю ИС. New Scientist № 1651 11 февраля 1989 г., с.40 Нейронная сеть обнаруживает взрывчатку Шесть международных аэро- портов готовы приступить к про- верке новой системы безопасно- сти, обнаруживающей пластико- вую взрывчатку. Система, наз- ванная «Снуп», использует про- граммное обеспечение, основан- ное на принципах нейронной сети. Тзахи Гозани, возглавляющий группу разработчиков «Снуп» в Science Applications International Corporation (SAIC) (шт. Калифор- ния), заявил, что Федеральное авиационное управление США заказало шесть таких машин и что с января 1990 г. они будут доступны другим потребителям. Более простая система, не использующая нейросети, раз- рабатывается в Великобрита- нии. Она была опробована в Британском аэропорту. Пластик слабо поглощает рентгеновские лучи и поэтому плохо обнаруживается обычной системой контроля. Поэтому пластиковая взрывчатка пред- ставляет серьезную опасность для авиаслужб. Как английская, так и американская система «Снуп» обнаруживает наличие нитрогена в пластиковой взрыв- чатке с помощью бомбардирова- ния багажа нейтронами малой энергии, которые заставляют ряд элементов излучать гамма- лучи с определенной интенсив- ностью. Детекторная матрица систе- мы «Снуп» не только выдает сведения о количестве и распо- ложении нитрогена, но и опре- деляет степень «шума», произ- водимого другими элементами. Это дает возможность выявить ложную тревогу по определе- нию сочетания нитрогена с дру- гими веществами. Проблему шумов фирма ре- шила с помощью нейронной сети, научив систему на кон- кретных примерах определять границы, указывающие на нали- чие или отсутствие пластиковой бомбы. Опытные образцы ма- шин были установлены в аэро- портах Лос-Анджелеса и Сан- Франциско. Через каждую было пропущено по 20 тыс. багажных мест с имитатором взрывчатки и столько же без него. Разработчики выявили набор сигналов, получаемых при нали- чии взрывчатки и при этом дающих большое количество ложных тревог. Затем на основе анализа ряда закономерностей выявили сигналы высокой сте- пени точности (с малым количе- ством ложных тревог) и модер- низированная система вновь была испытана. Искусственные нейронные си- стемы состоят из сетей, в кото- рые входят узлы и соединения. Узел может находиться в двух состояниях и переходить из одного в другое в зависимости от силы входных сигналов. Про- грамма находит удельный вес для каждого соединения, кото- рое определяет, с какой скоро- стью узел меняет свое состо- яние. Внешние сигналы вносят изменения в сеть, и система таким образом «обучается» и «накапливает» опыт. Разработчики убедились, что в большинстве случаев искус- ственная нейронная программа точнее определяет наличие взрывчатки, выдавая при этом меньше ложных тревог. Обыч- ный уровень приемлемого обна- ружения равен 95%. Когда «Снуп» достигла этого показа- теля, оказалось, что уровень ложных тревог составил на 1,5—2% меньше, чем при прове- денном параллельно статисти- ческом анализе. Нейронная сеть настраива- лась на разные наборы багажа и завершила свое «обучение» за 2 дня. Статистикам понадоби- лось на это по крайней мере 3 дня. New Scientist № 1654, 4 марта 1989 г., с. 36 «Связанное» поведение Фирма Guardian Technologies из Денвера (шт. Колорадо) запа- тентовала новую систему, кон- тролирующую дома и вне его поведение преступников, нахо- дящихся под гласным надзором. При существующих системах преступники носят браслеты, имеющие радиосвязь с базовой станцией, находящейся на дому у преступника. Система в свою очередь связана по телефону с центральным офисом контро- ля. Если преступник выйдет за пределы контроля базовой станции, она посылает сигнал тревоги в центральный офис. Новая система позволяет про- верить выполнение преступни- ком требования не употреблять алкоголь и наркотики. Преступ- ник, имеющий браслет, должен в определенные промежутки времени выполнять тест на обнаружение запрещенных веществ в крови, слюне, дыха- нии и моче. Результат автомати- чески передается по телефону. Сложность таких проверок связана с тем, что преступник может «одурачить» систему, попросив приятеля выполнить тест. Для предотвращения этого станция снабжена видеотеле- фоном, посылающим «картин- ку» преступника в офис.
Эйнштейн, объясняя как-то сущность своих открытий ребенку, сказал, что ему удалось лишь то, что не удается червяку, пол- зущему по соломинке, — заметить, что соломинка кривая. После небольших зигзагов, связанных с обучением БК второму языку и исследованием возможностей дооснащения БК, мы еще несколько задержимся на «прямолинейных» сюжетах, прежде чем обратиться к не менее обширной тематике, свя- занной с построениями на дисплее именно кривых линий. Н. ГЕРМАН ОТ ПРЯМЫХ линий НА ДИСПЛЕЕ — К ПРОИЗВОЛЬНЫМ КРИВЫМ Развивая затронутую нами на втором занятии (см. вып. № 3 за 1989 г.) тему радуги, приведем здесь соответству- ющую программу на БЕЙСИКе. Ее можно видоизменить так, чтобы запуск лучей производился со случайно изме- няющимся прицельным расстоянием У, что может быть более удобным в про- цессе отладки программы. С принятой же нами системой пуска лучей очень легко уловить существо декартовой теории радуги (иногда все, что связано с Декартом, называют также карте- зианским, что, возможно, более пра- вильно, поскольку у него Де-, в сущно- сти, приставка: Descartes). Так, нетрудно заметить, что радужные всплески, соответствующие максиму- мам угловой концентрации исходящих лучей, возникают в точках, где при плавном росте прицельного параметра У лучи, смещавшиеся в одном направ- лении, меняют его на обратное. Мате- матически это выражается просто, как равенство нулю производной dDIdY. Если аналитически выразить зависи- мость угла выхода лучей D от величины У (а в программе эта связь фактически содержится), то можно и точно вос- произвести саму «картезианскую» тео- рию. Заметим только, что угловая плот- ность лучей, примерно соответству- ющая видимой яркости, в точках пово- рота обращается в бесконечность, поскольку она, как легко сообразить, обратно пропорциональна dD/dY. Отсюда следует, что наша простая «лу- чевая» теория не в состоянии доста- точно строго описать ход интенсивно- сти радужных всплесков. Укажем так- же, что возможность построения тео- рии никак не обесценивает наши учеб- ные упражнения, но, напротив, дает средство контроля правильности ма- шинных построений. Если сравнить обе программы на ФОКАЛе и на БЕЙСИКе, то нельзя не признать, что первая выглядит ком- пактнее и набирать ее будет, пожалуй, полегче. Поскольку все модификации БК обязаны понимать ФОКАЛ, в даль- нейшем мы будем стараться приводить варианты на БЕЙСИКе, лишь когда при этом возникают какие-то интересные особенности, либо если окажется воз- можным воспроизвести их с отлажен- ного машинного листинга. Вообще же заметим, что перевод наших довольно простых программ с одного языка на другой — дело не столь уж сложное, да к тому же и полезное. Отладив предложенные программы, читатель может погрузиться в некото- рые дополнительные исследования и размышления на «радужные» темы. Можно исследовать несколько радуж- ных максимумов, установить зависи- мость их положений от N и сопоставить все это с теорией и с наблюдениями. Интересно, например, установить, какие порядки (К) соответствуют редко
20 БК за рога 40 ’RAINBOW’ 50 INPUT "RADIUS,CENTER”^,E,G 50 PRESET (E+150*R,G) 60 FOR Q-1 TO 64 70 LINE-(E+150*R*COS(PI*Q/32),G+100 *R*SIN(PI*Q/32)) 80 NEXT Q 90 N-4/3 100 INPUT "ORDER,# RAYS”;K,M 110 FOR J-0 TO M 120 Y-J/M 130 A«ATN(Y/SQR(1-Y*Y+1E-30)) 140 OATN(Y/SQR(N*N-Y*Y)) 150 B-A-2*C 160 PRESET(0,G+100*R*Y) 170 LINE-(E+150*R*COS(A),G+100*R*Y) 180 FOR 0«1 TO К 190 LINE-(E+150*R*COS(B),G+100*R *SIN(B)) 200 B«B-PI-2*C 210 NEXT О 220 D«A+B+PI+2*C 230 LINE-@(512*COS(D),341*SIN(D)) 240 NEXT J 250 END наблюдаемой тройной радуге (цвета в третьей радуге сменяются в том же направлении, что и в первой). Радуги должны возникать и при рассеянии вперед, и можно подумать, как их наб- людать со стороны Солнца. Для спра- вок приводим таблицу значений N для воды при различных длинах волн, соответствующих примерно серединам интервалов соответствующих цветов: крас- оран- жел- зе- го- си- фио- ный же- тый ле- лу- ний ле- вый ный бой то- вый X,нм 700 600 580 530 500 460 400 N 1,330 1,332 1,333 1,334 1,336 1,338 1,344 Как мы уже отмечали, на теледис- плее с его 240 строчками не всегда про- сто разглядеть требуемые всплески и поэтому может понадобиться подбор количества лучей (К), масштаба (ради- уса R) и положения центра капли (коор- динаты Е, G). Для наблюдения радуг высших порядков количество лучей следует увеличить. Как и в случае линз, полезно в крупном масштабе обратить внимание на массу интерес- ных особенностей: многочисленные фокусировки параксиальных (идущих под небольшими углами к оси) лучей, каустики, проявления сферической аберрации и т. п. В качестве дополни- тельного полезного упражнения реко- мендуем построить гистограммы угло- вых распределений исходящих лучей (примерно соответствующие так назы- ваемым индикатриссам рассеяния), на
БК за рога 21 20 ’ANGULAR SCATTERING’ 30 DIM L(722) 40 ’RAINBOW’ 240 Da.5*D/PI 250 D-720*(D-INT(D)) 260 L(D)“L(D)+1 270 IF L(D)>MM THEN MM-UD) 280 NEXT J 290 FOR U-1 TO 720 300 X«L(U)*COS(PI*U/360)/MM 310 Y-L(U)*SIN(PI*U/360)/MM 320 PSET(256+200*X,120+130*Y) 330 NEXT U 340 END которых радужные всплески можно выявить предельно явственно, поскольку число лучей допустимо сильно увеличить (теперь их даже нет нужды вообще строить на экране). Пол- ный угол можно разбить на интервалы в один или в полградуса, что будет вполне достаточно для построения почти гладких индикатрисе. Можно, конечно, строить и более подробные кривые — с большим угловым разреше- нием, хотя из-за отмеченного дефекта лучевых теорий особого смысла в этом нет. Гораздо интереснее попытаться 1.01 С ; ANGULAR DISTRIBUTION 1.22D4 2.19 S D-D/2*P; S D = 720*(D-FITR(D)) 2.21 S M(D) = M(D) + 1 ; I (MA-M(D))2.25 2 23 R 2i25SMA=M(D) ; R 4.10 X FCHR(12) 4.14 F A=0.720 ; D 5 5.10 X FT(1,256 + 200* FCOS(P*A/360)/MA, 120+130*M(A)* FSIN(P*A/360)/MA) построить полную кривую рассеяния, учитывающую несколько радужных всплесков (для чего придется учесть сферичность геометрии задачи, кото- рая у нас пока трактовалась как плос- кая, а также и потери света при после- довательных отражениях). Подобные исследования позволяют составить определенное представление о том, какие цели должна преследовать более строгая теория раду- ги, что может оказаться нелишним для студентов физических специальностей, начиная примерно со второго курса. Это и нахождение истинных поло- жений и интенсивностей радужных максимумов, и вообще, точного распределения интенсивности света, рассеянного по всем направлениям, в том числе с учетом дифракционных эффектов, вообще не содержащихся в лучевом приближении (они особенно сильно проявляются в очень мел- ком тумане). История исследования радуги, нача- тая Гюйгенсом, знает немало славных имен и заметных достижений. Интересно, что в волновой оптике оказывается довольно несложным выпи- сать в общем виде самое строгое решение нашей задачи. Однако в докомпьютерную эру наличие подобного строгого результата еще мало что давало, поскольку он выражался в виде ряда (суммы) из быстро осциллирующих членов (так называемых парциальных волн), причем даже для не очень крупных капель (с радиусом порядка миллиметра) следовало бы в этом ряду учитывать очень много — до тысяч членов. Может даже статься, что ФОКАЛ (16-разрядная версия) не справится с такой задачей с подобающей точно- стью, хотя для нашего БЕЙСИКа, вероятно, это лишь вопрос затрат машинного времени. Пример того, как компьютеризация меняет само отноше- ние к ценности научных результатов... Несколько схожая ситуация возникла недавно с известной задачей механики о движении трех тел с сопоставимыми массами, о которой многие слышали, что она вообще не решается. Но не решалась эта задача в том лишь смысле, как решение понималось в классической теоретичес-
22 БК за рога кой механике — науке, в общем-то, прошлого века: задача механики имеет решение, если оно может быть сведено к каким-то интегралам (ква- дратурам), пусть даже не берущимся в студенчес- ком представлении, т. е. не выражающимся через известные функции. В отношении задачи трех тел на этот счет было добыто, кажется, даже строгое доказательство. И вот удалось выписать совер- шенно точное решение этой задачи, но только опять-таки в виде чрезвычайно медленно сходя- щихся рядов, от которых без компьютера — ника- кого проку! Для компьютера, который вообще-то может и прямо интегрировать уравнения движе- ния, т. е. строить числовое решение, суммирова- ние самых скверных рядов может оказаться все же более предпочтительным в видах точности, производительности, возможности выявления каких-то общих закономерностей и т. д. Мы не в первый раз задерживаем внимание читателя на результатах воздействия компьюте- ризации на методологию или «идеологию» (в иных языках то же самое скорее называют «философи- ей») современной науки. Эта тема — одна из весьма полезных в компьютерном просветитель- стве, тем более что популяризаторы склонны увлекаться и приписывать любимым объектам часто вовсе не свойственные им достоинства. А иногда, даже и среди специалистов, раздаются суждения, подобные тому, например, что скоро с компьютерами вообще не останется нерешенных задач, поскольку-де все они будут решены... про- стым перебором всех вариантов (не столь давно именно таким образом «пала» известная задача о четырех красках). Слов нет, успехи компьютеров во всех сферах грандиозны, и нам кажется, что даже Г. Каспаров и уж во всяком случае его последователи должны начать нервничать по поводу того, как бы компью- теры не положили конец их профессии. Или вот американские авиастроительные корпорации заявляют о полном прекращении реальных проду- вок моделей проектируемых самолетов, поскольку расчеты картин обтекания на супер- компьютерах стали и дешевле, да и надежнее сложнейших экспериментов, — это уже не игры! Все же, чтобы у читателей формировалось более взвешенное представление о возможностях как собственного БК, так и суперкомпьютеров (а гля- дишь, начнут продаваться и бытовые суперком- пьютеры!), мы и далее будем не раз задержи- ваться на поучительных в данном отношении при- мерах. Вот для начала примеры задач, которые пока не под силу ни суперкомпьютерам, ни теоретичес- кой механике: устойчива ли Солнечная система? Не был ли Плутон спутником Нептуна или не ста- нет ли он им в дальнейшем, да и вообще, не столк- нутся ли когда, оборони бог, эти планеты (в насто- ящую эпоху, кстати, Плутон оказался ближе к Солнцу, чем Нептун. По этому поводу газета «Из- вестия» недавно даже поторопилась принести читателям свои извинения! В репортаже о полете «Вояджера», видимо, еще составленного по дан- ным НАСА, именно Нептун был назван самой уда- ленной от Солнца планетой, что как раз на дан- ный момент соответствует действительности. Но уже на следующий день, возможно, после теле- фонных звонков не слишком осведомленных чита- телей и после заглядывания в учебники, где эфе- мериды планет обычно не содержатся, газета переставила планеты на их «законные» места. И это еще при том, что ни «Известия», ни даже НАСА не могут нести ответственности за располо- жение светил!) Но оставим возможность столкно- вения, это была бы, действительно, вселенская катастрофа. Не произойдет ли когда-либо суще- ственное перестроение в этом самом расположе- нии планет, их спутников, астероидов и т. д. Но все это — дела отдаленные... А вот, какая погода
БК за рога 23 будет завтра? (А спрос на определенные виды товаров?) Н. Винер описывал историю одного математика, который еще в довоенную пору составил и решил «вручную» грандиозную систему уравнений для предсказания погоды... на один день. Вычисления заняли более года, а результат, что легко представить, разошелся с реальностью. У ученого хватило смелости опубли- ковать свои результаты. Эх, повторить бы сейчас подобную попытку с использованием всех супер- ЭВМ и современных средств сбора метеоданных! Ведь пока прогнозирование погоды, несмотря на участие и ЭВМ (по существу, подсобное), все же чисто человеческое занятие, причем, как можно заметить по репортажам из Гидрометцентра, пре- имущественно женское занятие. Впрочем, пора нам вернуться к капле дождя... Отлаженная . капельная модель позволяет понять принцип действия современных «светящихся» покрытий (в действительности хорошо отража- ющих), содержащих небольшие сфери- ческие частицы. Большинство читате- лей наверняка обращало внимание на блистающие ночью в свете собствен- ных фар детали на дорожном огражде- нии, форме регулировщиков, детской одежде и т. д. Если начать системати- ческий поиск на нашей модели, варь- ируя показатель преломления «капли», то можно обнаружить, что во втором порядке параксиальные лучи отража- ются точно назад при N-2 (это можно доказать, пользуясь элементарными школьными правилами). Однако веществ с N>2 вообще не так много (достаточно твердые из них из-за осо- бенностей блеска используются для имитации драгоценных камней). Поэтому стоит исследовать характер отражения, когда показатель прелом- ления только приближается к двум. Из- за сферической аберрации и здесь заметная доля лучей может быть отра- жена примерно в обратном направле- нии. Заметим еще, что при N>2 радуж- ный всплеск во втором порядке исчеза- ет, как он отсутствует для воды и в пер- вом порядке. При минимальных переделках нашу модель радуги легко можно преобразо- вать в «круглый бильярд» — условную игру, разновидности которой привле- кают в последнее время немалый инте- рес математиков. Для этого нужно лишь обеспечить достаточно большое число отражений внутри «капли». Имеет смысл соорудить и отдельную про- грамму для исследований бильярда, переписав в нее несколько строк из «радуги». Если задавать угол С в виде кратных целым долям л, то «розетки», выписываемые на экране, будут быстро замыкаться после небольшого числа отражений. Что же такого интересного 10.10 0 ; VICIOUS CIRCLE 10.12 A «N»N ;SP = 3.14159 10.14 S C=P/N ; X FT(0,417,120) 10.16 D 11 ; G 10.16 11.10 SB=B-P+2*C—P 11.12 X FV(1,250+167*FCOS(B), 120+110*FSIN(B)) смогла найти современная математика в образующихся правильных много- угольниках и «звездочках»? Но не ста- нем торопиться и дадим возможность ФОКАЛу погонять свой условный шар по кругу час, другой, ночь... А утром советуем начать разбираться с явными отступлениями от теоремы Пифагора sin2B+cos2B=1, которые ухитрился 20 ‘VICIOUS CIRCLE’ 30 INPUT «N»; N 40C = PI/N 50 PRESET(417, 120) 60B=B —PI + 2*C 70 LINE - (250+167*COS(B), 120+110*SIN(B)) 80 GOTO 60 допустить наш механический бильяр- дист. Вначале придется понять, откуда вообще могут возникнуть наблюдающи- еся «огрехи». Здесь снова нелишне слегка отвлечься и заме- тить, что именно бильярд нередко представля- ется игрой, где перспективы, если так можно выразиться, «механизации» наиболее благоприят- ны. Автор припоминает один из немногих фанта- стических фильмов, какие ему выпало просмо- треть, где воплотившийся в обличье человека неодушевленный робот-пришелец в два счета без малейших ошибок раскидал все шары по лузам, не оставив сопернику возможности нанести хоть один удар. Похоже, что сценаристы, разделяя довольно общее заблуждение, полагают, что механика бильярда не более сложна, нежели те простые правила, что заложены в наши модели. Но вот наше телевидение, которое в последнее время в числе прочего принялось ратовать — при-
24 БК за рога чем даже устами поэта!* — за возрождение этого сомнительного уже по своим чисто атлетическим достоинствам вида «спорта», показало нам демонстрационные выступления мировых асов, гонявших шары по сильно искривленным траекто- риям, заранее намеченным мелом, из чего можно было видеть, что механика эта отнюдь не столо проста. Но мы пока не станем обсуждать тонкости соударений и качения произвольным образом вра- щающихся шаров... Советуем тем, у кого имеется такая возможность, после матча с ФОКАЛом повторить то же упражнение и с БЕЙ- СИКОМ. Можно быстро почувствовать, что ФОКАЛ «привирает» и быстрее и капитальнее. Ясно, что дело здесь именно в количестве разрядов, исполь- зуемых для вычислений в этих языках. Можно даже проверить эту догадку, используя в БЕИСИКе оператор CSNG, сокращающий вдвое число разрядов, — попрактиковаться в его использовании небесполезно. Одна из наиболее мощно действу- ющих причин возникновения погрешно- стей при длительном счете, которую можно легко выявить и устранить в ФОКАЛе, заключается в нашем случае, вероятно, в том, что вычисление функ- ций FSIN и FCOS производится порознь, а не как-либо одна через дру- гую, и при приведении аргументов к первому квадранту даже от неточности в определении л может набегать неко- торое расхождение. Если же организо- вать автоматический пересчет значе- нии аргумента после каждого удара в первый квадрант, то часть наиболее заметных огрехов исключается: 65 В=В—2*PI*INT(5*B/PI) 11.11 .S B=B-2*P*FFTR (В/2*Р) Заметим, что наше «число Архимеда» — л не «зашито» в ПЗУ ФОКАЛа и его необходимо задать как Р=3.14159. Однако из-за особенностей пред- ставления чисел в ФОКАЛе в памяти при этом осе- дает, по-видимому, не совсем 3.14159:Т 100*Р-314! Любопытно также, что попытка записать еще парочку «лишних» знаков л лишь ухудшает дело! * Само по себе достаточно любопытно, а для любителей кибернетики вдвойне, что этот весьма достойный поэт, имя которого в данной связи можно и не произносить, всегда довольно гладко читавший стихи, начал заметным образом заикаться, когда заговорил прозой! 15.11 С ; PYTHAGOREAN THEOREM 15.14 А «ХО»Х ; S А=Х 15.16 X FT(1,(X—A)*512,((FSIN(X)) 12 + (FCOS(X))12 -1 )*100 +128) 15.18 S Х = Х+0.01 ; G 15.16
БК за рога 25 Можно было бы исследовать нашу версию более подробно, строя значе- ния cos2x+sin2x при больших значениях аргумента. Но мы предлагаем здесь пару иных, совсем нехитрых упражне- ний по поводу погрешностей счета, которые тем не менее в состоянии навеять размышления на самые фунда- ментальные темы. Как утверждал в свое время популярный древнегрече- ский мудрец, нельзя дважды войти в одну и ту же реку! Поскольку мы заня- 20.10 С ; TWICE INTO THE SAME SQUARE 20.12 S A=1 ;SP=3.14159 ; S c=P/4.04 ; S B = 0 20.14 F K= 1,2 ; D 21 20.16 Q 21.10 S B=0 ; X FT(0,417, 120) 21.12 F M = 1,100 ; D 22 21.14S A=0 21.16 X FCHR(7) 22.10 SB=B-P+2*C 22.12 X FV(A,250+167*FCOS(B), 120+110*FSIN(B)) лись моделированием, нам не грех про- верить этот тезис, смоделировав подобную попытку на нашем бильярде. Полагаем, что все наши читатели, риск- нувшие организовать у себя этот «за- плыв», будут поражены, как невзирая на погрешности счета, наш БК уверенно стирает все следы своего первого заплыва! И этот результат обязан соб- людаться при заплывах любой длины, т. е. при любых длинах цикла по М. К концу же счета на дисплее не должно оставаться ни единой светящейся точ- ки! А если хоть одна такая точка обна- ружится, то, строго говоря, это может уже считаться основанием для того, чтобы обратиться с БК в бюро ремонта. 112 ‘TWICE INTO THE SAME RIVER’ 122 A= 1 132C = PI/4.04 152 FOR K=1 TO 2 162 B = 0 172 PRESET(417, 120) 182 FOR M = 1 TO 100 192 B=B-PI + 2*C 202 LINE-(250+ 167*COS(B), 120+ 110*SIN(B)), A 212 NEXT M 222 A=0 242 BEEP 252 NEXT К 262 STOP Конечно, результаты нашего философ- ского исследования могут и не убедить мастера-приемщика в том, что в этой машине «не все винты затянуты как положено», но, полагаем, что и другие стандартные тесты в этом случае должны выявить какую-то неисправ- ность... Сколь это может ни показаться на первый взгляд странным, никакие стандартные тесты не в состоянии выявить какую-либо весьма специфи- ческую неисправность компьютера, возника- ющую, скажем, лишь при определенной комбина- ции чисел, записанных в ОЗУ (что в принципе вообразимо, хотя и маловероятно...). По этому поводу нелишне будет прикинуть, сумел бы наш БК с его 64К двоичных элементов пробежаться по всем своим возможным состояниям за время всей своей потенциальной жизни, т. е. до полного физи- ческого износа! Но уж раз мы коснулись проблем обращения в бюро ремонта, то советуем владель- цам БК, которым посчастливилось еще ни разу туда не обращаться, запомнить, что такое бюро, представляющее непосредственно завод-изгото- витель, недавно открылось в Москве (Рогожский вал, 7 тел. 278-52-59). Автору же пришлось не менее 5 раз прокатиться со своим верным БК до Павлово-Посада и обратно. Зато работники ремонтной службы завода смогли внушить ему приятную уверенность, что еще «через пару ремонтов из БК будет вычищена вся труха и он заработает как по маслу!» Не напоминает ли, кстати, весь этот ремонтный жаргон, воспроизво- димый почти дословно, образ другого ремонтника, чинившего часы М. Твена на ином континенте век тому назад? Но если быть вполне серьезным, то тема «отказов» именно БК кажется нам доста- точно интересной, для того чтобы предоставить несколько страниц настоящего издания работни- кам отдела рекламаций... Итак, мы представили, что компью- тер, как строго детерминированное устройство, которое должно работать воистину «как дура», обязан абсолютно точно проходить одну и ту же «траекто- рию» счета, если только, разумеется, и начальные условия заданы столь же абсолютно одинаковым образом. Наи- более демонстративным упражнением на эту тему может явиться стирание броуновского «демона» при повторном прохождении «случайной траектории» (для читателей, которые еще не выяс- нили значение периода случайной
26 БК за рога функции нашего ФОКАЛа — FRAN, сообщим, что он равен 215-1=7*31* 151). Но мы испробуем теперь несколько иную процедуру: углубив- шись немного в упомянутую реку-биль- ярд, повернем затем точно назад! Дей- ствительно, если уж нам удается, вопреки всей философии, пойти в реку, то стоит попытаться из нее еще и вый- ти! 20.10 С ; TIME REVERSAL 21.10С ;.. 21.14SC = —С 112 ‘TIME REVERSAL’ 140 PRESET(417, 120) 162 172 232 C = — C К несказанному огорчению автора, а надеюсь, и читателей, повторивших и этот более рискованный «заплыв», ока- зывается, что даже 32-разрядный БЕЙ- СИК не в состоянии проплыть обратно точно по самому простому отрезку пря- мой! И это при том, что на дискретном дисплее в одной графической линии может скрываться еще множество близких счетных траекторий. Можно, впрочем, надеяться, что наблюдаемые в этом случае «огрехи» возникают лишь в блоке обработки графики, тогда как сам счет происходит с куда как более высокой точностью. Эту обнадежива- ющую идею стоит проверить, заставив БК чертить и стирать лишь небольшое число начальных отрезков (и даже всего лишь один). В такой постановке можно будет все-таки проверить, начи- ная с какой дистанции БК уже вообще не будет в состоянии попадать «обрат- но» в ту же прямую (которая только разве у Эвклида не имела толщины). А вот напоследок и фундаменталь- ная тема — всем проблемам проблема: повернем точно назад скорости всех молекул во Вселенной! Придем ли мы лет эдак через 2*1010 назад, к сотворе- нию мира? Ведь матушка-то Природа, в отличие от какого-то там БК, считает все точно! (Ответ: ±ен). На фоне столь мудреных проблем отметим полезную методическую воз- можность. Если перед БК поставлена какая-то задача, связанная с построе- нием большого числа линий, то через некоторое время весь дисплей или его часть могут быть «залиты» сплошь этими линиями, и дальнейший контроль за деятельностью БК станет невозмож- ным. В этом случае советуем либо регу- лярно переключать операнды 1 и 0 в операторах FT и FV (в ФОКАЛе) или «цвет» (интенсивность — в БЕЙСИКе), либо, что гораздо больше впечатляет, переключать их хаотически, поскольку все нужные операнды могут задаваться «арифметическими выражениями», т. е. и случайными функциями. При этом в БЕЙСИКе может потребоваться заключительная «установка цвета», которую можно задать либо в про- грамме командой COLOUR 1,0, либо произвести вручную ключом Кб. Итак, можно надеяться, что наши читатели пусть в самых общих чертах представили, что медленный «дрейф» и размывание любых счетных «траекто- рий», связанный с погрешностью вычи- слений при конечном числе разрядов на любой ЭВМ, — дело неизбежное, и вопрос лишь в том, достаточно ли мала допускаемая погрешность для данной конкретной задачи. В задачах с «беско- нечным будущим», как в проблеме устойчивости Солнечной системы, дрейф такого рода в состоянии обесце- нить любые достоинства суперкомпью- тера. Разумеется, при моделировании какого-либо реального явления, помимо этого небольшого недостатка ЭВМ, куда как более существенной может оказаться неточность в опреде- лении параметров и начальных условий в моделируемой системе (что почти очевидно в случае моделирования погоды и несколько менее ясно для планетной механики). Мы можем предложить тем, кто поже- лает лучше ощутить роль погрешностей счета в моделировании различных про- цессов, искусственно увеличить эти погрешности, с тем чтобы не дожи-
БК за рога 27 даться результатов целыми ночами, а иметь возможность выявить их за несколько минут наблюдения. Для этого достаточно при вычислении углов отражения в бильярде добавить к углу С случайно меняющуюся добавку с варьируемым небольшим множителем. Тем самым мы сможем моделировать различную «шероховатость» стенок бильярда. Теперь, запустив на нашем бильярде шар, скажем, по равностороннему тре- угольнику, мы можем задаться вопро- сом почти в духе высокой математичес- кой науки: устойчива ли форма тре- угольника при наличии нашей шерохо- ватости? Не может ли со временем тре- угольник превратиться... в квадрат? Впрочем, для высокой математики слу- чайные шероховатости или тем более какие-то погрешности счета — объекты не вполне «чистые». Скорее вопрос можно было бы поставить так: устой- чива ли траектория при малом искаже- нии формы первоначальной границы? Надеемся, что со временем мы обра- тимся и к исследованию отражений от границ более сложных, нежели окруж- ность, с которой мы начали. Затронутые «бильярдные» мотивы читатель может продолжить на следу- ющих модификациях: вставить в центр исходного бильярда меньшую отража- ющую окружность, т. е. устроить коль- цевой канал. Полезно организовать и 1210 С ; SQUARE GAME 12.12 А «X, Y, С» X, Y, С ; S Р=3.14159 ; SC = C*P/180 12.14 X FT(0,200*(X+1.3), 100* (Y+1.3)) 13.10 S Z=X+(Y—1)/*FTAN(C) ; I (1 — FABS(Z))13.14 13.12 S X=Z ; S Y=1 ;SC=-C; D 14 13.14 S Z=Y+(X—1)*FTAN(C) ; ’ I (1 — FABS(Z))13.18 13.16 SY=Z;SX=1 ;SC=P-C; D 14 13.18 SZ=X+(Y+1)/FTAN(C) ; I (1-FABS(Z))13.22 13.20 S X=Z ; S Y=-1 ;SC=-C ; D 14 13.22 S Z=Y+(X+1)*FTAN(C) ; I (1 —FABS(Z))13.10 13.24 S Y=Z ; S X=-1 ; S C = -P-C ; D 14 13.26 G 13.10 14.10 X FV(1,200*(X+1.3), 100* (Y+1.3)) ;R более привычный на взгляд прямо- угольный или хотя бы квадратный биль- ярд. Если же его программная органи- зация покажется более сложной, сове- туем вначале построить более простой двубортный канал (его можно «замк- нуть», уложив как бы на цилиндричес- кую поверхность). В дальнейшем такой канал можно капитально усложнить, разрезав его на две, четыре и т. д. части, которые на экране будут распо- лагаться одна под другой. Вначале имеет смысл устраивать чисто зеркаль- ное отражение от стенок, когда кон- троль за правильностью функциониро- вания программы предельно упрощен, и лишь затем «включать» в дело шерохо- ватость. Во всех наличных бильярдах можно также смоделировать наблюдающееся в- целом ряде физических ситуаций улучшение зеркального характера отражения при малых углах скольже- ния. Для этого в шероховатую добавку к углу С достаточно включить еще мно- житель COSC. Теперь можно наблю- дать довольно интересное явление — своеобразное «каналирование» частиц, т. е. захват траекторий в область малых углов скольжения. При этом в прямом канале частица начнет видимым обра- зом ускоряться. Дело в том, что основ- ные затраты времени у БК связаны с расчетами углов отражения, а сами отрезки прямых от удара до удара стро- ятся довольно быстро. Напротив, в изо- гнутом канале частица может практи- чески «остановиться», поскольку здесь число ударов о внешнюю стенку может сильно возрасти. Движение же реаль- ной частицы при подобном каналирова- нии, конечно, должно в любом случае несколько ускориться, поскольку ско- рость не будет испытывать заметных отклонений. Наметим еще несколько возможных направлений самостоятельных игр на бильярдах, которые могут носить
28 БК за рога характер почти научной деятельности. При заметной шероховатости стенок канала движение частицы может при- обрести выраженный характер случай- ных блужданий. Попытайтесь «эмпири- чески», т. е. в машинном эксперименте, определить эффективный коэффици- ент диффузии D дня этого процесса, его зависимость от шероховатости сте- нок, зеркальности и т. д. Напомним, что в одномерном случае квадрат удаления частицы вдоль канала растет со време- нем, как L2=2£)t Освоившись с движением одной частицы в любом бильярде, не так уж сложно перейти к движению двух и более шаров, пока они не будут «заме- чать» один другого. А не возьметесь ли вы смоделировать движение в круго- вом бильярде хотя бы двух частиц, пре- дусмотрев для них возможность столк- новения по каким-то пусть весьма условным правилам? Здесь вам могут приоткрыться двери в совершенно необъятную сферу «молекулярной динамики» — моделирования движе- ния в системах большого числа частиц. Если же обеспечить при столкновениях выполнение обычных законов сохране- ния энергии и импульса, то за длитель- ное время наблюдений можно будет снова «эмпирически» открыть ни много ни мало, как распределение Максвел- ла! Надеемся, что некоторых дотошных студентов сможет увлечь эта интригу- ющая возможность... А вот несколько иное направление с выходом в сферу игр, но уже игр отнюдь не в научную деятельность. Если у одной из стенок бильярда предусмо- треть возможность целенаправленного воздействия хотя бы на угол отраже- ния, можно засчитывать какие-то очки за попадание в выделенную зону в про- тивоположной стенке и т. д. При этом в БЕЙСИКе с помощью оператора INKEY можно выделять лишь какое-то ограни- ченное время на выработку решения (в ФОКАЛе это усложнение возможно при подключении к порту — см. вып. 2 за 1989 г.). Хотя разработка машинных игр — это само по себе не игра, все же автор не без душевного тре- пета намечает здесь путь к моделированию игр, столь же мало атлетичных, как и исходный биль-
БК за рога 29 ярд. В целом соответствие компьютеризации, электронных игр и играющих в них заслуживает отдельного внимания и обсуждения. Автор дол- жен во всяком случае признаться, что часто произносимый тезис о том, что игры на компьюте- рах в состоянии увлечь подростка в тайны кибер- нетики и электроники, не кажется ему хоть немного убедительным. Ну вот, скольких детей игра в карты привела к интересу к комбинаторной математике, теории вероятностей и т. д.? А у скольких результат не был столь благоприятным? Хотя, разумеется, мера полезности карточных игр — не в указанном соотношении... Но обо всем этом стоит призадуматься родителям, не жалеющим ни сил, ни времени на то, чтобы, невзирая на пре- грады дефицита, непременно снабдить своих чад достаточно нелепой, хотя и электронной, игрой «Волк, собирающий в лукошко яйца, скатывающи- еся с деревьев». Э, да что там дети! А не наблю- дали ли вы, как ученейшие сотрудники просижи- вают часами перед цветными валютными монито- рами (порой еще и сверхурочно!), состязаясь... с генераторами случайных чисел? Интересно было бы подсчитать, какая доля машинного времени тратится на эту своеобразную «электронноигро- манию», а какая — на серьезные расчеты...ну, там, той же погоды и перелопачивание баз дан- ных. Впрочем, польза от персональных компьюте- ров — опять-таки не в этом численном выраже- нии... Познакомимся напоследок еще с одним подобием бильярда с довольно своеобразными правилами. Мы как-то приводили примеры шутейных рандо- мизаторов (см. вып. 3 за 1989 г.), пред- назначенных для некоторого улучше- ния функции FRAN. Для каждого задан- ного числа подобная процедура выра- батывает некоторое следующее число. Построим для нашей процедуры вот такой «бильярд» (так называемая лест- ница Ламерея): Налюбовавшись на замысловатые 312 ‘SIMPLEST RANDOMIZER’ 322 INPUT «ХО» ; X 332 PRESET (256*Х, 240) 340 Y=123*X + .456789 352 Y=Y-INT(Y) 362 LINE-(256*X, 240*(1 -Y)) 372 LINE —(256*Y, 240*(1 -Y)) 382 X=Y 392 GOTO 340 31.05 C ; SIMPLEST RANDOMIZER 31.10 А «ХО»Х ; X FT(0,256*X,240) 31.12 S Y=123*X + .456789 ; S Y=Y-FITR(Y) 31.14 X FV(1,256*X,240*(1 -Y)) 31.16 X FV(1,256*Y,240(1 -Y)) петли, можно заменить оба FV на FT и, задавая различные Х0 (в случае заци- кливания, когда новых петель не возни- кает), проконтролировать качество случайной процедуры в отношении кор- реляции последовательных чисел (по равномерности «засеивания» поля) и заполнения рабочего интервала (0,1).
30 БК за рога При достаточно большом числе точек на экране должна «проступить» исполь- зуемая для получения «хаоса» функ- ция. Но она быстро осциллирует, и ее визуализация потребует неоправданно много времени и совершенствования режима ввода Х0. Заметим, что в БЕЙ- СИКе по вполне понятным теперь нам причинам зацикливание происходит несравненно реже, и поэтому это упражнение имеет смысл повторить. Для ускорения дела можно также осно- вательно упростить и сам наш рандоми- затор: 31.12 S Y= 12*Х+ .3456789 или 340 У=31*Х+.4159265358 Если теперь возвратиться к операциям FV (LINE), то, надеемся, процедура построения даже шутейных случайных чисел станет понятной. Самое время поразмышлять над требованиями, кото- рым должны удовлетворять хорошие рандомизаторы, в частности, в отноше- нии числа «зубцов» их производящей функции. Для создания максимума хаоса их должно быть побольше. Но у ФОКАЛа довольно незначительное количество разрядов, что вновь накла- дывает определенные ограничения на «зубчатость» нашей пилы. В практически применяемых рандо- мизаторах используются и куда более замысловатые «кусочно-рваные» функ- ции. Но оказывается, что даже при самых простых связях У(Х) наша диа- грамма может выглядеть неожиданно сложно. Рекомендуем испробовать такие параболы: 31.12 S Y=M*X(1—X) (340 Y=M*X*(1-X)) 0,5<М<4 При этом мы получаем модель так называемого странного аттрактора — довольно модного математического объекта (это красивое слово означает «притягиватель», «привлекатель», что звучит куда корявее). Странен же этот «завлекатель» именно тем, что при внешне простой процедуре способен генерировать изрядный хаос. Можем порекомендовать проследить за изме- нением характера «петель» при плав- ном изменении параметра М (6,5 <М<4). Более подробное исследова- ние может включать визуальный кон- троль заполнения интервала (0,1) и даже построение соответствующих гистограмм. Тем же, кого наш хаотиче- ский объект достаточно заинтригует, советуем заглянуть в журнал «Успехи физических наук», № 1, т. 150, с. 91 (1987). 31.18 SX=Y;G 31.12 412 ‘STRANGE ATTRACTOR’ 422 FOR L=32 TO 256 432X=RND(1) 442 FORN = 1 TO 100 452 Y=L*X*(1 — X)/64 462 X=Y 472 PSET(L,240*(1 -X)) 482 NEXT N 492 NEXT L 41.12 C ; STRANGE ATTRACTOR 41.14 FL=32, 256 ; D 42 42.12 SX = (FRAN() + 1)/2 42.14 F N=1, 100 ; D 43 43.10 S Y=L*X*(1—X)/64 43.12 SX=Y 43.16 XFT(1,L, 240*(1 — X)) Обратим внимание еще на одну нетривиальную тонкость нашего изощренного БК. Попробуйте запустить нашу «лестницу» при М=4 с двух исход- ных значений: Х0=3/4и ...Х0=О,75. Оказывается, ФОКАЛ различает эти числа, да еще как! С пер- вым мы немедленно засядем в порочном цикле Х0=э/4, тогда как со вторым траектория быст- ренько выкручивается из исходной точки, что говорит о ее своеобразной неустойчивости. Нор- мальному абстрактному математику ничего подоб- ного и в голову не должно приходить. Заметим, что более солидный БЕЙСИК не различает в дан- ном случае 3/4 от 0,75. Возможно, при других М вы обнаружите сходные курьезы? На этом месте нам, кажется, пора переходить к построениям обещанных кривых линий, хотя какие-то кривые у нас на дисплее уже возникали, и чита- тели имели возможность представить, что БК в силу своей дискретной при- роды (главное — дискретного дисплея!) строит кривые не так, как это имел в виду А. Эйнштейн, т. е. изогнутыми, кри- выми в каждой точке. У БК кривые составлены из небольших отрезков прямых, составленных под углами. Поэтому при построении кривых глав- ное — подбор шага. Желательно, коне-
БК за рога 31 чно, чтобы этот шаг был достаточно мал, чтобы изломы не были больше размера одной графической точки на дисплее. Но обычно всегда приходится идти на определенные компромиссы между гладкостью кривых и затратами сил на их построение. Новая затронутая тема открывает перед нами массу приятных возможно- стей. Весь арсенал разделов учебников по графикам и функциям ждет новых интерпретаторов. Одни названия чего стоят! Конхоида Никомеда, улитка Пас- каля, локон Аньези! Большое количе- ство увлекательных завитушек можно найти в переводной брошюре Ч. Косневского «Занимательная мате- матика и персональный компьютер» (М., Мир, 1987), которую мы можем рекомендовать и нашим читателям. Однако большинство примеров в этой книге не связывается с какими-то физическими ситуациями. Нам же ближе прежде всего кривые, возника- ющие при различных механических движениях. Возьмем, к примеру, точку, которая, вращаясь, описывала контур капли, и придадим ей еще и поступа- тельную скорость (при этом параметр Т может изображать обычное время): 45.10 С ; CYCLOIDAL MOTION 45.16 FT=0, 0.05, 100 ; D46 46.10 S X = 40*FSIN(T) + 10*T ; S Y=25*FCOS(T) 46.16 X FT(1,X,128-Y) Меняя величину поступательной скоро- сти (или радиус вращения), можно построить красивые семейства эпи- и гипоциклоид. Можно проследить, как происходит при этом переход от одних к другим через предельный случай обыч- ной циклоиды. Не намного сложней будет заставить БК покатать одну окружность по дру- гой. Вообще компьютеру не составляет трудов построить результат сложения самых разнообразных движений, кото- рый еще, возможно, не обрел собствен- ного названия или явного аналитичес- кого представления. И уже сложение самых простейших движений — прямо- линейного, вращательного и колеба- тельного — может привести к весьма замысловатым траекториям. Обратимся-ка к вращениям, которые, кстати говоря, в древности представля- лись даже более естественной формой движения, нежели прямолинейное. Школа Птолемея ухитрилась добиться неплохого согласия с наблюдениями планет, нанизывая друг на друга несколько «эпициклов». Но затем наша планета принялась вращаться и сама стараниями Коперника и Галилея, кото- рый даже слегка пострадал за это... Не так давно католическая церковь во вселен- ском стремлении к модернизациям предприняла отчасти запоздалые попытки официальной реаби- литации Галилея. Но материалы его «дела» вроде бы затерялись — то ли их еще Наполеон вывез... А поучительные могли там быть дискуссии! Как бы то ни было, теперь вокруг Земли принялась вращаться еще и масса спутников. Вот возможное упражнение на эту тему: построить на географической карте траекторию спутника (точнее, след точки, над кото- рой он проходит в зените). Карту стоит исполнить в привычной проекции Мер- катора, тем более что именно в таком виде с требуемыми траекториями ее можно заметить в репортажах из ЦУПа. На карте можно построить экватор, тропики и т. д., но можно ее основа- тельно оживить, набросав грубые кон- туры материков и ключевые точки: Байконур (который можно и не отыс- кать на картах), мыс Канаверал (6. Кен- неди!), Москву или Павлово-Посад, где был рожден наш БК. Методические воз- можности для рисования и хранения подобных карт наши читатели уже име- ют. Начать лучше с «низкого» спутника, период обращения которого близок к 90 мин, а орбита почти строго круговая. Наклонение орбиты к экватору D можно задать равным 1 радиану — такой спутник будет пролетать над Москвой. Итак, поехали? 51.05 С ; DE REVOLUTIONIBUS ORBIUM COELESTIUM 51.10 A«D»D ;STS = 1.5 ; S Р=3. 14159 ;STE = 24 51.12 F Т=0,1000 ; D 52 52.10 S V=P*T/10*TS+6
32 БК за рога 52.12 S V=V-2*P*FITR(V/2*P) 52.14 S H = FSIN(D)*FCOS(V) ; S A=FASIN(H) 52.16 S B = FCOS(D)*FCOS(V) 52.18 S C=FSQT(B 2 + (FSIN(V)) 2) 52.20 S L=P*FITR(V/P) + FSGN(P —V)* FASIN(BZC) 52.22 S L=2*P*FITR(L/2*P) 52.24 S L=L+7+P*T/10*TE ; D 52.22 52.26 X FT(1,200-64*L, 120-80*A) При дальнейших разработках полезно проследить, как меняется характер траекторий при увеличении периода обращения до синхронного, т. е. до 24 ч (точнее, здесь нужны не солнечные, но звездные сутки — 23 ч 56 мин 4,1 с). Высокие, в том числе и синхронные орбиты, как правило, заметно эллиптичны и след спутника движется по ним «неравномерно». Аналитическое представление кеплерова движения (в параме- трической форме) нетрудно разыскать в учебни- ках. При слабой эллиптичности, характерной для многих планетных орбит, допустимы упрощенные явные выражения. Любопытно, что открытие сла- бой неравномерности движения Луны по небу (е=0,055) историки астрономии приписывают еще вавилонянам, которые якобы использовали для аппроксимации реального поведения скорости прямоугольную (меандр) и даже трапецеидальную (!) функцию. Нередко упоминаемый нами всуе А. Эйнштейн — один из высочайших научных авторитетов — отрицал (воз- можно, не без определенного кокет- ства) наличие какого бы то ни было положительного содержания в проти- вопоставлении гео- и гелиоцентричес- кой систем. Попросту говоря, все равно, что вокруг чего вращается! Поэтому мы вправе считать Солнце всего лишь спутником Земли и, положив Т=365 сут, грубо изобразить годовой путь Солнца (для этого придется поработать с мас- штабом, чтобы все линии не слишком сливались). Дополнительная возмож- ность — построить положения термина- тора, т. е. границы дня и ночи. При этом достаточно считать его просто большим кругом, пренебрегая размерами све- тила и атмосферной рефракцией. Даже с такой моделью можно объяснять род- ным, где сейчас полярная ночь, а где лето... Аналогичные построения для спут- ника позволяют получить на карте зоны его видимости, или радиовидимо- сти, которые можно сравнить с картами из ЦУПа (где обозначены и эти зоны и терминатор). Конечно, положение радиогоризонта может не совсем сов- падать с обычным оптическим горизон- том (заметим, что оба они на отрасле- вом жаргоне могут обозначаться так: изделие уходит за бугор), но нас покуда должно интересовать лишь искажение форм в картографии. Не составляет большого труда про- следить на нашей карте и путь закон- ного спутника — Луны (ТМ=28 сут, наклонение 28°). Отсюда недалеко и до модели, поясняющей солнечные и лунные затмения, хотя в целом это дело не такое простое... Случайно или нет, но угловые размеры наших светил так подозрительно точно подогнаны, что наблюдаются как полные, так и кольцевые солне- чные затмения (последнее такое затмение не так давно транслировалось по телевидению из КНР)! Отсюда должно быть ясно, что полная лунная тень где-то у поверхности Земли аккурат и закан- чивается. Тень же Земли, поскольку Земля больше Луны почти вчетверо, в состоянии с избыт- ком покрыть Луну. Поэтому предсказание солне- чных затмений требует гораздо большей точности, нежели лунных. Наша модель — лишь введение в эту старую проблему. У нашего скромного БК — поистине богатырские возможности. Ему ничего не стоит, например, на нашей модели повторить легендарный эксперимент библейского персонажа — Иисуса Навина, который якобы остановил дви- жение Солнца по небу! Мы же можем остановить вращение Земли, просто выкинув из соответствующего места программы член, содержащий ТЕ. В результате наша «карта» фактически превратится в... карту звездного неба, где на месте северного полюса Земли теперь окажется полюс мира! Люби- тели астрономии могут начать разме- щать на этой карте все подобающие элементы системы мира: кое-какие звезды, границы созвездий, затем пла- неты (при желании — с дополнитель- ными эпициклами!) и т. п. Придется только подумать о системе передачи яркости звезд — ведь у БК предусмо- трена лишь двухступенчатая градация
БК за рога 33 яркости (в ФОКАЛе — коды 145, 146), причем только в укрупненном масштабе 32/64. Но ведь на яркую звезду не жаль будет отвести и не одну графическую точку. Напомним, что невооруженным гла- зом человек в состоянии наблюдать на небе единовременно что-то около 3000 звезд — смешная цифра! И если она приводила в замешательство Козьму Пруткова, то для БК (ФОКАЛ обязан помнить значения до 2000 перемен- ных)) — это поистине сущий пустяк. Ясно, что нам хватит места для всех планет, их спутников, астероидов и даже комет с их сильно эллиптичес- кими орбитами, и дело здесь лишь за поиском элементов орбит и современ- ных положений наших светил, которые не так просто разыскать даже в астро- номических ежегодниках... Заметим попутно, что определение положений всех тысяч спутников Земли, экранов, корпусов носителей, обломков и т. п., строжайший учет и контроль за ними, за эволюционирующими орби- тами — не просто интересная и сложная задача для высококлассного компьютера, но проблема буквально жизненной важности, ибо все новое и неучтенное, что приближается к вам на экранах РЛС «из-за бугра», может быть истолковано как предвестник очень крупных неприятностей... Стоит напомнить, что один из общепризнанных пороков СОИ состоит в том, что разобраться в случае чего в потоках налетающих «данных» в реальном времени не в состоянии ни супермены, ни суперкомпьютеры. Это в рекламных мультиках, явно нарисованных компьютером, удается так быстро дырявить поштучно условные боеголов- ки... Из газетных сообщений мы могли недавно узнать также, что даже гражданское ведомство — НАСА — держит в своих компьютерных банках орбиты примерно 7000 объектов в околоземном пространстве, в том числе в видах предупрежде- ния столкновений с обитаемыми кораблями! Среди этих объектов числятся якобы и такие курьезы, как кинокамера (не крышка, выброшен- ная в неизвестность А. Леоновым, а целая кинока- мера) и даже перчатка астронавта! Хотелось бы знать, что сталось с рукой, с которой свалилась эта злополучная перчатка? Оставим на этом месте наших читате- лей, пожелавших погрузиться в проб- лемы обращения небесных сфер. Наде- емся, что намеченная тематика в состо- янии пробудить интерес не только истинных ценителей астрономических и прочих естественнонаучных знаний (автор готов засвидетельствовать, что он с вос- торгом наблюдал у Дома ткани на Ленинском про- спекте в Москве — горячее местечко! — совре- менного гадателя — ведь не гадалку же! — пред- сказывавшего всего за 1 руб. судьбы всех жела- ющих... с помощью нашего родного БК, подпиты- ваемого от аккумулятора стоявшего рядом «Мо- сквича». Вот это и есть настоящая компьютериза- ция!), но и любителей снова входящей в моду астрологии! Каково было, к при- меру, расположение планет в день вашего рождения? Но — шутки в сторону — тема сложе- ния различных движений с вращением нашей Земли либо увеселительной карусели в состоянии дать нам повод для многих и многих упражнений. Не возьметесь ли воспроизвести на БК, скажем, вращение маятника Фуко? Или вот гармонические колебания — это всего лишь проекция вращения. Не вспомнить ли, что такое фигуры Лисса- жу? УВАЖАЕМЫЕ ЧИТАТЕЛИ! Сообщаем, что нас, подписчиков выпусков «Вычислительная техника и ее применение», в 1990 году стало 70 тысяи. В выпусках «Вычислительная тех- ника и ее применение» читайте мате- риалы о средствах ВТ и программном обеспечении к ним. Если вас интересуют вопросы эле- ментной базы, технологии произ- водства электронных приборов, передачи данных, кодов и кодирова- ния, волоконной оптики материалов в электронике и другие, подписывай- тесь на серию брошюр. «Радиоэлектроника и связь». Индекс в каталоге «Союзпечати» — 70077.
Р. П. ПОВИЛЕЙКО «АВТОМАТИЗИРОВАННЫЕ» ХАРАК- ТЕРИСТИКИ Миллиард характеристик в год Отдел кадров и социального развития ОКСР Приморскглавснаба — не просто отдел кадров. Зайцева Галина Сергеевна, 37 лет, начальник этого отдела, имеет два высших диплома — инже- нера-электрика и экономиста. Стала начальником в январе 1986 г., и все, что здесь описано, сделано с этого времени. Не прием-увольнение, для чего достаточно одного старшего инспектора, а подго- товка и аттестация кадров, управление кадровой политикой. Сейчас, в начале 1990 г., в отделе 12 человек: группа подготовки кадров из 7 человек (один физиолог и социолог, один юрист), все остальные — группа социального развития. Кто и когда ввел на Руси характеристику? Наверное, это были Чингисхан с Батыем, которые, уверовав в инородных предателей, награждали их тамгой — талисманом (знак, клочок пергамента — кожа с подписью и т. д.), которая давала им жест- кие права над соплеменниками. Вспомнил ее Петр Великий, решавший многие кадровые вопросы единолично на бумажно-доносительской основе. Перед революцией система характеристик, как и многое иное, на Руси развивалась и деградиро- вала до невозможности — вспомним яркие харак- теристики-приказы дикого мужика Распутина. После Великой Октябрьской революции в течение каких-то 10—15 лет мы подняли на железном щите характеристик не только промыш- ленность, но еще выше и вселенскую нашу бюро- кратию. Паспорт с пропиской, характеристика под печатями, многоликая справка — все они вместе составили второе лицо человека, заменили его суть, индивидуальность, встали на месте лично- сти. Средний работающий человек обращается в отдел кадров 3—5 раз в год за справками и харак- теристиками, без которых у нас нельзя сделать и шага. Бумага с печатью рождается вместе с чело- веком, но не умирает с ним, а продолжает жить, жить и жить... Отказаться от них мы не смеем, и они, эти справки-характеристики, безусловно, дойдут с нами до 2000 года и войдут в следующий, XXI век. 1 миллиард характеристик в год, на них требуется 1 миллиард рабочих часов. Не слишком ли это большая расточительность? Отменить их нельзя, но ведь можно сократить эти затраты в отдельных отраслях и подразделениях народного хозяйства в 4—6 раз. Как? Об этом и пойдет рас- сказ. Выборы руководителей — не глупость ли? Итак, все началось с января 1986 г. И сразу же шквал характеристик. Никто не хочет их делать, а делать надо. Рутинный способ: пишет один чело- век, проверяют двое (парторг и профорг). Все видят их необъективность — набор стандартных фраз-штампов. Очень субъективная это вещь, характеристика. А началось все с иного: начали заниматься по требованию времени и начальства модными социологическими исследованиями — обязали. Стали смотреть литературу, журналы. «Социологические исследования», «ЭКО», свой отраслевой «МТС». Нудная работа! А в апреле 1986 г. (помните!) подошла ново- модная волна конкурсов-выборов на замещение руководящих должностей. Насчитали около 20 первых подвыборных должностей Приморскглав- снаба и подведомственных управлений. Конкурс? Да. Выборы? Нет. Глупость это квазидемократи- ческая. Никогда и нигде рабочие, пришедшие на собрание, не определят профессиональных и дру- гих качеств «первых» руководителей, даже за две-три такие встречи. Это театр. Конкурс, подго- товленный комиссиями,—да. А выборы — случай, настроение. Или надо на 2 месяца останавливать производство и, как в Риге, на РАФе, все отдавать выборам — но ведь это критическая ситуация. А в отделах затем выборы начальников — выбирают не грамотных, а удобных. Коллектив может ска- зать «нет» умному, жесткому руководителю. Ну хорошо, раз установили выборы — надо их честно делать. Прокатали все возможные вариан- ты: выбор одного из нескольких претендентов, но ни один из них не набрал оговоренного минимума голосов, а при переголосовании возник новый пре- тендент. И пошло... И вот здесь при всех вариантах выборов упер- лись в характеристики. Писать надо, зачитывать надо, защищать сказанное надо — а вот аргумен- тов нет. Стало ясно, что без хорошей проработки характеристик дальше не обойтись — иначе отдел кадров увязнет в бумагах, интригах, дрязгах. Лень — двигатель прогресса В свое время Джеймс Уатт, изобретатель паро- вой машины, поставил к первому своему образцу- экземпляру мальчишку Гемфри Поттера (его имя осталось истории) и за хорошую плату поручил ему дергать за веревочку клапана. Тот сидел- сидел, смотрел-смотрел на играющих за окном мальчишек, затем привязал движущийся рычаг к крышке клапана и был таков. Считают, что так в технике был открыт принцип обратной связи. Лень — двигатель прогресса! В ОКСР Приморглавснаба надоело писать эти проклятые характеристики. Сначала создали упрощенный набор из следующих 11 качеств: зна- ние специфики работы, уровень экономической подготовки, инициативность, способность взять ответственность на себя, настойчивость во вне- дрении нового и передового, умение четко ставить задачи и осуществлять контроль, умение сплотить коллектив, умение правильно воспринимать кри- тику, способность создать здоровый психологиче- ский климат в коллективе, чуткое и внимательное отношение к людям, единство слова и дела. Напе- чатали это на отдельном листике, провели вверх 11 линий, а поперек их выделили три зоны — номинальную, потенциальную и перспективную с баллами от 0 до 5,0 (с десятичной сеткой, всего 50 уровней). Предложили по каждому качеству трем
Обмен опытом 35 экспертам выбирать уровень, ставить на вертикали 11 точек и соединять их ломаной. Все это назвали «Графиком оценки дело- вых и личных качеств товарища (Ф. И. О.)». Не прижился график, отказа- лись от него — сложно и науко- образно. Продолжали изучать литературу, пока не наткнулись на упоминание об эстонской «си- стеме Тарасова». Услышали, что эта система внедрена на Уралма- ше. Поехали, посмотрели, прики- нули — не подошло. Поискали обрывки тарасовских идей на сахалинской «Дальрыбе» (он ранее работал на Сахалине). Нашли интересную идею — сло- варь характеристик. А в это время всюду заговорили об автомати- зированных рабочих местах АРМ «Кадры» (но только заговорили). В управление пришла непло- хая венгерская ЭВМ ВТ-20А, компактная и с печа- тающим устройством. Формировали и ставили задачу сами, потому что присланное из вычисли- тельных центров оказалось ерундой (все стара- лись делать на больших машинах). Подключили к работе социологов. И все равно тонули в бумагах: потребовали написать на 20 «неизвестных» человек бумаги для представления к орденам и медалям. Затем потребовалось бумажно охарактеризовать резерв кадров — это еще 30 характеристик. И никто не хочет их писать. А потом волнами пошли рядовые бумаги. Все! Без «автоматизированных» характе- ристик не обойтись! На ЭВМ стал работать инже- нером-оператором 1-й категории физик-электро- ник по образованию с 15-летним стажем работы с ЭВМ Михаил Григорьевич Митянский. Из 500 аттестуемых — один недоволен Начали со словарей-характеристик. Сделали. Определили число экспертов: в отделах 10—15, самое большее 20 человек, значит, семи экспер- тов будет достаточно. Узнав о новом подходе, крайком партии поправил: «Больше должны писать!» Хватанул: 70. Это, конечно, лучше, чем семь, но зачем? Известно, что на 8—10-м любая экспертиза зацикливается, начинает повторяться, буксовать. Сначала подумали — может, опрос проводить социологам? Так не хватит их. Решили так: из семи троих назначает руководитель, при- чем может себя и включать, и не включать. Люди сразу подошли к подбору экспертов серьезно. Ну а если начальник хочет сравнять тебя с зем- лей? Он может это сделать, но не здесь: из 7—3=- 4 экспертов назначает сам аттестуемый. Психоло- гически хорошо, что в руках аттестуемого вроде бы большая часть — 4/7, или почти 60%, комиссии. Во всяком случае, злорадных отношений в такой микросреде не возникает. И если вдруг человек не прошел аттестации, то кого винить — сам наз- начил. Среди 500 характеристик был всего 1 (один) случай недовольства. Сели, поговорили, доказали человеку, что все честно и все правда. Доказали! Официально система называется Автомати- ческая аттестация руководителей и специалистов ААРС «Аттест». Сначала был один словарь, потом несколько, теперь около десятка. И все-таки пси- хологическое предубеждение сохранялось в пер- вый год, мол, «машина — дура, что захочет, то напишет». Поэтому весь год троих аттестуемых управления обрабатывали вручную — начальни- ков управлений, их замов, начальников отделов, всего 17x3=51 человек. Это чтобы привыкли, поняли, восприняли правильно. Ну а потом стало все нормально. Как же оцениваются качества специалиста? Значит, речь пойдет о методике оценки дело- вых и личных качеств руководителя и специали- ста с использованием ЭВМ. Кадровую работу надо совершенствовать. Кадры надо изучать — выяв- лять уровень их профессиональной подготовки, идейно-нравственных, личностных качеств. Да, определенная система оценки деловых качеств сложилась и квинтэссенция ее — характеристики, написанные руководителями. Оки, как правило, общи, неполны, субъективны, формальны. Опре- деленным этапом развития этой системы стал институт экспертов. Методика, утвержденная Госснабом СССР 21.09.89 г., ощутимо снижала субъективизм — вместо 1—2 человек предлага- лось характеристику создавать группой. Хорошо, внедрили ее, но сразу выявились острые недо- статки подхода — дело в том, что перечень качеств, предлагаемых экспертам, оставался весьма произволен и случаен; баллы каждый понимал по-своему, а сами качества также истол- ковывал по-разному. Итоговые оценки восприни- мались с трудом и реально было очень трудно сравнивать двух работников — в итоге характери- стики снова стали писать как бог на душу поло- жит. Новая методика не просто использовала ЭВМ как большой и быстрый арифмометр; она корен- ным образом перестраивала подход, вычеркивала старые недостатки и давала следующие новые возможности: действительно индивидуальный подход, улучшение психологического климата в коллективе, определение степени соответствия работника занимаемой должности, выявление основных направлений совершенствования рабо-
36 Обмен опытом ты, нетрудоемкость, удобство пользования. Этапы деловой оценки: подготовка, затем ее проведение и, наконец, принятие аттестационного решения (заметьте, ЭВМ вне этапа, просто как инструмент оценки). Если по порядку, то дело делается так: — информирование коллектива о предсто- ящей оценке, ее целях, порядке проведения (только не компанией! Это надо просто довести до сведения всех раз и навсегда); — формируется список лиц, подлежащих оценке; — подготавливается словарь деловых и лич- ных качеств работника (отдельно для руководите- ля, для специалиста товарного отдела, планово- экономических, технических, кадровых и юриди- ческих служб). На практике делается один сло- варь и серия дополнительных с заменой 5—7 характеристик; — составляются списки экспертов; — собеседование с аттестуемыми (разъясне- ние всех рабочих аспектов, напоминание об объ- ективности и серьезности); — собственно оценка (семь экспертов — руко- водители, ИТР и просто сотрудники, хорошо зна- ющие оцениваемого по совместной работе, причем трех назначает «его» руководитель, а четырех (!) «он» выбирает сам); — каждый эксперт выбирает по словарю утверждения, соответствующие, по его мнению, оцениваемому, и вписывает их номера в аттеста- ционную карту-приложение «шахматку» — это пронумерованные от 1 до 34 (по страницам-каче- ствам словаря) клетки, в которые эксперт вписы- вает одну из цифр со страницы 1, 2, 3, 4, 5, 6 (но- мера фраз на странице). Если, по мнению экспер- та, ни одна фраза не подходит к случаю, то в клетке ставится нуль; — все это передается оператору ЭВМ (ано- нимност ь оценок соблюдается и гарантируется) и по семи картам ЭВМ выдает характеристику. Все! Словарь из 2000 определяющих слов Что засыпешь в крупорушку — то и получишь: из пшеничных зерен отборных сортов выйдет доб- ротная пшеничная мука, а если засыпать что попало — что попало и выйдет. ЭВМ не понимает сумбурную речь: «Давайте напишем то, а может, это?». ЭВМ извлекает из своей памяти то, на что чаще всего указывают в человеке окружающие его люди. Словарная память ЭВМ должна быть достаточно велика, чтобы у оценивающих не появ- лялось чувство ограничения, и достаточно полна, чтобы похоже и достоверно описать человека. Словарь — сердцевина автоматизированной системы. Вот типичный словарь для работников аппа- рата управления; в нем 34 страницы, затрагива- ющие следующие качества личности (страница- качество): 1) знание экономики, организации производ- ства, регламентирующих документов; 2) умение четко поставить задачу; 3) умение прогнозировать события; 4) умение видеть внутрихозяйственные резервы; 5) фактор контроля за ходом дел; 6) непримиримость к недостаткам; 7) чувство нового (совершенствование производства); 8) вопросы координации; 9) плановость и ритмичность рабо- ты; 10) повышение квалификации подчиненных; 11) объективность оценок; 12) оперативность при- нятия решений: 13) четкость и грамотность мыш- ления; 14) умение схватывать суть вопроса; 15) изобретательность и находчивость; 16) обновле- ние знаний; 17)творчество; 18)требовательность; 19) уважительность к коллегам; 20) настойчивость и упорство; 21) конфликтность; 22) чуткость; 23) обаяние; 24) квалифицированность; 25) инициа- тивность; 26) отношение к реорганизациям; 27) взаимодействие с другими подразделениями; 28) рационализация документооборота; 29) отноше- ние к критике; 30) «обещательность»; 31) вежли- вость и корректность; 32) взаимопонимание; 33) авторитет; 34) соответствие должности. Список качеств солиден, но достаточен ли? Пять специалистов (психологов, кадровиков) работали над ним пять месяцев — были изучены десятки методик, сотни книг и статей. Известного поэта Михаила Светлова, написавшего за 20 мин прекрасную песню, с оттенком осуждения спроси- ли: «За 20 минут?!» Он сказал: «За 20 минут плюс вся моя жизнь». Здесь: 5 месяцев + 5 жизней. Можно спорить о структуре, о пересекаемости качеств, но есть в прикладной психологии инте- ресное эмпирическое наблюдение — если за дело садятся 5—7 специалистов и перечисляют в совершенно свободном порядке 10—15 особенно- стей объекта, то объект описывается с полнотой более чем 90—95%. Здесь качеств более чем вдвое больше, они многократно обдуманы, а глав- ное. практически апробированы. Возьмем качество № 3 «четкость и грамотность мышления». Здесь, как и во всех остальных случа- ях, предлагается выбрать для характеристики одно из следующих шести утверждений: 1) всегда очень лаконично и грамотно может излагать свои мысли; 2) в основном излагает мысли четко и гра- мотно; 3) может изложить свои мысли четко и гра- мотно, но это требует от него определенного труда (времени); 4) не всегда может изложить свои мысли кратко и грамотно — многословен; 5) обычно не может изложить кратко и грамотно свои мысли — излишне многословен; 6) всегда свои мысли излагает путано, постоянно уходит от темы разговора. Заметьте, здесь шесть ступеней в пределах воз- можностей комплексной оценки разбиения 7±2 объекта. Каждое из утверждений содержит при- мерно 8—12 слов; оттенки одного качества описы- ваются 50—70 словами, а весь словарь состоит примерно из 2 тыс. определяющих слов — хоро- шее поле выбора. Таких словарей в Приморск- главснабе разработано уже 10 по разным направ- лениям-отраслям и уровням. Солидная, добротная работа. Впереди АСУ «Кадры» Эксперт кладет словарь рядом с «шахматкой-1» (серия на 6 аттестуемых — 6 табличек на листе по 7 экспертов) и с «шахматкой-2» (на листе таблицы 34 пронумерованные клетки на одного аттесту-
Обмен опытом 37 емого — здесь ставятся номера по словарю 34 утверждения по выбору). Ему сказано: «В табли- цах шахматки-1 впишите свою фамилию там, где вы стали членом комиссии, а в каждой из 34 кле- ток шахматки-2 проставьте шифр-номер той фразы по словарю, которой вы отдаете предпо- чтение». Тираж из 20 словарей каждого вида достаточен для организации, еще напечатаны 50 листков со списками экспертов «шахматка-1» и 1000 «шахматок-2» (на год-два)'. «Шахматки» отдаются проверенному, молчали- вому оператору — программисту Митянскому, и через две минуты отпечатанная характеристика лежит на столе начальника ОКСР. Машина ведет автоматический учет движения кадров, например, если нужно выдать список вакантных должностей по подразделениям с указанием складов. Харак- теристика или «Отзыв на аттестуемого» прежде всего показывается ему самому (!), и ежели он согласен, то расписывается (этого нет нигде, кроме как здесь). Все сделанное фиксируется в памяти машины. Вначале было сопротивление системе, несколько даже надоевшее, потом оно сошло на нет и все успокоилось. В среднем около года — полтора можно класть на внедрение системы, и главным здесь оказывается не ЭВМ, а психология. Сегодня в ОКСР на полке стоит библиотека сло- варей с привычными цветными бляшками: черные — кадровики, красные — «товарники», пестрень- кие — руководители, коричневые — юристы, жел- тые — плановики и экономисты, зеленые — техни- ческие службы. — Можно ли сказать, насколько точнее новые характеристики? — Да, можно. В старых обычно 15—20 предло- жений, из них более 3/4 штампы типа «политически грамотен» и «морально устойчив», повторяющи- еся из раза в раз. Здесь же выбор из 20—25 пред- ложений идет более чем из 200 фраз-утвержде- ний, причем на 70—80% тексты характеристик не повторяются. Итак, 3—5 индивидуальных качеств или около 15—20? Вот и ответ о «точности». — Почему разные характеристики различаются объемом? — Очень просто: из 34 качеств машина форми- рует 21 блок, объединяя некоторые родственные 2—4 качества в одно. Был у нас случай, един- ственный в своем роде, когда ЭВМ из-за разброса мнений экспертов закрепила в характеристике всего лишь 11 фраз. В сущности, это была резко отрицательная характеристика, человек это понял и от нас ушел. — Какие задачи вы можете сейчас легко решать с помощью ЭВМ? — Очень много: сколько человек можно и нужно освободить, сколько может быть зачислено в резерв на выдвижение и т. д. Мы выдаем отзывы- характеристики для переаттестации и конкурса, к выборам и в резерв, для выезда за границу и мало ли для чего еще. Во всяком случае, мы сейчас не на словах, а реально видим контуры будущей АСУ «Кадры». К работе подключается ЭВМ Задача «Аттестации» разбита для ЭВМ на две подзадачи: аттестация руководителей «Аттест» и других сотрудников разных подразделений «Ат- тест-1»: обе задачи используют общий массив носителей информации (списки работающих, их объективные данные и др.). Для установки задачи на ЭВМ типа ВТ-20А два пакета дисков соответ- ственно размещаются семью схожими сервисными программами: причем все словари уже заложены в ключевых файлах программ. Вводятся резуль- таты аттестации с семи карт, и идет распечатка итогов на принтере. Математическое обеспечение: служебные про- граммы для разметки пакетов магнитных дисков, программа управления базами данных, язык напи- сания программ. Пакет «Аттест»: программа ввода результатов аттестации и печать аттестационных листов. Пакет «Аттест-1»: то же, но еще печать бланков на сотрудников. Сервисные программы: ввод и печать словарей (фраз), просмотр и печать ключевых файлов. Алгоритм выбора фраз в обеих подзадачах один и тот же, но подзадачи различа- ются словарями: в первой подзадаче словарь составлен для руководителей, а во второй — для специалистов различных служб Приморскглавсна- ба. Каждый словарь, как уже отмечалось, отра- жает 34 качества по шести уровням-фразам; из этих 34 качеств составляется 21 группа качеств, которые и характеризуют сотрудника в аттеста- ционном листе. При этом учитываются следующие «острые» ситуации: при каких разбросах мнений выбирается качество (а может, даже вообще не выбираться), как выбирается уровень качества (фраза) из набора при расхождении мнений экс- пертов: как выбирается ключ фразы, который записывается в базу данных на сотрудника. Характеристика не только распечатывается, но в свернутом виде (3—5 строчек цифр кода) запоми- нается на ЭВМ и в любое время, в любом выборе и разрезе может заново быть выдана машиной. Пример «автоматизированной» характеристи- ки, сделанной на основе словаря специалиста товарного отдела «К. Ф., год рождения —1939, национальность — русский, партийность — беспартийный, образование — высшее, специальность — бух- галтерский учет, общий стаж работы с 1958, стаж работы в системе с 1970, должность — зам. начальника отдела, стаж работы в указан- ной должности с 01.05.70 г. Тов. К. Ф. в системе Приморскглавснаба работает с 1970 г. в должности зам. начальника отдела. Грамотный специалист, хорошо знает специ- фику материально-технического снабжения. К распределению материальных ресурсов подходит творчески. Знает потребителей, в курсе их основных проблем. Знание специаль- ной информационно-справочной литературы позволяет ему отлично ориентироваться в вопросах обеспечения потребителя в случае отсутствия какого-либо вида продукции. При написании деловых бумаг и ведении перегово- ров в основном лаконично и грамотно излагает
38 Обмен опытом свои мысли. Умеет налаживать и поддержи- вать хорошие деловые отношения с работни- ками смежных подразделений. Ищет возмож- ности усовершенствования производства и управления, разрабатывает предложения, но не торопится их внедрять: «Вдруг обнаружится что-либо неучтенное». Способен быстро разо- браться в сути вопроса и выделить главное. В большинстве случаев старается работать оперативно, редко допуская промедление. Довольно своевременно принимает решения. Исполнителен. Очень надежный, в выполнении работы на него можно положиться как на самого себя. Работает производительно, достигает хороших результатов. Рабочее время всегда использует полностью. Отсутствует на рабочем месте только по уважительным причи- нам. Не бывает без дела. Обычно правильно оценивает свои возможности, может быть, ино- гда их немного переоценивает. Умеет распола- гать людей к себе и находит с ними общий язык. Обычно настойчив, упорен и цепок, не любит останавливаться, пока не доведет дело до конца или не разберется в каком-либо вопро- се. Иногда преувеличивает свои заслуги и пре- уменьшает недостатки, хотя в целом относится к себе объективно. В общем, достаточно вежлив и корректен, редко позволяет себе гру- бость или бестактность по отношению к дру- гим. Прислушивается к критике, но меры при- нимает редко. Образованный, начитанный человек, отличается широким кругозором. Все общественные поручения выполняет добросо- вестно, с большой отдачей. Перспективен, спо- собен уже сейчас выполнять более сложную работу. Решение аттестационной комиссии: рекомен- довать для утверждения в должности замести- теля начальника отдела ресурсов и оптовой торговли строительными материалами и цементом с окладом 250 руб. Больше внимания уделять вопросам внедрения НОТ с примене- нием ЭВМ». Пример автоматизированной характеристики на перспективного работника (единственная из отобранных характеристик, в которой отдел кадров единодушно решил не зачеркивать для печати фамилию и не подменять ее инициала- ми) «Ткаченко Зинаида Ивановна, год рождения — 1942, национальность — русская, партий- ность — беспартийная, образование — высшее, специальность — технология рыбных продук- тов, общий стаж работы с 1960, стаж работы в системе с 1968, должность — начальник отде- ла, стаж работы в указанной должности с 02.01.84 г. Тов. Ткаченко в системе Приморскглавснаба работает с 1968 года, в должности начальника отдела управления «Приморскметаллоснабс- быт» с 02.01.84 г. Знает регламентирующие документы, экономику и организацию произ- водства. Почти всегда четко и понятно умеет поставить задачу, дать указание, распоряже- ние. Умеет строить неплохие прогнозы, обла- дает чувством перспективы, предвидит последствия принимаемых решений. Видит внутрихозяйственные резервы и использует их. Способна держать под своим контролем массу дел, держать в поле зрения массу дета- лей, вовремя реагировать на любое отклоне- ние в работе. Почти всегда бывает неприми- рима к недостаткам, бесхозяйственности, рав- нодушию. Ей присуще чувство хозяина. Постоянно ищет возможности усовершен- ствования производства и управления, вносит предложения, добивается их внедрения в практику. Всегда обеспечивает плановость и ритмичность в работе отдела. Объективно оце- нивает работников и результаты их работы. Всегда очень оперативно решает вопросы, не откладывая в долгий ящик. На изменение производственной обстановки реагирует быст- ро. Требовательна к другим, как правило, вполне обоснованно, хотя иногда и через меру, работать вместе с ней можно — тяжеловато, но вполне можно. Довольно настойчива, упорна и цепка, не любит останавливаться, пока не доведет дело до конца или не разберется в каком-либо вопросе. Умеет располагать к себе людей, находить с ними общий язык. Принимает новое только после проработки, обоснованности воз- можностей использования, его полезности. Всегда работает в тесном взаимодействии с партийной и общественными организациями. Обладает умением увязывать хозяйственную деятельность с политическими задачами. На критику обычно не обижается, прислуши- вается к ней и принимает меры. Свои обещания выполняет, если дала слово, значит, сдержит его. Своим поведением никогда не создает нездоровой атмосферы в коллективе, умеет сглаживать конфликты и приводить людей к согласию. Имеет авторитет и пользуется ува- жением большинства членов коллектива. С работой справляется хорошо, может быть зачислена в резерв на выдвижение». Справки тоже выдает ЭВМ Что бы ни говорилось о борьбе с бюрократией и росте демократии, справки-объективки сохра- нятся к 2000 году и далее. 100 человек — это 300 справок, 1000 человек — это 3000 справок, а 3—5 тыс. работающих — не менее 10 тыс. справок. Вот и занят отдел кадров, вот и оправдан он — не верите? Подсчитаем: выдача одной справки-объ- ективки, даже на бланке, но с приложением печа- ти, требует 10 мин, 100 справок — это 1000 мин (17 ч или почти 3 рабочих дня), 1000 справок — это почти 30 полноценных рабочих дней одного сотрудника отдела кадров, ну а если учесть, что ему требуется межоперационный отдых, то это вырастает до 60—70 рабочих дней, или до 3 меся- цев в году. А если надо выдавать 3—4 вида спра- вок с печатанием их на машинке, то работа одному человеку обеспечена. При заработной плате 200 руб. в месяц (плюс премиальные и пр.) на хорошем НПО государство платит за этот листок бумажки до 2,5—3 тыс. руб. в год. Значит, система автовы- дачи ЭВМ справок-объективок стоимостью 2—3 тыс. руб. окупает себя в первый год, а потом начи-
Обмен опытом 39 нает давать невидимый умножаемый доход. Инте- ресный подсчет? К тому же справки аккуратно и даже красиво отпечатаны в три колонки по центру листа — ни помарок, ни исправлений (все давным-давно вне- сено оператором в память ЭВМ). Остается началь- нику отдела кадров размашисто расписаться в отведенном месте и хлопнуть круглой фиолетовой печатью — что он и делает. Пример автоматизированной характеристики «Р. К., год рождения —1951, национальность — русский, партийность — беспартийный, образование — высшее, специальность — судостроение и судоремонт, общий стаж работы с 1974 года, стаж работы в системе ПГТУ с 1981 года, должность — начальник отдела, стаж работы в указанной должности с 22.07.81 г. Тов. Р. К. в системе Приморскглавснаба рабо- тает с 1981 года, в должности начальника отдела центрального аппарата с 22.07. 81 г. В основном знает организацию производства, экономику, умело пользуется регламентиру- ющими документами. Его распоряжениям недостает четкости и ясности. Не лишен чув- ства перспективы, больших просчетов не допускает. Способен держать под своим кон- тролем основные моменты в ходе работы. Обычно не проходит мимо бесхозяйственно- сти, недостатков. Возможностей усовершен- ствования производства и управления не ищет, но при наличии хороших предложений готов их поддержать. В целом справляется с вопросами координа- ции, способен находить приемлемые решения при согласовании интересов различных работ- ников, умеет учитывать их особенности и спо- собности. Проявляет известную заинтересо- ванность о повышении квалификации своих подчиненных. Хоть не сразу, но способен понять суть дела, отделить главное от второ- степенного. Иногда проявляет инициативу в работе, в основном принимает правильные решения. Как правило, готов внимательно выслушать человека, уважительно относится к мнению собеседника. Подбирает специалистов по уровню знаний и способностей, равных себе. Стремится вовремя поддержать любое начинание, если есть приказ или распоряжение внедрять что-либо. В основном работает в тес- ном взаимодействии с партийной и обществен- ными организациями. Уделяет внимание вопросам совершенство- вания документооборота, унификации в целях механизированной обработки документов только по получении указания, распоряжения. Прислушивается к критике, но меры принимает редко. Обычно свои обещания выполняет. Не всегда способен избежать конфликта с людь- ми, но своим поведением не дает повода к ссо- рам в коллективе. Имеет авторитет и пользу- ется уважением у большинства членов коллек- тива. Занимаемой должности соответствует, однако необходимо направить его на учебу. Решение аттестационной комиссии: рекомен- довать для утверждения в должности началь- ника отдела снабжения подведомственных предприятий с канцелярией (оклад — 280 руб- лей). Комиссия советует серьезно пере- строиться в работе, проявлять больше инициа- тивы, вовремя решать вопросы, смелее прини- мать решения и настойчиво проводить их в жизнь, не занимать выжидательных позиций». Подводим рабочие итоги Для чего пишутся характеристики? Конечно же, не для формальной «отметки» о человеке. А для того, чтобы, имея на руках пакет сведений, можно было принять то или другое (положительное или отрицательное) ответственное решение. К сожа- лению, сложившаяся практика составления характеристик более затушевывает личность человека, нежели раскрывает ее. Во вояком слу- Сравнение «ручных» и «автоматизированных» характеристик по организационно-экономическим параметрам Параметры *Ручной» метод На ЭВМ Преимущества нового метода Количество людей, состав- ляющих характеристику 1 (2—3) чело- век 7 человек Объектив- ность повы- шается в 2—3 раза Время составления харак- теристики 2—3 ч (со- ставление) 0,4—0,5 ч (обход со словарем) Сокращается в 4—6 раз Время согласования, утвер- ждения, печатания 2—Зч 0,5—1,0 ч Сокращение в 2—3 раза Число описываемых ка- честв 34 Увеличено в 10 раз Число градаций качеств личности 2—3 (интуитивно) Более 180 (по шкалам) Повышается на 2 порядка
40 Обмен опытом чае. эти характеристики сплошь и рядом стано- вятся поводом для различных неформальных акций: звонков с просьбой о дополнительной информации, «очеловечивании» ее и т. д. В При- морскглавснабе уже более двух лет эффективно действует система создания характеристик с помощью ЭВМ. По специально разработанной методике семь экспертов-коллег и руководителей опрашивают по важнейшим качествам оценивае- мого товарища: знание специфики работы, уро- вень экономической подготовки, инициативность и способность взять ответственность на себя и др. После оценки всех 34 показателей по специаль- ным шкалам шестикратной разбивки данные оце- нок деловых качеств и личностных вводятся в ЭВМ, которая распечатывает характеристику. Сравним организационно-экономические параме- тры прежнего «ручного» принципа и нынешнего метода «автоматизированных > характеристик. Данные таблицы достаточно красноречивы, но, по-видимому, более убедительно будет выглядеть комплексная оценка экономической эффективно- сти от внедрения новой системы. Эта оценка была проведена на кафедре общеэкономических дисци- плин Новосибирского филиала ВИПК Госснаба СССР. Стоимость первоначального исследования- разработки можно принять равной 10 тыс. руб., стоимость привязки системы к новым условиям (новые 2—3 словаря, иной машинный язык и др.) равна 5,0 тыс. руб., стоимость для аналогичных условий (а система работает для 90% управлен- цев и ИТР в отраслях) всего 2.0 тыс. руб. Взявший новую методику на вооружение, имеет два вида экономии: прямая — сокращение времени работы над характеристикой (2—3 часа, что равноценно 10 сэкономленным рублям) и косвенная — приня- тие более точных кадровых решений (стоимость ошибок много больше, исчисляется тысячами руб- лей и более). Если даже брать пря- мую выгоду, то купленная система окупает себя при 200 характеристи- ках. а это 0,8—1.0 года предприятия в 300—500 человек. Во всяком слу- чае, при 1000-м размере она, без- условно, окупает себя за год, что вполне приемлемо сегодня. Ну а доработка-привязка системы к новым условиям оправдывает себя экономически при числе работа- ющих 2—3 тыс. и более. В заключение отметим, что если ранее «ручной» метод вызывал тре- ния и замечания по каждой второй- третьей характеристике, то «автома- тизированные» характеристики (а их выдано уже более 500) не вызвали ни одного спора или нарекания. Рабочее примечание. Если есть желание освоить самые начала аттестационного дела, рекомендую совершенно новую книгу Тарасов В. К.. Персонал — технология: отбор и подготовка менеджеров. — Л.' Машиностроение, 1989. — 370 с. Если хотите посмотреть на систему в действии — поезжайте во владивос- токский Приморскглавснаб. Если же хотите получить рабочие методики с дискетами («Роботрон-1715» и «Ро- ботрон-СМ1910», совместимые со всеми персональными компьюте- рами типа PC), напишите по адресу: 630007, Новосибирск-7, а/я 75. Реко- мендуем в комплекте подсистемы «Аттестация руководителей», «Ат- тестация подчиненных», «Портрет коллектива» (выделение нефор- мальных лидеров и совмещение их с формальной структурой), а для партийного аппарата еще и «Полити- ческая ситуация». Пора, давно пора освобождать свое время, свою память, свой ум от дел. с которыми уже вполне справляется параллель- ный нам мир электронных вычисли- тельных машин. Согласны?!
«уьить» 'машинное —вэемя- Это игра, созданная специально для БК-0010-01 ленинградскими студентами Дмитрием Звездиным (ЛИТМО) и Алексеем Рогусским (ЛЭТИ). Здесь так же, как и в игре «Остров сокровищ» (см. ВТ, 1988, № 3), игрока ожидают приключения, опасности, разочарова- ния и ПОБЕДА! Желаем серьезно отдохнуть. ЛАБИРИНТ Описание игры. В игре активно может участвовать один «кладоискатель». Допускается участие соперника, рас- ставляющего (прячущего) клады. Пря- чущий должен расставить на поле 20x20 150 стен, 3 клада, из которых 2 ложных, 3 ямы, арсенал, 2 выхода. Для перехода в этот режим нужно на вопрос: «Сколько вас?» — ответить нажатием на кнопку «2». После этого БК запросит координаты объектов, например «КЛ1?». Ответ — два числа указывающие координаты по X и У, отс- читываемые от верхнего левого угла лабиринта (предполагается, что рису- нок лабиринта у прячущего уже имеет- ся). Истинный клад вводится третьим. Затем на экране появится рамка, обо- значающая границы лабиринта, а в верхнем левом углу курсор. Нажатие на пробел оставляет в текущей позиции «проход», нажатие на любую другую клавишу — «стену». Справа от рамки будет высвечиваться число, обознача- ющее количество стен, которое не должно превышать 150! Все объекты расставлены, и «кладоискатель» может начинать путешествие. Коман- дой к началу поиска может быть чистая рамка лабиринта с точкой в произволь- ном (!) месте. «Кладоискатель» переме- щается на одну позицию с помощью клавиш «Н», «И», «П», «О» вверх, вниз, влево и вправо соответственно. При столкновении со стенкой «кладоиска- телю» возвращаются предыдущие координаты. Но стены — не беда! Их можно взрывать гранатами. Для этого нужно подойти к стене вплотную и нажать клавишу управления в режиме АР2. Так, если вы хотите взорвать стену справа от вас, нажмите клавишу «АР2» и «О». Стены бывают брониро- ванные. Это значит, что для того, чтобы ее пробить, могут понадобиться две гранаты. Всего гранат 25, но есть арсе- нал, попав в который вы можете попол- нить свой боезапас. Задача «кладоис- кателя» найти истинный клад, но есть еще и два ложных. Узнать о том, какой клад он нашел, «кладоискатель» может только после выхода из лаби- ринта. Если вы выбрали режим игры без прячущего, то берегитесь — все объекты расставляются случайным образом, и клады с арсеналом могут быть в стенках, так что «кладоиска- тель» может и не победить. Описание программы. Авторы соз- давали игру не с целью сделать из нее сложный тренажер кладоискателя, а как пример составления игровой про- граммы для пользователей, осваива- ДЕЛО СЕРЬЕЗНО мая* ннм лшв
42 Как «убить» машинное время ющих БЕЙСИК. Некоторые места в про- грамме могут быть совсем нерациональ- ны, но это сделано для лучшего пони- мания начинающими. В строках с номерами 10—140 рас- положены операторы, рисующие заставку к игре. В строке 180 — опера- тор описания двух глобальных масси- вов с координатами объектов. В строке 240 — печать краткой инструкции к игре. В строках 260—290 — опрос и ана- лиз нажатой клавиши на вопрос «Сколько вас?». Строка 280 — печать введенного символа «эхо». В строках 300—410 происходит расстановка объ- ектов случайным образом. В строках 430—710 — ввод координат объектов с клавиатуры. В строке 660 третий пара- метр в описании положения курсора равен нулю — гашение курсора, а в строке 680 код печатаемого символа 191—(277)8. Он получается нажатием на клавишу «ъ» в режиме АР2. 720— 770 — оформление экрана к началу игрового цикла, 780—790 — случайные начальные координаты «кладоискате- ля», 800 — присваивание значения «пу- сто» переменной, отведенной под хра- нение кодов клавиш. 740 — рисуем рамку к заставке, а 820 — рисуем рамку после каждого хода, так как в «пригра- ничных» ходах рамка может быть испорчена, 840 — вывод точки в то место, где был «кладоискатель», про- водятся преобразования координат символьных (64x24) в графические (256x240), 860—900 — проверка направления движения или стрельбы и соответствующие изменения коорди- нат. Символы, которые генерируются при нажатии на клавиши «Н», «И», «Р», «О» в АР2 (стрельба), имеют коды. 920—1200 — вывод шутливых надписей в зависимости от переменной количе- ства ходов. А в 1020—1090 — подпро- грамма в кодах (№ 9/88), помещающая в служебную строку текст. В 1000 — очистка служебной строки (код полу- чается нажатием «АР2» и «.»). 1130 — пример работы функции МИД. 1210— 1380 — проверяем, не попали ли мы на стенку. 1390—1440 — взрываем стенку. 1450—1480 — изменение координат. 1520—1620 — на что же именно мы встали? 1630—1660 — рисуем выход. 1670—1680 — анализ победы. 1690—
Как «убить» машинное время 43 1820 — вывод сообщений. 1700—1730 — звук из пьезодинамика (адрес (177716)8, в десятичном БЕЙСИК-фор- мате — «50»). 1880 — не выпускаем за границу лабиринта. 1890 — подпро- грамма оформления. Назначения и идентификаторы «гло- бальных» переменных: кхд — количество Ходов; пк—признак Клада; гр — количество Гранат; з — код символа; ьк, ык — координаты курсора (переменные — латинский шрифт) 1 REM ПРОГРАММА «ЛАБИРИНТ» 2 REM Авторы: Рогусский, Звездин, Озерков 5 CLS 20 DATA 15, 3, 16, 20, 7, 12, 24, 12, 23, 16, 8, 8, 23, 8, 9,17,12,19, 20,19,19, 4, 11, 4 30 FORT=0TO11 40 READ X, Y 50 ? AT (X, Y) «*» 60 NEXT 70 CIRCLE (90, 128), 20, 1,0, 6, 5, 5, 1,4 80 CIRCLE (128, 70), 20, 1,0, 6, 5, 5, 1,4 90 CIRCLE (166, 118), 13, 1,0, 4, 5, 0,9 100 CIRCLE (166, 140), 13, 1,3, 2, 1, 7, 0,9 110 CIRCLE (128, 128), 20„„1,3 120 PSET (113, 108) 130 DRAW «D80» 140 GOSUB 1890 150 FORG = 0TO6 160 BEEP 170 NEXT 180 DIM XS%(150), KX(9), YS%(150), KY(9) 190 CLS 200 KHD = 0 210 PK=0 220 K=1 230GR = 25 240 ? «- + -*** FACE OF THE WALL ***- + -»,„ «YPRAWLQQ '8’ KLAWICAMI ‘N’, T, ‘P’, ‘O’ (3-1> SOOTWETST- WENNO) NUVNO NAJTI ISTINNYJ KLAD (ES TX EJE 2 LOVNYH) I WYNOD (IH 2). ESTX QMY (Я)1 ARSENAL. КЛАДЫ БЫВАЮТ В СТЕНАХ! CTENY WZRYWAQTSQ W ‘AP2’ . CLEDITE ZA INFORMACIEJ.»,,, 250 ? «СКОЛЬКО BAC[1/2]?» 260QC= INKEY 0 270 IF QQ=»» THEN 260 280? AT (17, 10) QO 290 IF Q 0=«2» THEN 430 300 FORT=1 TO 7 310 KX(T) = INT(20*RND(1)) + 1 320 KY(T) = INT(20*RND(1)) + 1 330 NEXT 340 FORT=1 TO 150 350 XS%(T) = INT(20*RND(1))+1 360 YS%(T) = INT(20*RND(1))+1 370 NEXT 380 KX(8) = 19*INT(2*RND(1))+1 390 KY(8) = INT(20*RND(1)) + 1 400 KX(9) = INT(20*RND(1))+1 410 KY(9) = 19*INT(2*RND(1))+1 420 GOTO 720 430 INPUT «КЛ1»; KX(1), KY(1) 440 INPUT «КЛ2»; KX(2), KY(2) 450 INPUT «КЛЗ»; KX(3), KY(3) 460 INPUT «АРС»; KX(4), KY(4) 470 INPUT «ЯМА1»; KX(5), KY(5) 480 INPUT «ЯМА2»; KX(6), KY(6) 490 INPUT «ЯМАЗ»; KX(7), KY(7) 500 INPUT «ВЫХ1»; KX(8), KY(8) 510 INPUT «ВЫХ2»; KX(9), KY(9) 520 CLS 530 PSET (7,9) 540 DRAW «R161D202L162U202» 550 ? AT(23, 12) «СТЕН» 560 FOR Y=1 TO 20 570 FORX=1 TO 20 580 BEEP 590 LOCATE X, Y, 2 600 ZQ= INKEY Q 610T=RND(1) 620IFZQ=»» THEN 600 630 IF Z {2=» «THEN 700 640 XS%(K) = X 650 YS%(K) = Y 660 LOCATE 27, 12, 0 670 ? AT(27, 12)K 680 ? AT(X, Y)«?» 690K=K + 1 700 NEXT X 710 NEXT Y 720 CLS 730 PSET (7, 9)
44 Как «убить» машинное время 740 DRAW «R161D202L162U202» 750 GOSUB 1890 760 ? АТ (22,2) «GRANAT»; GR 770 ? АТ (22,3) «HODOW»; KHD 780 XK=INT((RND(1))*20) +1 790 YK = INT((RND(1 ))*20) +1 800 Z p/=>>>> 810 PSET (7, 9) 820 DRAW «R161D202L162U202» 830 LOCATE XK, YK, 0 840 PSET (XK*8 + 4, YK*10 + 5), 1 850ZO=INKEYO 860 IFZO=««THEN 850 870 IFZO=«N» ORZO»,« THEN YK = YK— 1 880 IFZ0=«l» ORZO=»)» THEN YK = YK4 890 IFZO=«P» ORZQ=«0>* THEN XK=XK-1 900 IF Z O= «О» OR Z O=«/» THEN XK=XK+1 910 ? AT(XK, YK)«8» 920 IF KHD = 100 THEN ? AT(2, 22) «НЕ НАДО НЕРВНИЧАТЬ» 930 IF KHD = 120 THEN ? AT(2, 22)» 940 IF KHD = 200 THEN ? AT(6, 22) «ТОРОПИСЬ!» 950 IF KHD = 210 THEN ? AT(6. 22)» 960 IF GR = 2 THEN ? AT(22. 4) «ОСТАВЬ «АТ(22,5) «ОДНУ «АТ(22, 6) «ДЛЯ СЕБЯ» 970 IF GR = 0 THEN ? АТ(22,4) «АТ(22,5)» «АТ(22,6)» 980 IF KHD=300 THEN ? АТ(2,22) «КИПЯТИ КОТЕЛОК!» 990 IF KHD = 310 THEN ? АТ(2, 22)»» 1000 IF KHD = 420 THEN? CHR О (&0236) 1010IFKHD? 400 THEN 1100 1020 DATA 2561, 5443, 4930, -27520, -30702, 2689, 32452, 135 1030 FORT=0TO7 1040 READJ 1050 POKE &О400 + 2Я, J 1060 NEXTT 1070 DEF USR0 = &0400 1080 IF KHD = 400 THEN A O= «КОСОГЛАЗИЕ=+/- 100 1090 A O=USR0(AO) 1100 IF KHDX250 THEN 1210 1110QO=>> HE СПИ— 3AMERZNECX!!» 1120 FOR T = 25 TO 0 STEP-1 1130 M Q= MID O(QO, 26-T, T) 1140?AT(2, 22) M 1150IFTX25 THEN 1190 1160 FORG = 0TO100 1170 BEEP 1180 NEXTG 1190 NEXT 1200 ? AT(25, 22) «*» 1210T = 0 1220T=T+1 1230 IF T=151 THEN 1490 1240 IF XS%(T)><XK THEN 1220 1250 IF YS%(T)XYK THEN 1220 1260 ? AT (XK, YK)«?» 1270 IFZQx«N» THEN 1300 1280 YK=YK + 1 1290 GOTO 800 1300 IF Z О ><«1» THEN 1330 1310 YK = YK-1 1320 GOTO 800 1330 IFZ Ox «Р» THEN 1360 1340 XK = XK + 1 1350 GOTO 800 1360 IF Z O><«0» THEN 1390 1370 XK = XK-1 1380 GOTO 800 1390GR = GR-1 1400 ? AT(22, 22) «GRANAT», GR 1410 IF GR<0 THEN 1450 1420 XS%(T) = 0 1430 YS%(T) = 0 1440 ?AT(XK, YK)« » 1450IFZO= «.» THEN 1280 1460 IFZO=«)» THEN 1310 1470 IF Z O=«0 THEN 1340 1480 IF Z O=«/» THEN 1370 1490 Z 0=«» 1500 KHD = KHD + 1 1510 ? AT(22, 3) «HODOW»; KHD 1520 F0RT=1 TO 9 1530 IF (XK = KX(T)) AND (YK=KY(T)) THEN 1560 1540 NEXT 1550 GOTO 1840 1560 IF (T =1) AND (T =3) THEN ?AT(XK, YK)«K» ELSE 1600 1570 FORG = 0 TO 9 1580 BEEP 1590 NEXT 1600 IF ((T=1)0R(T=2))AND(PK>< 1)THEN PK = 2 1610 IF T=3 THEN PK=1 1620 IF (Tx8)AND(T><9) THEN 1670 1630 IF XK= THEN ? AT(0, YK)«1»
Как «убить» машинное время 45 1640 IF ХК-20 THEN ? АТ(21, УК)«>» 1650 IF YK=1 THEN ? АТ(ХК, 0)«3» 1660 IF YK = 20 THEN ? AT(XK, 21)«-» 1670 IF ((T=8) OR(T=9)) AND(PK = 2) THEN ? AT(22, 4) «КЛАД» AT (22,5) «ЛОЖНЫЙ!» 1680 IF ((T=8) OR(T=9)) AND (PK=1) THEN 1690 ELSE 1800 1690 ? AT(22, 10) «ПОБЕДА» 1700 FOR T=0 TO 80000 STEP 100 1710 POKE -50,0 1720 POKE -50,-1 1730 NEXT 1740 IFGR 0 THEN 1760 1750 ? AT (22, 11) «НО ВЫ» AT (22, 12) «ВЗОРВАЛИ» AT (22 13) «КУЧУ» AT (22, 14) «СТЕН!» 1760 FORG = 0TO 29 1770 BEEP 1780 NEXT 1790 GOTO 190 1800 IF T-4 THEN GR-GR+3 1810 ? AT(22, 2) «GRANAT»; GR 1820 IF (T>=5) AND (T<=7) THEN ? AT(XK, YK) «Я» ELSE 1840 1830 GOTO 780 1840 ? AT(XK, YK)« » 1850 IFXK-0THEN 1340 1860 IF XK=21 THEN 1370 1870IFYK=21 THEN 1310 1880 IF YK=0 THEN 1280 ELSE 800 1890 FOR TT-25 TO 29 STEP 4 1900 FORT—19TO21 1910?AT(TT, T)«*» 1920 NEXT 1930 NEXT 1940 FOR T=18 TO 22 STEP 4 1950 FORTT-26 TO 28 1960 ? AT(TT, T) «*» 1970 NEXT 1980 NEXT 1990? AT(27, 19)«C» 2000 ? AT(26, 20)«CPS» 2010 RETURN КОММЕНТАРИИ РЕЦЕНЗЕНТА 1. Программа работает только в режиме 32 символа в строке. 2. Так как координаты элементов стен, ям, кладов арсенала и выходов определяются в слу- чае участия в игре одного игрока с помощью дат- чика случайных чисел, они могут попадать в одно и то же место лабиринта в различных сочетаниях, что может приводить к сокрытию от игрока неко- торых элементов. 3. Нет достаточной задержки на заставке игры. Для введения задержки до нажатия любой клавиши достаточно вставить две строки: 211 QQ= INKEY 212 IF QO= "" THEN 211 4. Вместо количества игроков «1» можно набирать любой символ, отличный от «2». 5. При ручной расстановке элементов лаби- ринта нет страховки на случай ввода 151-го эле- мента стены. Необходимо, чтобы при вводе 150-го элемента стены сразу осуществлялся переход непосредственно на игру. Это достигается, напри- мер, вставкой оператора 725 IF К= 151 THEN 750 6. В случае ввода менее 150 элементов стен могут возникать непредвиденные ошибки из-за наличия неприсвоенных значений элементов мас- сивов XS%, YS%. 7. Программу можнр существенно улучшить по времени реакции на действия игрока и по объему занимаемой памяти. Это особенно необходимо для игр, а этой игре несколько недостает дина- мичности. Качество игровой программы не хуже качества программ, опубликованных в книге «Персональ- ный компьютер в играх и задачах» (М.: Наука, 1988). Программа игры достаточно хорошо пока- зывает основные возможности языка БЕЙСИК БК-0010.01. Л. Н. Жариков
СООБЩЕНИЯ © РЕКЛАМА # СЛИВКИ МОЛОДЕЖНЫЙ ЦЕНТР НАУЧНО-ТЕХНИЧЕСКОГО ТВОРЧЕСТВА ''АПОГЕИ'-ЦНТТМ Несмотря на молодость, за полтора года существования финансовый обо- рот ЦНТТМ составляет 15 миллионов рублей! Такой феноменальный начальный ус- пех достигнут за счет использования в научно-технических разработках цент- ра последних достижений мирового и отечественного опыта в различных областях науки и техники. К работе в ЦНТТМ "Апогей" привлекаются на договорных началах высококвалифи- цированные специалисты, а также ав- торы изобретений и открытий, что обеспечивает высокий научно-техни- ческий уровень разработок заказчика. Сфера интересов центра "Апогей" простирается от пневматических авто- матизированных линий по фасовке сыпучих и жидких материалов и про- дуктов, специальной электронной ап- паратуры с элементами и узлами оп- тоэлектроники до выпуска специали- зированных вычислительных комплек- сов и ПЭВМ последних поколений, предназначенных для автоматизации технологических процессов и САПР. КАЧЕСТВО И НАДЕЖНОСТЬ - ОС- НОВНОЕ СВОЙСТВО ИЗДЕЛИЙ, ВЫ- ПУСКАЕМЫХ ЦНТТМ "АПОГЕЙ" НА БАЗЕ ОТЕЧЕСТВЕННЫХ И ИМПОРТ- НЫХ КОМПЛЕКТУЮЩИХ ИЗДЕЛИЙ. В области микропроцессорных средств вычислительной техники ЦНТТМ "Апогей" впервые в СССР разработал ПЭВМ "ГЕЛЬ", которая имеет в своем составе практически все выпускаемые интерфейсные БИС МПК КР580, что позволяет эффектив- но решать любые задачи по автома- тизации технологических и производ- ственных процессов, а также научных исследований и экспериментов. Активное сотрудничество центра с отечественными и зарубежными пар- тнерами - производителями МСВТ по- следних поколений дает возможность обеспечивать своих заказчиков таким периферийным оборудованием, как цветные мониторы, принтеры, моде- мы, манипуляторы типа "Джойстик" и "Мышь", датчики и исполнительные устройства различных типов и т.д. ОБСЛУЖИВАНИЕ, РЕМОНТ И ПО- СТАВКА ЗАПЧАСТЕЙ ГАРАНТИРУ- ЮТСЯ! ВЫЧИСЛИТЕЛЬНЫЙ КОМПЛЕКС "ГЕЛЬ" Технические характеристики: - процессор К580ВМ80А (Intel 8080); - быстродействие 625000 оп/с типа регистр-регистр; е мкость ОЗУ пользователя 64 Кбайт; - емкость ПЗУ 24 Кбайт с возможно- стью расширения до 96 Кбайт; - емкость графического ОЗУ 192 Кбайт; - графическое изображение в фор- мате 512x256 точек; - количество цветов и градаций ярко- сти 8.
Сообщения, реклама, справки 47 Внешние интерфейсы: 1. Локальная сеть двухпроводная линия связи, обслуживающая до 15 абонентов со скоростью передачи 19,2 Кбит/с. 2. Последовательные интерфей- сы - ИРПС токовая петля 20 мА с опт- ронной развязкой; - стык С2 (У-24) со скоростью пере- дачи 19,2 Кбит/с. 3. Параллельный интерфейс ИРПР - три восьмиразрядных порта. 4. Таймер. Базовое программное обеспече- ние: - операционная система Mikro-DOS и СР/М; - транслятор языка БЕЙСИК MSX и те- стово-диагностические программы в ПЗУ. Прикладное программное обеспе- чение: - адаптированные версии программы cTBASE II, SUPERCALC и др; - графические и текстовые редакто- ры; - игровые программы; - предусмотрена возможность рас- ширения программного обеспечения за счет языков БЕЙСИК, СИ, ФОРТ, ФОРТРАН, ПАСКАЛЬ, АДА и др. Поставляемое оборудование: - персональный компьютер "Гель"; - блок питания; - монитор монохромный; - монитор цветной типа МС 6106.02 (CGA); - накопитель на гибких магнитных ди- сках; - кассетный накопитель на магнитной ленте; - принтер типа Epson; - комплект соединительных кабелей; - базовое программное обеспечение; - комплект эксплуатационной доку- ментации; - комплект ЗИП; - графопостроитель; - программатор ИМС; - манипуляторы типа "Джойстик" и "Мышь"; - световое перо; - дискеты (360К, 1МБ). КОМПЛЕКТ ПОСТАВКИ СОСТАВЛЯ- ЕТСЯ ПО ЖЕЛАНИЮ ЗАКАЗЧИКА! Область применения: - разработка и отладка прикладного и системного программного обеспече- ния; - решение инженерно-расчетных за- дач; - постррение информационно-спра- вочных систем; - построение автоматизированных си- стем; - автоматизированные обучающие си- стемы и тренажеры. Поставщик - Центр научно-техниче- ского творчества "Апогей". МАКСИМУМ ЭФФЕКТА, МИНИМУМ ВРЕМЕНИ И ЗАТРАТ ДЛЯ НАШИХ ЗАКАЗЧИКОВ - ЭТО ЦЕЛЬ ЦЕНТРА НТТМ "АПОГЕЙ" Наш адрес: 115230, Москва, Каширское шос- се, дом 8, кор- пус 4. Телефоны: 113-06-16, 113-08-19.
П26 Периферийные устройства ЭВМ. — М.. Знание, 1990. — 48 с. — (Новое в жизни, науке, технике. Сер. «Вычислительная техника и ее применение»; № 3). ISBN 5-07-000531 20 к. В брошюре рассказано о некоторых периферийных устройствах ПЭВМ «Ямаха MSH». Материал рассчитан на широкий круг читателей, интересующихся проблемами вычисли- тельной техники. 2 404 000 000 ББК32.973 1 л А следующего 1 JC/IVIAhomepa: РАДИО- ЭЛЕКТРОНИКА И СВЯЗЬ Системы и устройства штрихового кодирования L ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА И ЕЁ ПРИМЕНЕНИЕ Язык программных вычислений МАТЕМАТИКА имии Диагностика управляющих систем Научно-популярное издание ПЕРИФЕРИЙНЫЕ УСТРОЙСТВА ЭВМ Гл. отраслевой редактор Л. А. Ерлыкин Зам. гл. отраслевого редактора Г. Г. Карвовский Редактор Б. М. Васильев Мл. редактор Н. А. Васильева Художники В. Н. Конюхов и К. Н. Мошкин Худож. редактор М. А. Гусева Техн, редактор А. М. Красавина Корректор В И. Гуляева ИБ№ 10716 Сдано в набор 27.11.89. Подписано к печати 17.01.90. Т-05711. Формат бумаги 70х100’/1в. Бумага офсетная № 2. Гарнитура гельветика. Печать офсетная. Усл. печ. л. 3,90. Усл. кр.- отт. 8,45. Уч.-изд. л. 4,41. Тираж 70 117экз. Заказ 759. Цена 20 коп. Издательство «Знание». 101835, ГСП, Москва, Центр, проезд Серова, д. 4. Индекс заказа 904703. Ордена Трудового Красного Знамени Калининский полиграфический комбинат Государственного комитета СССР по печати. 170024, г. Калинин, пр. Ленина, 5.
Цена 20 коп. Индекс 70195 Адрес подписчика^ Подписная научно- популярная серия ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА И ЕЁ ПРИМЕНЕНИЕ Сфера применения может быть столь же революционизирующей, как и средство. Э. Дейкстра Если бы мне пришлось выбирать в анналах истории наук святого — покро- вителя кибернетики, то я выбрал бы Лейбница. Н. Виннер Наш адрес: СССР, Москва, Центр, проезд Серова, 4