<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- This file documents the GNU Assembler "as".

Copyright (C) 1991-2013 Free Software Foundation, Inc.

Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3
or any later version published by the Free Software Foundation;
with no Invariant Sections, with no Front-Cover Texts, and with no
Back-Cover Texts.  A copy of the license is included in the
section entitled "GNU Free Documentation License".
 -->
<!-- Created by GNU Texinfo 5.2, http://www.gnu.org/software/texinfo/ -->
<head>
<title>Using as: TIC54X-Builtins</title>

<meta name="description" content="Using as: TIC54X-Builtins">
<meta name="keywords" content="Using as: TIC54X-Builtins">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="AS-Index.html#AS-Index" rel="index" title="AS Index">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="TIC54X_002dDependent.html#TIC54X_002dDependent" rel="up" title="TIC54X-Dependent">
<link href="TIC54X_002dExt.html#TIC54X_002dExt" rel="next" title="TIC54X-Ext">
<link href="TIC54X_002dLocals.html#TIC54X_002dLocals" rel="prev" title="TIC54X-Locals">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.indentedblock {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smallindentedblock {margin-left: 3.2em; font-size: smaller}
div.smalllisp {margin-left: 3.2em}
kbd {font-style:oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nocodebreak {white-space:nowrap}
span.nolinebreak {white-space:nowrap}
span.roman {font-family:serif; font-weight:normal}
span.sansserif {font-family:sans-serif; font-weight:normal}
ul.no-bullet {list-style: none}
-->
</style>


</head>

<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
<a name="TIC54X_002dBuiltins"></a>
<div class="header">
<p>
Next: <a href="TIC54X_002dExt.html#TIC54X_002dExt" accesskey="n" rel="next">TIC54X-Ext</a>, Previous: <a href="TIC54X_002dLocals.html#TIC54X_002dLocals" accesskey="p" rel="prev">TIC54X-Locals</a>, Up: <a href="TIC54X_002dDependent.html#TIC54X_002dDependent" accesskey="u" rel="up">TIC54X-Dependent</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="AS-Index.html#AS-Index" title="Index" rel="index">Index</a>]</p>
</div>
<hr>
<a name="Math-Builtins"></a>
<h4 class="subsection">9.42.7 Math Builtins</h4>

<a name="index-math-builtins_002c-TIC54X"></a>
<a name="index-TIC54X-builtin-math-functions"></a>
<a name="index-builtin-math-functions_002c-TIC54X"></a>

<p>The following built-in functions may be used to generate a
floating-point value.  All return a floating-point value except
&lsquo;<samp>$cvi</samp>&rsquo;, &lsquo;<samp>$int</samp>&rsquo;, and &lsquo;<samp>$sgn</samp>&rsquo;, which return an integer
value.
</p>
<dl compact="compact">
<dd><a name="index-_0024acos-math-builtin_002c-TIC54X"></a>
</dd>
<dt><code><code>$acos(<var>expr</var>)</code></code></dt>
<dd><p>Returns the floating point arccosine of <var>expr</var>.
</p>
<a name="index-_0024asin-math-builtin_002c-TIC54X"></a>
</dd>
<dt><code><code>$asin(<var>expr</var>)</code></code></dt>
<dd><p>Returns the floating point arcsine of <var>expr</var>.
</p>
<a name="index-_0024atan-math-builtin_002c-TIC54X"></a>
</dd>
<dt><code><code>$atan(<var>expr</var>)</code></code></dt>
<dd><p>Returns the floating point arctangent of <var>expr</var>.
</p>
<a name="index-_0024atan2-math-builtin_002c-TIC54X"></a>
</dd>
<dt><code><code>$atan2(<var>expr1</var>,<var>expr2</var>)</code></code></dt>
<dd><p>Returns the floating point arctangent of <var>expr1</var> / <var>expr2</var>.
</p>
<a name="index-_0024ceil-math-builtin_002c-TIC54X"></a>
</dd>
<dt><code><code>$ceil(<var>expr</var>)</code></code></dt>
<dd><p>Returns the smallest integer not less than <var>expr</var> as floating point.
</p>
<a name="index-_0024cosh-math-builtin_002c-TIC54X"></a>
</dd>
<dt><code><code>$cosh(<var>expr</var>)</code></code></dt>
<dd><p>Returns the floating point hyperbolic cosine of <var>expr</var>.
</p>
<a name="index-_0024cos-math-builtin_002c-TIC54X"></a>
</dd>
<dt><code><code>$cos(<var>expr</var>)</code></code></dt>
<dd><p>Returns the floating point cosine of <var>expr</var>.
</p>
<a name="index-_0024cvf-math-builtin_002c-TIC54X"></a>
</dd>
<dt><code><code>$cvf(<var>expr</var>)</code></code></dt>
<dd><p>Returns the integer value <var>expr</var> converted to floating-point.
</p>
<a name="index-_0024cvi-math-builtin_002c-TIC54X"></a>
</dd>
<dt><code><code>$cvi(<var>expr</var>)</code></code></dt>
<dd><p>Returns the floating point value <var>expr</var> converted to integer.
</p>
<a name="index-_0024exp-math-builtin_002c-TIC54X"></a>
</dd>
<dt><code><code>$exp(<var>expr</var>)</code></code></dt>
<dd><p>Returns the floating point value e ^ <var>expr</var>.
</p>
<a name="index-_0024fabs-math-builtin_002c-TIC54X"></a>
</dd>
<dt><code><code>$fabs(<var>expr</var>)</code></code></dt>
<dd><p>Returns the floating point absolute value of <var>expr</var>.
</p>
<a name="index-_0024floor-math-builtin_002c-TIC54X"></a>
</dd>
<dt><code><code>$floor(<var>expr</var>)</code></code></dt>
<dd><p>Returns the largest integer that is not greater than <var>expr</var> as
floating point.
</p>
<a name="index-_0024fmod-math-builtin_002c-TIC54X"></a>
</dd>
<dt><code><code>$fmod(<var>expr1</var>,<var>expr2</var>)</code></code></dt>
<dd><p>Returns the floating point remainder of <var>expr1</var> / <var>expr2</var>.
</p>
<a name="index-_0024int-math-builtin_002c-TIC54X"></a>
</dd>
<dt><code><code>$int(<var>expr</var>)</code></code></dt>
<dd><p>Returns 1 if <var>expr</var> evaluates to an integer, zero otherwise.
</p>
<a name="index-_0024ldexp-math-builtin_002c-TIC54X"></a>
</dd>
<dt><code><code>$ldexp(<var>expr1</var>,<var>expr2</var>)</code></code></dt>
<dd><p>Returns the floating point value <var>expr1</var> * 2 ^ <var>expr2</var>.
</p>
<a name="index-_0024log10-math-builtin_002c-TIC54X"></a>
</dd>
<dt><code><code>$log10(<var>expr</var>)</code></code></dt>
<dd><p>Returns the base 10 logarithm of <var>expr</var>.
</p>
<a name="index-_0024log-math-builtin_002c-TIC54X"></a>
</dd>
<dt><code><code>$log(<var>expr</var>)</code></code></dt>
<dd><p>Returns the natural logarithm of <var>expr</var>.
</p>
<a name="index-_0024max-math-builtin_002c-TIC54X"></a>
</dd>
<dt><code><code>$max(<var>expr1</var>,<var>expr2</var>)</code></code></dt>
<dd><p>Returns the floating point maximum of <var>expr1</var> and <var>expr2</var>.
</p>
<a name="index-_0024min-math-builtin_002c-TIC54X"></a>
</dd>
<dt><code><code>$min(<var>expr1</var>,<var>expr2</var>)</code></code></dt>
<dd><p>Returns the floating point minimum of <var>expr1</var> and <var>expr2</var>.
</p>
<a name="index-_0024pow-math-builtin_002c-TIC54X"></a>
</dd>
<dt><code><code>$pow(<var>expr1</var>,<var>expr2</var>)</code></code></dt>
<dd><p>Returns the floating point value <var>expr1</var> ^ <var>expr2</var>.
</p>
<a name="index-_0024round-math-builtin_002c-TIC54X"></a>
</dd>
<dt><code><code>$round(<var>expr</var>)</code></code></dt>
<dd><p>Returns the nearest integer to <var>expr</var> as a floating point number.
</p>
<a name="index-_0024sgn-math-builtin_002c-TIC54X"></a>
</dd>
<dt><code><code>$sgn(<var>expr</var>)</code></code></dt>
<dd><p>Returns -1, 0, or 1 based on the sign of <var>expr</var>.
</p>
<a name="index-_0024sin-math-builtin_002c-TIC54X"></a>
</dd>
<dt><code><code>$sin(<var>expr</var>)</code></code></dt>
<dd><p>Returns the floating point sine of <var>expr</var>.
</p>
<a name="index-_0024sinh-math-builtin_002c-TIC54X"></a>
</dd>
<dt><code><code>$sinh(<var>expr</var>)</code></code></dt>
<dd><p>Returns the floating point hyperbolic sine of <var>expr</var>.
</p>
<a name="index-_0024sqrt-math-builtin_002c-TIC54X"></a>
</dd>
<dt><code><code>$sqrt(<var>expr</var>)</code></code></dt>
<dd><p>Returns the floating point square root of <var>expr</var>.
</p>
<a name="index-_0024tan-math-builtin_002c-TIC54X"></a>
</dd>
<dt><code><code>$tan(<var>expr</var>)</code></code></dt>
<dd><p>Returns the floating point tangent of <var>expr</var>.
</p>
<a name="index-_0024tanh-math-builtin_002c-TIC54X"></a>
</dd>
<dt><code><code>$tanh(<var>expr</var>)</code></code></dt>
<dd><p>Returns the floating point hyperbolic tangent of <var>expr</var>.
</p>
<a name="index-_0024trunc-math-builtin_002c-TIC54X"></a>
</dd>
<dt><code><code>$trunc(<var>expr</var>)</code></code></dt>
<dd><p>Returns the integer value of <var>expr</var> truncated towards zero as
floating point.
</p>
</dd>
</dl>

<hr>
<div class="header">
<p>
Next: <a href="TIC54X_002dExt.html#TIC54X_002dExt" accesskey="n" rel="next">TIC54X-Ext</a>, Previous: <a href="TIC54X_002dLocals.html#TIC54X_002dLocals" accesskey="p" rel="prev">TIC54X-Locals</a>, Up: <a href="TIC54X_002dDependent.html#TIC54X_002dDependent" accesskey="u" rel="up">TIC54X-Dependent</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="AS-Index.html#AS-Index" title="Index" rel="index">Index</a>]</p>
</div>



</body>
</html>
