FALSE

Материал из ПМК вики
Перейти к навигации Перейти к поиску
Версия для печати больше не поддерживается и может содержать ошибки обработки. Обновите закладки браузера и используйте вместо этого функцию печати браузера по умолчанию.

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

Ссылки