Язык программирования Форт



         

Глава 5. Ввод и вывод - часть 4


Печатающее устройство также, как правило, управляется Esc-последовательностями, например последовательность кодов (27,28) дает принтеру Centronics 739 команду продвинуть бумагу на полстроки вперед; (27,30) - на полстроки назад, а последовательность кодов (27,47,48) переводит устройство в режим, при котором следующие байты воспринимаются не как символы, а как графические команды. Ради чего мы приводим здесь это описание терминалов? Только ради того, чтобы принести извинения за отсутствие подробных объяснений, как управлять терминалом вашего компьютера или принтером. Вам нужно практически проверить, как реагирует на Esc-последовательности оборудование вашей ЭВМ. Мы расскажем здесь, как организовать посылку символов из Форта, а вы сами посмотрите, что они делают на вашем дисплее или принтере.

Вывод символов

В конце гл. 3 вы уже видели, что самое необходимое слово для вывода символов - EMIT, которое посылает на экран дисплея символ, соответствующий числу, которое хранится в стеке.' Попробуйте посмотреть, что делают различные управляющие коды, экспериментируя со словом EMIT. Например, если вы введете 48 EMIT 49 EMIT 10 EMIT 50 EMIT то скорее всего увидите 01 на одной строке и 2 - на следующей. Почему? Потому, что 48, 49 и 50 представляют собой соответственно ASCII-коды цифр 0, 1 и 2, а 10 - перевод строки, который при интерпретации обычно сопровождается возвратом каретки. Если вы напечатаете 48 EMIT 49 EMIT 8 EMIT 50 EMIT то увидите 02. Цифра 1 была стерта, так как код 8 представляет команду перемещения курсора на позицию влево, или стирания влево (Backspace). Испробуйте другие управляющие коды, чтобы установить их действие на вашем оборудовании, при этом могут возникнуть некоторые сюрпризы, например в MMSFORTH на машине IBM PC или на TRS-80 команда 27 EMIT приводит к обратной подаче строки, в то время как 12 EMIT очищает экран и возвращает курсор "домой" (т.е. в левый верхний угол экрана). Вы можете также попробовать коды ASCII от 128 и более, которые не являются стандартными и могут выводить странные символы и необычные буквы или продемонстрируют, что будет на экране, если из кода ASCII вычесть 127, т.е.


Содержание  Назад  Вперед