Текущая версия |
Ваш текст |
Строка 1: |
Строка 1: |
| '''√''' (квадратный корень) — традиционное слово [[Каллисто]]. Извлечение квадратного корня. | | '''√''' — стандартное слово [[Каллисто]]. |
| √ ( p -- x ) Квадратный корень. x ← √p
| |
| [[Файл:CallistoPowSqr.png|thumb|right|264px|Пример работы слова √]]
| |
| x — корень второй степени из p. Аргумент p должен быть больше нуля либо равен нулю.
| |
| | |
| == Ввод слова √ ==
| |
| В [[Режим NUM|режиме NUM]] последовательно нажмите две клавиши [[Клавиша F|{{Оранжевая клавиша|F}}]] [[Клавиша -|{{Серая клавиша|−}}]]
| |
| | |
| == FSQRT в стандарте ANS Forth ==
| |
| 12.6.2.1618 FSQRT "f-square-root" FLOATING EXT
| |
| ( F: r1 -- r2 ) or ( r1 -- r2 )
| |
| r2 - квадратный корень r1. Неопределенная ситуация существует, если
| |
| r1 - меньше нуля.
| |
| | |
| == История ==
| |
| Впервые слово √ под именем SQRT появилось в Форте 1971-73 годах, когда Чак Мур перенёс транслятор на DEC PDP-11 в [https://en.wikipedia.org/wiki/National_Radio_Astronomy_Observatory National Radio Astronomy Observatory] (''англ.'', [https://ru.wikipedia.org/wiki/%D0%A8%D0%B0%D1%80%D0%BB%D0%BE%D1%82%D1%81%D0%B2%D0%B8%D0%BB%D0%BB_%28%D0%92%D0%B8%D1%80%D0%B3%D0%B8%D0%BD%D0%B8%D1%8F%29 Шарлотсвилл]). Слово SQRT работало только с целыми числами и получало 16-битный результат из 32-битного аргумента.
| |
| | |
| В Форте FSP88 и MMSFORTH слово √ было известно под именем SQR
| |
| | |
| В [[Каллисто]] имя √ восходит к надписи на клавиатуре советского ПМК [[«Электроника Б3-34»]], выпущенного в 1980 году.
| |
| | |
| == Реализация ==
| |
| Слово √ является «обёрткой» вокруг команды ЭКВМ [[F SQRT|F √]].
| |
| | |
| Квадратный корень не определён для отрицательных чисел. Обработка этой ошибки производится [[Встроенная программа|встроенной программой]]. Например, последовательность слов {{Текст на индикаторе|-1 √}} вызывает [[аварийный останов]] [[Каллисто]] с сообщением «Неверный аргумент» в [[Строка комментариев|строке комментариев]]. Можно ввести с клавиатуры произвольное число в качестве значения «$\sqrt{-1}$» и вернуться в [[Каллисто]], нажав [[Клавиша С/П|{{Чёрная клавиша|С/П}}]]. Подробнее см. статью [[Авост Каллисто]].
| |
| | |
| В случае [[Авост Каллисто|аварийного останова]] рекомендуется произвести [[COLD|«холодную перезагрузку»]] [[Каллисто]] с удалением всех введённых слов, нажав последовательно клавиши [[Клавиша В/О|{{Чёрная клавиша|В/О}}]] [[Клавиша С/П|{{Чёрная клавиша|С/П}}]].
| |
| <pre>
| |
| 1606 ;#FSQRT
| |
| 1607 ; √ ( p −− p1 ) Квадратный корень. p1 := sqrt p
| |
| 1608 LSQRT: .DB 1,251 ; ( r −− sqrt r )
| |
| 1609 .DW LX2
| |
| 1610 SQRT: .DW JSQRT
| |
| 1611 JSQRT: PKRM03 FSQRT PKM03 KGOTO9 ; Обёртка вокруг FSQRT.
| |
| </pre>
| |
| Реализация из SP-Forth 4.20:
| |
| <pre>
| |
| CODE FSQRT
| |
| FSQRT
| |
| RET
| |
| END-CODE
| |
| </pre>
| |
| | |
| == Ссылки ==
| |
| * {{Исходник|FSQRT|√}}
| |
| * См. слова [[X²]] и [[Yˣ]]
| |
| * [http://ru.wikipedia.org/wiki/%D0%9A%D0%B2%D0%B0%D0%B4%D1%80%D0%B0%D1%82%D0%BD%D1%8B%D0%B9_%D0%BA%D0%BE%D1%80%D0%B5%D0%BD%D1%8C Квадратный корень на Википедии]
| |
| * Слово [http://forth.sourceforge.net/standard/dpans/dpans12.htm#12.6.2.1618 FSQRT (f-square-root)] в стандарте ANS Forth ''(англ.)''
| |
| * Слово [http://forth-standard.org/standard/float/FSQRT FSQRT (f-square-root)] в черновике Forth 200x ''(англ.)''
| |
| | |
|
| |
|
| | {{нет иллюстраций}} |
| {{заготовка}} | | {{заготовка}} |
| [[Категория:Слова Каллисто]] | | [[Категория:Слова Каллисто]] |
| [[Категория:Примитивы]]
| |
| [[Категория:Математические функции Каллисто]] | | [[Категория:Математические функции Каллисто]] |
| [[Категория:Одноместные операции Каллисто]] | | [[Категория:Одноместные операции Каллисто]] |
| [[Категория:Слова, способные вызывать авост Каллисто]]
| |
| [[Категория:Адаптированные слова]]
| |
| [[Категория:Традиционные слова]]
| |