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

Материал из ПМК вики
Перейти к навигации Перейти к поиску
Нет описания правки
 
(не показано 7 промежуточных версий этого же участника)
Строка 1: Строка 1:
'''ARCSIN''' (арксинус) — стандартное слово [[Каллисто]]. Вычисление Арксинуса.
'''ARCSIN''' (арксинус) — традиционное слово [[Каллисто]]. Вычисление Арксинуса.
  ARCSIN        ( x −− x1 )                          Вычисление Арксинуса. x1 := arcsin x
  ARCSIN        ( x −− x1 )                          Вычисление Арксинуса. x1 := arcsin x
x1 — главный угол, чей синус равен x. Модуль x должен быть меньше либо равен 1. Единица измерения угла ([[градус]]ы или [[радиан]]ы) задаётся словами [[DEGREES]] и [[RADIANS]].
x1 — главный угол, чей синус равен x. Модуль x должен быть меньше либо равен 1. Единица измерения угла ([[градус]]ы или [[радиан]]ы) задаётся словами [[DEGREES]] и [[RADIANS]].


== Ввод слова ARCSIN ==
== Ввод слова ARCSIN ==
В [[Режим ЛАТ|режиме ЛАТ]] последовательно нажмите клавиши [[Клавиша ШГ влево|{{Чёрная клавиша|ШГ←}}]] [[Клавиша ×|{{Серая клавиша|×}}]] [[Клавиша С/П|{{Чёрная клавиша|С/П}}]] [[Клавиша 1|{{Серая клавиша|1}}]] [[Клавиша 7|{{Серая клавиша|7}}]] [[Клавиша 4|{{Серая клавиша|4}}]]
В [[Режим ЛАТ|режиме ЛАТ]] последовательно нажмите клавиши {{ШГ←}} [[Клавиша ×|{{Серая клавиша|×}}]] [[Клавиша С/П|{{Чёрная клавиша|С/П}}]] [[Клавиша 1|{{Серая клавиша|1}}]] [[Клавиша 7|{{Серая клавиша|7}}]] [[Клавиша 4|{{Серая клавиша|4}}]]
 
== Детали реализации ==
Слово ARCSIN является «обёрткой» вокруг команды ЭКВМ [[F ARCSIN|F arcsin]]. Размерность результата задаётся [[R9045]].
 
Арксинус не определён для аргументов, превышающих по модулю 1. Обработка этой ошибки производится [[Встроенная программа|встроенной программой]]. Например, последовательность слов {{Текст на индикаторе|2 ARCSIN}} вызывает [[аварийный останов]] [[Каллисто]] с сообщением «Неверный аргумент» в [[Строка комментариев|строке комментариев]]. Можно ввести с клавиатуры произвольное число в качестве значения «арксинуса 2» и вернуться в [[Каллисто]], нажав [[Клавиша С/П|{{Чёрная клавиша|С/П}}]].  Подробнее см. статью [[Авост Каллисто]].
 
В случае [[Авост Каллисто|аварийного останова]] рекомендуется произвести [[COLD|«холодную перезагрузку»]] [[Каллисто]] с удалением всех введённых слов, нажав последовательно клавиши [[Клавиша В/О|{{Чёрная клавиша|В/О}}]] [[Клавиша С/П|{{Чёрная клавиша|С/П}}]].


== FASIN в стандарте ANS Forth ==
== FASIN в стандарте ANS Forth ==
Строка 23: Строка 16:


В Форте FSP88 было два слова ASND и ASNR для вычисления арксинуса в градусах и радианах.
В Форте FSP88 было два слова ASND и ASNR для вычисления арксинуса в градусах и радианах.
В [[Каллисто]] имя ARCSIN восходит к надписи на клавиатуре советского ПМК [[«Электроника Б3-34»]], выпущенного в 1980 году.
== Реализация ==
В [[Каллисто|Каллисто 1.0]] слово ARCSIN является «обёрткой» вокруг команды ЭКВМ [[F ARCSIN|F arcsin]]. Размерность результата задаётся [[R9045]]:
<pre>
1681 ;#ARCSIN
1682 ; ARCSIN          ( x −− x1 )                          Арксинус. x1 := arcsin x
1683 LASIN:          .DB    6
1684                .TEXT  "ARCSIN"                ; ( x −− arcsin x )
1685                .DW    LRAD
1686 ASIN:          .DW    JASIN
1687 JASIN:          PKRM03 FARCSIN PKM03  KGOTO9    ; Обёртка вокруг FARCSIN.
</pre>
Арксинус не определён для аргументов, превышающих по модулю 1. Обработка этой ошибки производится [[Встроенная программа|встроенной программой]]. Например, последовательность слов {{Текст на индикаторе|2 ARCSIN}} вызывает [[аварийный останов]] [[Каллисто]] с сообщением «Неверный аргумент» в [[Строка комментариев|строке комментариев]]. Можно ввести с клавиатуры произвольное число в качестве значения «арксинуса 2» и вернуться в [[Каллисто]], нажав [[Клавиша С/П|{{Чёрная клавиша|С/П}}]].  Подробнее см. статью [[Авост Каллисто]].
В случае [[Авост Каллисто|аварийного останова]] рекомендуется произвести [[COLD|«холодную перезагрузку»]] [[Каллисто]] с удалением всех введённых слов, нажав последовательно клавиши [[Клавиша В/О|{{Чёрная клавиша|В/О}}]] [[Клавиша С/П|{{Чёрная клавиша|С/П}}]].
Реализация из SP-Forth 4.20:
<pre>
CODE FASIN
    FLD1
    FLD ST(1)
    FMUL ST, ST
    FSUBP ST(1), ST
    FSQRT
    FPATAN
    RET
END-CODE
</pre>


== Ссылки ==
== Ссылки ==
* {{Исходник|ARCSIN|ARCSIN}}
* {{Исходник|ARCSIN|ARCSIN}}
* См. слова [[SIN]], [[ARCCOS]] и [[ARCTG]]
* См. слова [[ARCCOS]], [[ARCTG]] и [[SIN]]
* [http://ru.wikipedia.org/wiki/Arcsin Функция Arcsin на Википедии]
* Слово [http://forth.sourceforge.net/standard/dpans/dpans12.htm#12.6.2.1486 FASIN (f-a-sine)] в стандарте ANS Forth ''(англ.)''
* Слово [http://forth.sourceforge.net/standard/dpans/dpans12.htm#12.6.2.1486 FASIN (f-a-sine)] в стандарте ANS Forth ''(англ.)''
* Слово [http://forth-standard.org/standard/float/FASIN FASIN (f-a-sine)] в черновике Forth 200x ''(англ.)''
* Слово [http://forth-standard.org/standard/float/FASIN FASIN (f-a-sine)] в черновике Forth 200x ''(англ.)''
* [http://ru.wikipedia.org/wiki/Arcsin Функция Arcsin на Википедии]




Строка 39: Строка 63:
[[Категория:Одноместные операции Каллисто]]
[[Категория:Одноместные операции Каллисто]]
[[Категория:Слова, способные вызывать авост Каллисто]]
[[Категория:Слова, способные вызывать авост Каллисто]]
[[Категория:Традиционные слова]]
[[Категория:Адаптированные слова]]

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

ARCSIN (арксинус) — традиционное слово Каллисто. Вычисление Арксинуса.

ARCSIN         ( x −− x1 )                          Вычисление Арксинуса. x1 := arcsin x

x1 — главный угол, чей синус равен x. Модуль x должен быть меньше либо равен 1. Единица измерения угла (градусы или радианы) задаётся словами DEGREES и RADIANS.

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

В режиме ЛАТ последовательно нажмите клавиши  ШГ←   ×   С/П   1   7   4 

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

12.6.2.1486   FASIN                         "f-a-sine"             FLOATING EXT
           ( F: r1 -- r2 ) or ( r1 -- r2 )
           r2 - главный угол в радианах, чей синус - r1. Неопределенная 
           ситуация существует, если |r1| больше единицы.

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

В Форте FSP88M это слово известно под именем ASN

В Форте FSP88 было два слова ASND и ASNR для вычисления арксинуса в градусах и радианах.

В Каллисто имя ARCSIN восходит к надписи на клавиатуре советского ПМК «Электроника Б3-34», выпущенного в 1980 году.

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

В Каллисто 1.0 слово ARCSIN является «обёрткой» вокруг команды ЭКВМ F arcsin. Размерность результата задаётся R9045:

1681 ;#ARCSIN
1682 ; ARCSIN           ( x −− x1 )                          Арксинус. x1 := arcsin x
1683 LASIN:          .DB     6
1684                 .TEXT   "ARCSIN"                ; ( x −− arcsin x )
1685                 .DW     LRAD
1686 ASIN:           .DW     JASIN
1687 JASIN:          PKRM03 FARCSIN PKM03  KGOTO9    ; Обёртка вокруг FARCSIN.

Арксинус не определён для аргументов, превышающих по модулю 1. Обработка этой ошибки производится встроенной программой. Например, последовательность слов  2 ARCSIN  вызывает аварийный останов Каллисто с сообщением «Неверный аргумент» в строке комментариев. Можно ввести с клавиатуры произвольное число в качестве значения «арксинуса 2» и вернуться в Каллисто, нажав  С/П . Подробнее см. статью Авост Каллисто.

В случае аварийного останова рекомендуется произвести «холодную перезагрузку» Каллисто с удалением всех введённых слов, нажав последовательно клавиши  В/О   С/П .

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

CODE FASIN
     FLD1
     FLD ST(1)
     FMUL ST, ST
     FSUBP ST(1), ST
     FSQRT
     FPATAN
     RET
END-CODE

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


  У этой статьи нет иллюстраций. Вы можете помочь проекту, добавив их.


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