====== Exceptions ====== Exceptions are reactions to prohibited states of the program execution. The exception settings is defined in the Controller properties. {{:en:mervis-ide:35-help:exceptions.png}} ===== Options ===== |Stop When Exception|Description | |TRUE |If there is an exception, the program execution stops. In the System status tab it is displayed which exception appeared, and where. | |FALSE |If there is an exception, the program keeps on running. The block output diplays the status according to the exception table:\\ NaN - the value is not a number\\ - Infinity\\ + Infinity| Exception catched in the System status: {{:en:mervis-ide:35-help:exceptions_example.png}} ===== Exceptions ===== === LN - natural logarithm === |Inputs|Outputs | |in = 0|-Infinity| |in < 0|NaN | === LOG - common logarithm === |Inputs|Outputs | |in = 0|-Infinity| |in < 0|NaN | === ASIN - Arc sinus === |Inputs |Outputs| |in < -1|NaN | |in > 1 |NaN | === ACOS - Arc cosinus === |Inputs |Outputs| |in < -1|NaN | |in > 1 |NaN | === ACOSH - Arc cosinus hyperbolicus === |Inputs|Outputs| |in < 1|NaN | === ATANH - Arc tangens hyperbolicus === |Inputs |Outputs | |in = -1|-Infinity| |in = 1 |+Infinity| |in < -1|NaN | |in > 1 |NaN | === SQRT - Square root === |Inputs|Outputs| |in < 0|NaN | === EXP, EXP10 and ** - powers === |Inputs |Outputs | |"in" is too large|+Infinity/-Infinity| === DIV - division without using en/eno === ^Inputs ^Outputs ^ |0/0 |NaN | |X/0 where X<0 |-Infinity| |X/0 where X>0 |+Infinity| |X/0 where both inputs are ANY_INT|0 | === DIV - division using en/eno === |Inputs|Outputs | |X/0 |result=0 eno=false| === MOD - modulo without using en/eno === |Inputs |Outputs| |X mod 0 where inputs are real |NaN | |X mod 0 where inputs are ANY_INT|0 | === MOD - modulo using en/eno === ^Inputs ^Outputs ^ |X mod 0|result=0 eno=false| === RD - read from variables === Invalid address or range always returns an area with zeros. === WR - write to variables === Invalid address or range results in no writing. === Indirect virtual method call === Invalid pointer or reference results in no call. === Read and write into memory === Reading or writing beyond the address space results in no action.