Echo
#03
31 марта 1997 |
|
Книга - Тайники ZX-Spectrum: Редактор.
Глава 2. Р Е Д А К Т О Р Редактор (EDITOR) - это заключенная в ПЗУ программа, способствующая взаимодейст- вию человека с компьютером: вводу данных, их модификации и корректировке. Все, что мы набираем на клавиатуре, обычно появ- ляется в нижней части экрана. Любой текст в этой области можно модифицировать или редактировать. Клавиши <CS/5> и <CS/8> (стрелки влево и вправо в ZX-SPECTRUM+) позволяют передвигать курсор вдоль редак- тируемой строки без стирания информации. Для стирания символов служит клавиша <CS/0> (<DELETE> в ZX-SPECTRUM+). Стирает- ся знак, расположенный непосредственно пе- ред курсором, при этом ключевые слова Бей- сика трактуются как отдельные знаки. Во время набора программы или оператив- ных директив редактор во многих случаях (после ввода ключевого слова, ":", THEN и т. п.) сам изменяет режим ввода (между K, L, C), оберегая пользователя от случайных ошибок. Но если такую ошибку надо сделать специально, то можно его "обмануть", вставляя, к примеру ":" для получения ре- жима K, а затем удаляя его. Такой обман, конечно, не избавляет от последующих неп- риятностей со вводом ошибочной строки в программу. Конец редактирования, ввода строки ко- манд или очередной программной строки сиг- нализируется клавишей <ENTER>. Компьютер молниеносно проверяет синтаксис (т. е. правильность употребления элементов языка Бейсик). В случае необходимости, в непо- нятном ему месте появляется мигающий знак вопроса. Он может появляться значительно дальше, чем ошибка, например, при отсутст- вии одной из замыкающих скобок. В сложном выражении SPECTRUM не в состоянии опреде- лить место, куда надо было его вставить и подаст сигнал об ошибке только в конце вы- ражения. Но восприятие строки компьютером не га- рантирует ни правильности ее логики, ни согласия с желаниями автора. Нет возможности принудить компьютер к запоминанию ошибочной (в смысле синтаксиса Бейсика, а не логики программы) последова- тельности команд. Между прочим, это озна- чает, что без присоединения ZX ИНТЕРФЕЙ- СА-1 невозможно даже подготовить управляю- щую программу для обмена с памятью типа MICRODRIVE, так как нельзя даже ввести потребных для этого специфических команд. Если в корректируемом месте размещены контрольные символы, перемещаемый курсор ведет себя иногда странно и необычно (ис- чезает, отступает). Не стоит из-за этого расстраиваться. В процессе удаления таких знаков могут появиться вопросительные зна- ки, которые необходимо убирать отдельно - эти контрольные символы обычно занимают в памяти 2 байта и SPECTRUM, вынужденный высвечивать знак с кодом меньшим 32, выво- дит в его месте вопросительный знак, если не сможет интерпретировать его иначе. Чтобы исправить уже введенную в память строку программы, необходимо ее вначале скопировать в нижнюю часть экрана. С этой целью перемещаем указатель текущей строки ( > ) вверх или вниз клавишами <CS/6> и <CS7> (в ZX-SPECTRUM+ - стрелки вверх и вниз). При более длинных программах быст- рее пользоваться инструкцией LIST n. Можно вводить число немного меньшее, чем номер нужной строки, если Вы уверенны, что в программе нет строки с таким номером, что- бы случайно не затереть нужную строку. После нажатия <ENTER> указатель будет ус- тановлен на первой строке с номером больше заданного. Либо на последней, если задан- ной нет в программе. Указатель ">", после такого предприятия, может быть временно невидимым, но после нажатия <CS1> ( <EDIT> в ZX-SPECTRUM+) желаемая строка бу- дет скопированна в рабочее поле редакто- ра. Нажатие одной <ENTER>, при пустой ниж- ней части экрана, приводит к высвечиванию фрагмента программы, включающего текущую строку (указываемую указателем ">"). Од- нократно можно ввести оператор любой дли- ны. Поначалу нижняя часть экрана будет ав- томатически расширятся, но постепенно компьютер будет реагировать все медленней, сигнализируя растущее неудовольствие действиям человека. После запоминания 22 строк протест компьютера станет значитель- но резче. Он перестанет высвечивать после- дующие символы, вводимые с клавиатуры и на каждое нажатие клавиши отреагирует неп- риятным ворчанием. Но, несмотря на это, он и далее примет и запомнит все, что Вы на- берете. Его сопротивление можно смягчить, модифицируя соответствующие системные пе- ременные. Клавиша <CS1> (<EDIT>) позво- ляет также одноразовое удаление всей ниж- ней части экрана.
Другие статьи номера:
Похожие статьи:
В этот день... 3 декабря