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

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

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

Текущая версия Ваш текст
Строка 1: Строка 1:
'''INDEX''' (индекс, указатель; оглавление, содержание) — фортовское слово [[Каллисто]].
INDEX          ( c1 c2 −− )                        Вывести начальную строку экранов с номерами от c1 до c2.
[[Файл:CallistoIndexLoad.png|thumb|right|264px|Пример работы слова INDEX]]
[[Файл:CallistoIndexLoad.png|thumb|right|264px|Пример работы слова INDEX]]
Выводит на [[индикатор]] верхние строчки [[экран]]ов, номера [[блок]]ов которых входят в диапазон от нач до кон. Для экономии места на [[индикатор]]е после номера [[экран]]а [[пробел]]а нет.
'''INDEX''' (индекс, указатель; оглавление, содержание) — стандартное слово [[Каллисто]].
 
Выводит на [[индикатор]] верхние строчки [[экран]]ов, номера [[блок]]ов которых входят в диапазон от нач до кон.


== Ввод слова INDEX ==
== Ввод слова INDEX ==
В [[Режим ЛАТ|режиме ЛАТ]] последовательно нажмите клавиши [[Клавиша 7|{{Серая клавиша|7}}]] [[Клавиша 4|{{Серая клавиша|4}}]] [[Клавиша K|{{Синяя клавиша|K}}]] [[Клавиша ИП|{{Чёрная клавиша|ИП}}]] [[Клавиша 0|{{Серая клавиша|0}}]]
В [[Режим ЛАТ|режиме ЛАТ]] последовательно нажмите клавиши [[Клавиша 7|{{Серая клавиша|7}}]] [[Клавиша 4|{{Серая клавиша|4}}]] [[Клавиша K|{{Синяя клавиша|K}}]] [[Клавиша ИП|{{Чёрная клавиша|ИП}}]] [[Клавиша 0|{{Серая клавиша|0}}]]


== История ==
== INDEX в предыдущем стандарте Forth-83 (англ.) ==
Слово INDEX переходило из стандарта в стандарт в неизменном виде, но было исключено из них в 1994 году. Оно полезно в любой системе, имеющей поддержку [[блок]]ов.
 
=== INDEX в предыдущем стандарте Forth-83 (англ.) ===
       INDEX        u1 u2 --                      M
       INDEX        u1 u2 --                      M
           Print the first line of each screen over the range {u1..u2}.
           Print the first line of each screen over the range {u1..u2}.
Строка 16: Строка 13:
           which conventionally contains a title.
           which conventionally contains a title.


=== INDEX в стандарте Forth-79 (англ.) ===
== INDEX в стандарте Forth-79 (англ.) ==
  INDEX          n1 n2 --
  INDEX          n1 n2 --
     Print  the first line of each screen over the range  {n1..n2}.
     Print  the first line of each screen over the range  {n1..n2}.
Строка 22: Строка 19:
     which conventionally contains a title.
     which conventionally contains a title.


=== INDEX в fig-FORTH Release 1 glossary, май 1979 (англ.) ===
== INDEX в fig-FORTH Release 1 glossary, май 1979 (англ.) ==
  INDEX          from to --
  INDEX          from to --
         Print the first line of each screen over the range from, to. This is
         Print the first line of each screen over the range from, to. This is
         used to view the comment lines of an area of text on disc screens.
         used to view the comment lines of an area of text on disc screens.


== Реализация ==
== Реализация INDEX ==
<pre>
Юрий Семёнов приводит следующее описание слова INDEX (стр. 105):
3876 ;#INDEX
3877 ; INDEX            ( c1 c2 −− )                        Вывести начальную строку экранов с номерами от c1 до c2.
3878 ; Вывести на индикатор верхние строчки экранов, номера блоков которых входят в диапазон от нач до кон.
3879 ; Для экономии места на индикаторе после номера экрана пробела нет.
3880 LINDEX:        .DB    5
3881                .TEXT  "INDEX"                ; ( нач кон −− )
3882                .DW    USLIST
3883 INDEX:          .DW CALL, OVER,SUB,ONEP, XFOR,INDX2
3884 INDX:          .DW CR, DUP, LITB
3885                .DB 3
3886                .DW DOTR, QBREAK, ZERO, OVER, DLINE, TYPE1
3887                .DW ONEP, XNEXT,INDX
3888 INDX2:          .DW DROP, EXIT
</pre>
 
=== Советская реализация ===
Юрий Семёнов приводит следующее определение слова INDEX (стр. 105):
   : INDEX  1+ OVER - FOR ↵ ↑ 3 I.R SPACE 0  ( указание на нулевую
   : INDEX  1+ OVER - FOR ↵ ↑ 3 I.R SPACE 0  ( указание на нулевую
                                           строку)
                                           строку)
             OVER (LINE) TYPE NEXT DROP ; ( м. табл. 20 )
             OVER (LINE) TYPE NEXT DROP ; ( м. табл. 20 )
Опубликовано лишь следующее описание слова INDEX из ФОРТ-ЕС. Оно ссылается на определение, отсутствующее на экране № 46:
<PRE>
INDEX  + N1,N2-> РАСПЕЧАТАТЬ НАЧАЛЬНУЮ СТРОКУ ЭКРАНОВ          46
          С НОМЕРАМИ ОТ N1 ДО N2
</PRE>
Определение слова INDEX в FORTH ИТЭФ:
<PRE>
            HEAD    205Q,'INDE',330Q,INDEX,$COL          ; INDEX
            DW  ONEP,SWAP,XDO
  INDX:    DW  CR,I,THREE,DOTR,SPACE,ZERO,I,DLINE
            DW  XLOOP,INDX-$,SEMI
</PRE>


== Ссылки ==
== Ссылки ==
* {{Исходник|INDEX|INDEX}}
* См. слово [[LIST]]
* [http://gudleifr.h1.ru/cgi-bin/pilo.cgi?FL=../g9.txt&IS=\6.PERWOISTOTNIKI\LEO%20BRODIE%20STARTING%20FORTH\03.%20KAK%20RABOTATJ%20NA%20FORTE КАК РАБОТАТЬ НА ФОРТЕ] в книге [http://gudleifr.h1.ru/cgi-bin/pilo.cgi?FL=../g9.txt&IS=\6.PERWOISTOTNIKI\LEO%20BRODIE%20STARTING%20FORTH Л.Броуди «Начальный курс программирования на языке Форт»]
* [http://gudleifr.h1.ru/cgi-bin/pilo.cgi?FL=../g9.txt&IS=\6.PERWOISTOTNIKI\LEO%20BRODIE%20STARTING%20FORTH\03.%20KAK%20RABOTATJ%20NA%20FORTE КАК РАБОТАТЬ НА ФОРТЕ] в книге [http://gudleifr.h1.ru/cgi-bin/pilo.cgi?FL=../g9.txt&IS=\6.PERWOISTOTNIKI\LEO%20BRODIE%20STARTING%20FORTH Л.Броуди «Начальный курс программирования на языке Форт»]


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

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

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