1−: различия между версиями

Материал из ПМК вики
Перейти к навигации Перейти к поиску
(Новая страница: «'''1-''' — стандартное слово Каллисто. {{нет иллюстраций}} {{заготовка}} Категория:Слова К…»)
 
 
(не показано 39 промежуточных версий этого же участника)
Строка 1: Строка 1:
'''1-''' — стандартное слово [[Каллисто]].
'''1−''' (уменьшить, единицу вычесть, читается «один-минус») — стандартное слово [[Каллисто]]. Вычитание 1.
1−            ( x -- x1 )                    Уменьшить. x1 ← x − 1
[[Файл:CallistoOneM.png|thumb|right|264px|Пример работы слова 1−]]
Слово 1− вычитает [[Слово 1|1]] из числа, находящегося на вершине [[Стек данных|стека]].
 
== Ввод слова 1− ==
В [[Режим NUM|режиме NUM]] последовательно нажмите две белые клавиши [[Клавиша 1|{{Серая клавиша|1}}]] [[Клавиша -|{{Серая клавиша|−}}]]
 
== 1− в стандарте ANS Forth ==
6.1.0300  1-                              "one-minus"                    CORE
            ( n1|u1 -- n2|u2 )
            Вычитает один (1) из n1|u1, возвращает разницу n2|u2.
 
== История ==
Первое зафиксированное упоминание слова 1− относится к 1979 году.
 
Каллистянское слово 1− способно уменьшать на 1 не только целые, но и числа с плавающей запятой.
 
=== 1− в предыдущем стандарте Forth-83 (англ.) ===
      1-          w1 -- w2                      79        "one-minus"
          w2 is the result of subtracting one from w1 according to the
          operation of - .
 
=== 1− в стандарте Forth-79 (англ.) ===
1-            n -- n-1                      105        "one-minus"
    Decrement n by one, according to the operation of - .
 
== Реализация ==
<pre>
1287 NONEP:          PKRM03 + PKM03  KGOTO9
1288 JONEM:          1 +/−  GOTO NONEP
1299 ;#OneMinus
1300 ; 1−              ( x −− x1 )                          Уменьшить. x1 := x−1
1301 LONEM:          .DB    2
1302                .TEXT  "1−"                    ; ( x −− x−1 )
1303                .DW    LGBODY
1304 ONEM:          .DW    JONEM                  ; Вычитание 1.
</pre>
Реализация из SP-Forth 4.20:
<pre>
CODE 1- ( n1|u1 -- n2|u2 ) \ 94
\ Вычесть 1 из n1|u1 и получить разность n2|u2.
    LEA EAX, -1 [EAX]
    RET
END-CODE
</pre>
 
=== Советская реализация ===
Описание и определение слова 1− в ядре ФОРТ-ЕС:
<PRE>
1-          W1->W2 УМЕНЫШИТЬ W1 НА 1                          17
 
                    Экран номер 17
( 31.03.86  NEGATE ABS + - 1+ 1- 2+ 2- +!  1+!  )
 
: 1- ( W1->W2) -1 + ;
</PRE>
В FORTH ИТЭФ слово 1− было [[примитив]]ом, вот его определение:
<PRE>
            HEAD    202Q,'1',255Q,ONEM                  ; 1-
            POP  AX
            DEC  AX
            PUSH  AX
            NEXT
</PRE>
 
== Ссылки ==
* {{Исходник|OneMinus|1−}}
* См. слова [[Слово −|−]], [[1+]] и [[2−]]
* См. [[Символ -|символ −]]
* Слово [http://forth.sourceforge.net/standard/dpans/dpans6.htm#6.1.0300 1− (one-minus)] в стандарте ANS Forth ''(англ.)''
* Слово [http://forth-standard.org/standard/core/OneMinus 1− (one-minus)] в черновике Forth 200x ''(англ.)''
* [http://gudleifr.h1.ru/cgi-bin/pilo.cgi?FL=../g9.txt&IS=\6.PERWOISTOTNIKI\LEO%20BRODIE%20STARTING%20FORTH\05.OPERAZII%20NAD%20ZELYMI%20TISLAMI ОПЕРАЦИИ НАД ЦЕЛЫМИ ЧИСЛАМИ] в книге [http://gudleifr.h1.ru/cgi-bin/pilo.cgi?FL=../g9.txt&IS=\6.PERWOISTOTNIKI\LEO%20BRODIE%20STARTING%20FORTH Л.Броуди «Начальный курс программирования на языке Форт»]
* [http://www.forth.com/starting-forth/sf5/sf5.html The Philosophy of Fixed Point] в книге [http://www.forth.com/starting-forth/ Leo Brodie Starting Forth] ''(англ.)''
 


{{нет иллюстраций}}
{{заготовка}}
{{заготовка}}
[[Категория:Слова Каллисто]]
[[Категория:Слова Каллисто]]
[[Категория:Примитивы]]
[[Категория:Арифметические операции Каллисто]]
[[Категория:Одноместные операции Каллисто]]
[[Категория:Стандартные слова]]
[[Категория:1994 CORE]]
[[Категория:2012 CORE]]

Текущая версия от 16:47, 10 ноября 2017

1− (уменьшить, единицу вычесть, читается «один-минус») — стандартное слово Каллисто. Вычитание 1.

1−             ( x -- x1 )                     Уменьшить. x1 ← x − 1
Пример работы слова 1−

Слово 1− вычитает 1 из числа, находящегося на вершине стека.

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

В режиме NUM последовательно нажмите две белые клавиши  1    

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

6.1.0300   1-                               "one-minus"                    CORE
           ( n1|u1 -- n2|u2 )
           Вычитает один (1) из n1|u1, возвращает разницу n2|u2.

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

Первое зафиксированное упоминание слова 1− относится к 1979 году.

Каллистянское слово 1− способно уменьшать на 1 не только целые, но и числа с плавающей запятой.

1− в предыдущем стандарте Forth-83 (англ.)[править]

     1-           w1 -- w2                      79         "one-minus"
          w2 is the result of subtracting one from w1 according to the
          operation of - .

1− в стандарте Forth-79 (англ.)[править]

1-             n -- n-1                      105        "one-minus"
    Decrement n by one, according to the operation of - .

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

1287 NONEP:          PKRM03 + PKM03  KGOTO9
1288 JONEM:          1 +/−  GOTO NONEP
…
1299 ;#OneMinus
1300 ; 1−               ( x −− x1 )                          Уменьшить. x1 := x−1
1301 LONEM:          .DB     2
1302                 .TEXT   "1−"                    ; ( x −− x−1 )
1303                 .DW     LGBODY
1304 ONEM:           .DW     JONEM                   ; Вычитание 1.

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

CODE 1- ( n1|u1 -- n2|u2 ) \ 94
\ Вычесть 1 из n1|u1 и получить разность n2|u2.
     LEA EAX, -1 [EAX]
     RET
END-CODE

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

Описание и определение слова 1− в ядре ФОРТ-ЕС:

1-           W1->W2 УМЕНЫШИТЬ W1 НА 1                          17

                     Экран номер 17
( 31.03.86   NEGATE ABS + - 1+ 1- 2+ 2- +!  1+!  )

: 1- ( W1->W2) -1 + ;

В FORTH ИТЭФ слово 1− было примитивом, вот его определение:

             HEAD    202Q,'1',255Q,ONEM                   ; 1-
             POP   AX
             DEC   AX
             PUSH  AX
             NEXT

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


  Это заготовка статьи. Вы можете помочь проекту, дополнив её.