Редактирование: Слово −
Перейти к навигации
Перейти к поиску
Правка может быть отменена. Пожалуйста, просмотрите сравнение версий ниже, чтобы убедиться, что это нужная вам правка, и запишите страницу ниже, чтобы отменить правку.
Текущая версия | Ваш текст | ||
Строка 1: | Строка 1: | ||
'''−''' (вычесть, читается «минус») — стандартное слово [[Каллисто]]. | '''−''' (вычесть, читается «минус») — общее, стандартное слово [[Каллисто]]. Вычитание [[Десятичное число|десятичных чисел]]. | ||
− ( y x -- x1 ) Вычесть. x1 ← y − x | − ( y x -- x1 ) Вычесть. x1 ← y − x | ||
[[Файл:CallistoConstVar.png|thumb|right|264px|Пример работы слова −]] | [[Файл:CallistoConstVar.png|thumb|right|264px|Пример работы слова −]] | ||
Строка 6: | Строка 6: | ||
== Ввод слова − == | == Ввод слова − == | ||
В [[Режим NUM|режиме NUM]] нажмите [[Клавиша -|белую клавишу {{Серая клавиша|−}}]] | В [[Режим NUM|режиме NUM]] нажмите [[Клавиша -|белую клавишу {{Серая клавиша|−}}]] | ||
== Детали реализации == | |||
Слово − является «обёрткой» вокруг команды ЭКВМ [[−|команды ЭКВМ − «вычитание»]], вызывающей переполнение при результате, по модулю больше либо равном 10<sup>100</sup>. | |||
Обработка этой ошибки производится [[Встроенная программа|встроенной программой]]. Например, последовательность слов {{Текст на индикаторе|5E99 −5E99 −}} вызывает [[аварийный останов]] [[Каллисто]] с сообщением «Переполнение» в [[Строка комментариев|строке комментариев]]. Можно ввести с клавиатуры произвольное число в качестве значения «10<sup>100</sup>» и вернуться в [[Каллисто]], нажав [[Клавиша С/П|{{Чёрная клавиша|С/П}}]]. Подробнее см. статью [[Авост Каллисто]]. | |||
В случае [[Авост Каллисто|аварийного останова]] рекомендуется произвести [[COLD|«холодную перезагрузку»]] [[Каллисто]] с удалением всех введённых слов, нажав последовательно клавиши [[Клавиша В/О|{{Чёрная клавиша|В/О}}]] [[Клавиша С/П|{{Чёрная клавиша|С/П}}]]. | |||
Слово − также может использоваться для вычитания целых чисел, как в Форте. В этом случае разность x3 — также целое число, если её модуль не превышает 10<sup>12</sup>. | |||
== − и F− в стандарте ANS Forth == | == − и F− в стандарте ANS Forth == | ||
Строка 21: | Строка 30: | ||
== История == | == История == | ||
Слово − взято в [[Каллисто]] из Форта, где является одним из самых древних слов. Также каллистянское слово − выполняет функции слова F− из действующего стандарта Форта 1994 года. | |||
Слово − появилось в программе CURVE, написанной Чак Муром на [https://ru.wikipedia.org/wiki/%D0%90%D0%BB%D0%B3%D0%BE%D0%BB Алголе] для Burroughs B5500 в 1964 году при работе на [https://ru.wikipedia.org/wiki/%D0%9D%D0%B0%D1%86%D0%B8%D0%BE%D0%BD%D0%B0%D0%BB%D1%8C%D0%BD%D0%B0%D1%8F_%D1%83%D1%81%D0%BA%D0%BE%D1%80%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%B0%D1%8F_%D0%BB%D0%B0%D0%B1%D0%BE%D1%80%D0%B0%D1%82%D0%BE%D1%80%D0%B8%D1%8F_SLAC Национальную ускорительную лабораторию SLAC] [https://ru.wikipedia.org/wiki/%D0%A1%D1%82%D1%8D%D0%BD%D1%84%D0%BE%D1%80%D0%B4%D1%81%D0%BA%D0%B8%D0%B9_%D1%83%D0%BD%D0%B8%D0%B2%D0%B5%D1%80%D1%81%D0%B8%D1%82%D0%B5%D1%82 Стэнфордского университета]. | Слово − появилось в программе CURVE, написанной Чак Муром на [https://ru.wikipedia.org/wiki/%D0%90%D0%BB%D0%B3%D0%BE%D0%BB Алголе] для Burroughs B5500 в 1964 году при работе на [https://ru.wikipedia.org/wiki/%D0%9D%D0%B0%D1%86%D0%B8%D0%BE%D0%BD%D0%B0%D0%BB%D1%8C%D0%BD%D0%B0%D1%8F_%D1%83%D1%81%D0%BA%D0%BE%D1%80%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%B0%D1%8F_%D0%BB%D0%B0%D0%B1%D0%BE%D1%80%D0%B0%D1%82%D0%BE%D1%80%D0%B8%D1%8F_SLAC Национальную ускорительную лабораторию SLAC] [https://ru.wikipedia.org/wiki/%D0%A1%D1%82%D1%8D%D0%BD%D1%84%D0%BE%D1%80%D0%B4%D1%81%D0%BA%D0%B8%D0%B9_%D1%83%D0%BD%D0%B8%D0%B2%D0%B5%D1%80%D1%81%D0%B8%D1%82%D0%B5%D1%82 Стэнфордского университета]. | ||
Строка 29: | Строка 36: | ||
В 1970 году слово − работало в 2К×48бит версии Форта на Burroughs B-5500. | В 1970 году слово − работало в 2К×48бит версии Форта на Burroughs B-5500. | ||
В {{colorForth}} слово − используется для реализации [[NOT|побитового отрицания]]. Чак Мур больше не считает арифметику чем-то настолько важным, чтобы влиять на язык программирования. | В {{colorForth}} слово − используется для реализации [[Слово NOT|побитового отрицания]]. Чак Мур больше не считает арифметику чем-то настолько важным, чтобы влиять на язык программирования. | ||
Одноимённая [[−|команда −]] использовалась в советских ПМК, откуда в 2007 году перешла в систему команд ЭКВМ. Сам знак «−» для обозначения операции вычитания взят из арифметики. Впервые знак «−» появился в 1489 году, в учебнике «Быстрый и приятный счёт для всех торговцев» немецкого математика [https://ru.wikipedia.org/wiki/%D0%92%D0%B8%D0%B4%D0%BC%D0%B0%D0%BD,_%D0%98%D0%BE%D0%B3%D0%B0%D0%BD%D0%BD Иоганна Видмана]. До этого вычитание обозначали [[Символ с кодом 109|латинской буквой m]] (minus), часто помечая эту букву [[~|тильдой]]. | Одноимённая [[−|команда −]] использовалась в советских ПМК, откуда в 2007 году перешла в систему команд ЭКВМ. Сам знак «−» для обозначения операции вычитания взят из арифметики. Впервые знак «−» появился в 1489 году, в учебнике «Быстрый и приятный счёт для всех торговцев» немецкого математика [https://ru.wikipedia.org/wiki/%D0%92%D0%B8%D0%B4%D0%BC%D0%B0%D0%BD,_%D0%98%D0%BE%D0%B3%D0%B0%D0%BD%D0%BD Иоганна Видмана]. До этого вычитание обозначали [[Символ с кодом 109|латинской буквой m]] (minus), часто помечая эту букву [[~|тильдой]]. | ||
Строка 48: | Строка 55: | ||
== Реализация == | == Реализация == | ||
Слово − присутствовало в FORTH ИТЭФ и ФОРТ-ЕС, где работало только с целыми числами. | Слово − присутствовало в FORTH ИТЭФ и ФОРТ-ЕС, где работало только с целыми числами. | ||
Строка 120: | Строка 91: | ||
[[Категория:Арифметические операции Каллисто]] | [[Категория:Арифметические операции Каллисто]] | ||
[[Категория:Слова, способные вызывать авост Каллисто]] | [[Категория:Слова, способные вызывать авост Каллисто]] | ||