FALSE

Материал из ПМК вики
Версия от 17:17, 10 ноября 2017; AtH (обсуждение | вклад) (→‎Реализация)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)
Перейти к навигации Перейти к поиску

FALSE (ложь) — стандартная константа Каллисто. Флаг «ложь».

FALSE          ( -- 0 )                        Ложь. Число 0.
Пример работы слова FALSE

Примитив FALSE кладёт на стек число 0. Этим значением в Каллисто кодируется флаг «ложь», например когда проверяемое условие не выполняется.

Ввод слова FALSE[править]

В режиме ЛАТ нажмите клавиши  П   ШГ←      1   ИП 

FALSE в стандарте ANS Forth[править]

 6.2.1485   FALSE                                                       CORE EXT
            ( -- false )
            Возвращает флаг false.

        См.: 3.1.3.1 Флаги

История[править]

Каллисто и Форт едины в том, что логическое значение ложь кодируется нулём. Это значение для лжи прослеживается в Форте с самого начала, а в 1994 году слово FALSE вошло в стандарт Форта.

Кодировка лжи, как нуля, общепринята. Она используется и во многих других языках программирования, включая Си и Бейсик.

Значение FALSE в Форте-83[править]

         false
              A zero number represents the false state of a flag.

Значение FALSE в Форте-79[править]

false

     A zero number represents the false condition flag.

Реализация[править]

Слово FALSE названо константой по его действию. В Каллисто оно не имеет отношения к порождающему слову CONSTANT и является примитивом.

Слово FALSE занимает меньше места в шитом коде, компилируется и исполняется быстрее, чем литерал 0. Поэтому его удобно использовать вместо числа 0.

2644 ;               ∗∗ Константы ∗∗
2645 ;
2646 ;#FALSE
2647 ; FALSE            ( −− 0 )                             Ложь. Число 0.
2648 LZERO:          .DB     5
2649                 .TEXT   "FALSE"
2650                 .DW     LDIGF
2651 ZERO:           .DW     JZERO
…
4048 JZERO:          0 KM3  KGOTO9                   ; Обработчик FALSE

Реализация из SP-Forth 4.20:

0 CONSTANT FALSE ( -- false ) \ 94 CORE EXT
\ Вернуть флаг "ложь".

Советская реализация[править]

Описание и определение константы 0 в ядре ФОРТ-ЕС:

0       *  ->0 КОНСТАНТА НУЛЬ (ЗНАЧЕНИЕ "ЛОЖЬ")                7

                      Экран номер 7
( 09.09.86 КОНСТАНТЫ И СИСТЕМНЫЕ ПЕРЕМЕННЫЕ      )

0     CONSTANT 0       ( ЧИСЛО НОЛЬ)

Определение константы 0 в FORTH ИТЭФ:

   ;        ** Константы **

            HEAD     201Q,,260Q,ZERO,$CON                 ; 0
            DW 0

Ссылки[править]