2−: различия между версиями
Перейти к навигации
Перейти к поиску
AtH (обсуждение | вклад) Нет описания правки |
AtH (обсуждение | вклад) |
||
(не показано 26 промежуточных версий этого же участника) | |||
Строка 1: | Строка 1: | ||
'''2−''' (уменьшить на два, двойку вычесть, читается «два-минус») — | '''2−''' (уменьшить на два, двойку вычесть, читается «два-минус») — фортовское слово [[Каллисто]]. Вычитание 2. | ||
2− ( x -- x1 ) | 2− ( x -- x1 ) Вычесть два. x1 ← x − 2 | ||
[[Файл:CallistoTwo.png|thumb|right|264px|Пример работы слова 2−]] | |||
Слово 2− уменьшает x на 2 и кладёт на [[Стек данных|стек]] результат x1. | |||
== Ввод слова 2− == | == Ввод слова 2− == | ||
Строка 7: | Строка 8: | ||
== История == | == История == | ||
Слово 2− присутствовало в Форте-83, но убрано из стандарта ANS и из черновика Форта-2012. Несмотря на это, простое в реализации слово 2− по-прежнему присутствует в большинстве версий Форта. В некоторых старых Фортах роль слова 2− выполняло слово [[BODY⟩|BODY>]] | |||
Каллистянское слово 2− способно уменьшать на 2 не только целые, но и числа с плавающей запятой. | Каллистянское слово 2− способно уменьшать на 2 не только целые, но и числа с плавающей запятой. | ||
=== 2− в предыдущем стандарте Forth-83 (англ.) === | |||
2- w1 -- w2 79 "two-minus" | |||
w2 is the result of subtracting two from w1 according to the | |||
operation of - . | |||
=== 2− в стандарте Forth-79 (англ.) === | |||
2- n -- n-2 129 "two-minus" | |||
Decrement n by two, according to the operation of - . | |||
== Реализация == | |||
<pre> | |||
1287 NONEP: PKRM03 + PKM03 KGOTO9 | |||
… | |||
1289 JTWOM: 2 +/− GOTO NONEP | |||
… | |||
1322 ;#TwoMinus | |||
1323 ; 2− ( x −− x1 ) Вычесть два. x1 := x−2 | |||
1324 LFDIV2: .DB 2 | |||
1325 .TEXT "2−" ; ( x −− x−2 ) | |||
1326 .DW LDIV2 | |||
1327 TWOM: .DW JTWOM ; Вычитание 2. | |||
</pre> | |||
Реализации из SP-Forth 4.20: | |||
<pre> | |||
CODE 2- ( W -> W-2 ) | |||
LEA EAX, -2 [EAX] | |||
RET | |||
END-CODE | |||
… | |||
: 2- 2 - ; | |||
</pre> | |||
=== Советская реализация === | |||
Определение слова 2− в ядре ФОРТ-ЕС: | |||
<PRE> | |||
2- W1->W2 УМЕНЬШИТЬ W1 НА 2 17 | |||
Экран номер 17 | |||
( 31.03.86 NEGATE ABS + - 1+ 1- 2+ 2- +! 1+! ) | |||
: 2- ( W1->W2) 2 - ; | |||
</PRE> | |||
В FORTH ИТЭФ роль слова 2− выполнял [[примитив]] [[BODY⟩|CFA]] | |||
== Ссылки == | == Ссылки == | ||
* См. слова [[2+]] [[ | * {{Исходник|TwoMinus|2−}} | ||
* См. слова [[Слово −|−]], [[2+]], [[1−]], [[2×]] и [[2/]] | |||
* См. [[Символ -|символ −]] | |||
* [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] ''(англ.)'' | |||
{{заготовка}} | {{заготовка}} | ||
[[Категория:Слова Каллисто]] | [[Категория:Слова Каллисто]] | ||
[[Категория:Примитивы]] | |||
[[Категория:Арифметические операции Каллисто]] | [[Категория:Арифметические операции Каллисто]] | ||
[[Категория:Одноместные операции Каллисто]] | [[Категория:Одноместные операции Каллисто]] | ||
Текущая версия от 18:14, 13 ноября 2017
2− (уменьшить на два, двойку вычесть, читается «два-минус») — фортовское слово Каллисто. Вычитание 2.
2− ( x -- x1 ) Вычесть два. x1 ← x − 2
Слово 2− уменьшает x на 2 и кладёт на стек результат x1.
Ввод слова 2−[править]
В режиме NUM последовательно нажмите две белые клавиши 2 −
История[править]
Слово 2− присутствовало в Форте-83, но убрано из стандарта ANS и из черновика Форта-2012. Несмотря на это, простое в реализации слово 2− по-прежнему присутствует в большинстве версий Форта. В некоторых старых Фортах роль слова 2− выполняло слово BODY>
Каллистянское слово 2− способно уменьшать на 2 не только целые, но и числа с плавающей запятой.
2− в предыдущем стандарте Forth-83 (англ.)[править]
2- w1 -- w2 79 "two-minus" w2 is the result of subtracting two from w1 according to the operation of - .
2− в стандарте Forth-79 (англ.)[править]
2- n -- n-2 129 "two-minus" Decrement n by two, according to the operation of - .
Реализация[править]
1287 NONEP: PKRM03 + PKM03 KGOTO9 … 1289 JTWOM: 2 +/− GOTO NONEP … 1322 ;#TwoMinus 1323 ; 2− ( x −− x1 ) Вычесть два. x1 := x−2 1324 LFDIV2: .DB 2 1325 .TEXT "2−" ; ( x −− x−2 ) 1326 .DW LDIV2 1327 TWOM: .DW JTWOM ; Вычитание 2.
Реализации из SP-Forth 4.20:
CODE 2- ( W -> W-2 ) LEA EAX, -2 [EAX] RET END-CODE … : 2- 2 - ;
Советская реализация[править]
Определение слова 2− в ядре ФОРТ-ЕС:
2- W1->W2 УМЕНЬШИТЬ W1 НА 2 17 Экран номер 17 ( 31.03.86 NEGATE ABS + - 1+ 1- 2+ 2- +! 1+! ) : 2- ( W1->W2) 2 - ;
В FORTH ИТЭФ роль слова 2− выполнял примитив CFA
Ссылки[править]
- Исходный текст слова 2− в Каллисто Классик 1.0
- См. слова −, 2+, 1−, 2× и 2/
- См. символ −
- ОПЕРАЦИИ НАД ЦЕЛЫМИ ЧИСЛАМИ в книге Л.Броуди «Начальный курс программирования на языке Форт»
- The Philosophy of Fixed Point в книге Leo Brodie Starting Forth (англ.)
Это заготовка статьи. Вы можете помочь проекту, дополнив её. |