Редактирование: EKEY

Перейти к навигации Перейти к поиску
Внимание: Вы не вошли в систему. Ваш IP-адрес будет общедоступен, если вы запишете какие-либо изменения. Если вы войдёте или создадите учётную запись, её имя будет использоваться вместо IP-адреса, наряду с другими преимуществами.

Правка может быть отменена. Пожалуйста, просмотрите сравнение версий ниже, чтобы убедиться, что это нужная вам правка, и запишите страницу ниже, чтобы отменить правку.

Текущая версия Ваш текст
Строка 1: Строка 1:
'''EKEY''' (и-клавиша) — стандартное слово [[Каллисто]]. Ожидание нажатия клавиши.
'''EKEY''' (и-клавиша) — стандартное слово [[Каллисто]]. Ожидание нажатия клавиши.
EKEY          ( −− c )                            Ожидание нажатия клавиши и получение её кода.
Слово EKEY ожидает нажатия [[Код клавиши|клавиши]] на [[Клавиатура|клавиатуре]], после нажатия кладёт [[Код клавиши|её код]] (число от 0 до 37) на [[Стек данных|стек]]. Обращения к [[индикатор]]у не происходит, курсор не выводится.


Чтобы узнать, какая [[Код клавиши|клавиша]] нажата, не останавливая приложение, используйте слово [[INKEY]]. Для ввода не [[Код клавиши|клавиши]], а [[Знакогенератор|литеры]] служит слово [[KEY]].
Ожидает нажатие [[Код клавиши|клавиши]] на [[Клавиатура|клавиатуре]], после нажатия посылает [[Код клавиши|её код]] в [[Стек данных|стек]].
 
Если вам нужно вводить не клавиши, а [[Знакогенератор|символы]], используйте слово [[KEY]]. Слово [[INKEY]] позволяет узнать, какая клавиша нажата, не останавливая программу.


== Ввод слова EKEY ==
== Ввод слова EKEY ==
Строка 9: Строка 9:


== EKEY в стандарте ANS Forth ==
== EKEY в стандарте ANS Forth ==
<PRE>
  10.6.2.1305  EKEY                            "e-key"              FACILITY EXT
  10.6.2.1305  EKEY                            "e-key"              FACILITY EXT
             ( -- u )
             ( -- u )
Строка 174: Строка 173:
  чтения клавиатуры. Она не может быть "переадресована" к другому источнику  
  чтения клавиатуры. Она не может быть "переадресована" к другому источнику  
  "стандартного ввода", как может функция DOS Ввод STDIN.
  "стандартного ввода", как может функция DOS Ввод STDIN.
</PRE>


== Реализация ==
<pre>
1187 ;#EKEY
1188 ; EKEY            ( −− c )                            Подождать нажатия клавиши и получить её код.
1189 LEKEY:          .DB    4
1190                .TEXT  "EKEY"
1191                .DW    LKEY
1192 EKEY:          .DW    JEKEY
1193 JEKEY:          KM3                            ; Чтение клавиатуры МК−161 −− клавиш, а не литер.
1194 EKEYL:          PPRM 9029
1195                PKM03
1196                KNOT  FX!=0 EKEYL
1197                KGOTO9
</pre>


== Ссылки ==
== Ссылки ==
* {{Исходник|EKEY|EKEY}}
* См. слова [[INKEY]], [[KEY]]
* См. слова [[INKEY]], [[KEY]]
* Слово [http://forth.sourceforge.net/standard/dpans/dpans10.htm#10.6.2.1305 EKEY (e-key)] и [http://forth.sourceforge.net/standard/dpans/dpansa10.htm#A.10.6.2.1305 комментарий к нему] в стандарте ANS Forth ''(англ.)''
* Слово [http://forth.sourceforge.net/standard/dpans/dpans10.htm#10.6.2.1305 EKEY (e-key)] и [http://forth.sourceforge.net/standard/dpans/dpansa10.htm#A.10.6.2.1305 комментарий к нему] в стандарте ANS Forth ''(англ.)''
* Слово [http://forth-standard.org/standard/facility/EKEY EKEY (e-key)] и [http://forth-standard.org/standard/rationale#rat:facility:EKEY комментарий к нему] в черновике Forth 200x ''(англ.)''
* Слово [http://www.forth200x.org/documents/html3/facility/EKEY.html EKEY (e-key)] и [http://www.forth200x.org/documents/html3/rationale.html#rat:facility:EKEY комментарий к нему] в черновике Forth 200x ''(англ.)''




Строка 201: Строка 184:
{{заготовка}}
{{заготовка}}
[[Категория:Слова Каллисто]]
[[Категория:Слова Каллисто]]
[[Категория:Примитивы]]
[[Категория:Терминальный ввод/вывод Каллисто]]
[[Категория:Терминальный ввод/вывод Каллисто]]
[[Категория:Системные слова]]
[[Категория:Слова Каллисто без стековых диаграмм]]
[[Категория:Стандартные слова]]
[[Категория:1994 FACILITY EXT]]
[[Категория:2012 FACILITY EXT]]
Пожалуйста, учтите, что любой ваш вклад в проект «ПМК вики» может быть отредактирован или удалён другими участниками. Если вы не хотите, чтобы кто-либо изменял ваши тексты, не помещайте их сюда.
Вы также подтверждаете, что являетесь автором вносимых дополнений, или скопировали их из источника, допускающего свободное распространение и изменение своего содержимого (см. Pmkwiki:Авторские права). НЕ РАЗМЕЩАЙТЕ БЕЗ РАЗРЕШЕНИЯ ОХРАНЯЕМЫЕ АВТОРСКИМ ПРАВОМ МАТЕРИАЛЫ!

В целях защиты вики от автоматического спама в правках просим вас решить следующую каптчу:

Отменить Справка по редактированию (в новом окне)
Источник — https://pmk.the-hacker.ru/EKEY