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



         

Глава 6. Хранение чисел в памяти - часть 20


Вы пишете программу на языке Форт для обработки текста. После того как программа написана, вы решаете добавить возможность работы оператора с клавиатуры Дворака вместо стандартной клавиатуры QWERTY (стандарт IBM). Клавиатура Дворака показана на рис. 6.1.

{ & % # ! ( ) @ $ ^ * + [ 7 5 3 1 9 0 2 4 6 8 = " < > P Y F G C R L ? } , ' . / ] A O E U I D H T N S - ~

| : Q J K X B M W V Z \ ;

Рис.6.1 ( см. файл ris6_1.bmp )

а) напишите таблицу перекодировки, которая преобразует символы клавиатуры QWERTY в символы клавиатуры Дворака, т.е. если. например, нажата клавиша К. то в стек должна посылаться литера Т; б) переделайте слово KEY в DKEY, которое должно не просто принимать символ с клавиатуры и выдавать в стек его код: DKEY должно воспринимать входной код как символ клавиатуры Дворака, находить его код в таблице и помещать его в стек. Новое определение должно иметь примерно следующий вид: : DKEY KEY (Слова, с помощью которых производится просмотр); В каком месте вашей программы будет использоваться новое определение DKEY? 8. Теперь вы решили ввести возможность работы оператора по выбору с клавиатуры Дворака или QWERTY. В начале программы нужно ввести меню Введите 1 для клавиатуры Дворака Введите 2 для клавиатуры QWERTY и в зависимости от того, какое число введено: 1 или 2 в переменную ?KBD, должен быть записан адрес, которым определяется тип используемой клавиатуры. Определите теперь слово NEWKEY таким образом, чтобы при вводе 2 оно действовало бы так же, как и KEY, а если была введена 1, то производила бы просмотр таблицы и изменение значения кода как требуется.

Если эти упражнения показались вам трудными, не падайте духом! Они являются примером достаточно высокого уровня программирования. Они также продемонстрировали вам, как можно делать то, что почти недоступно другим языкам программирования. Вам следует внимательно разобраться в этих упражнениях и поэкспериментировать с применением аналогичных приемов, чтобы хорошо прочувствовать возможности векторного исполнения и поисковых таблиц, когда они вам потребуются.




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