# Absolute Value > Compute an [absolute value][absolute-value] of a signed 32-bit integer.
The [absolute value][absolute-value] is defined as
Absolute value
## Usage ```javascript var labs = require( '@stdlib/math/base/special/labs' ); ``` #### labs( x ) Computes an [absolute value][absolute-value] of a signed 32-bit integer. ```javascript var v = labs( -1|0 ); // returns 1 v = labs( 2|0 ); // returns 2 v = labs( 0|0 ); // returns 0 ```
## Notes - The implementation assumes two's complement. - In two's complement systems, the absolute value of the minimum signed 32-bit integer is out-of-range. The absolute value for the minimum signed 32-bit integer is thus undefined. ```javascript // -2^31 var x = -2147483648|0; var v = labs( x ); // returns -2147483648 ```
## Examples ```javascript var randu = require( '@stdlib/random/base/randu' ); var round = require( '@stdlib/math/base/special/round' ); var labs = require( '@stdlib/math/base/special/labs' ); var x; var i; for ( i = 0; i < 100; i++ ) { x = round( randu() * 100.0 ) - 50; console.log( 'abs(%d) = %d', x, labs( x|0 ) ); } ```
* * *
## C APIs
### Usage ```c #include "stdlib/math/base/special/labs.h" ``` #### stdlib_base_labs( x ) Computes the absolute value of a signed 32-bit integer in two's complement format. ```c #include int32_t y = stdlib_base_labs( -5 ); // returns 5 ``` The function accepts the following arguments: - **x**: `[in] int32_t` input value. ```c int32_t stdlib_base_labs( const int32_t x ); ```
### Examples ```c #include "stdlib/math/base/special/labs.h" #include #include int main() { int32_t x[] = { 3, -3, 0, -10 }; int32_t y; int i; for ( i = 0; i < 4; i++ ) { y = stdlib_base_labs( x[ i ] ); printf( "|%i| = %i\n", x[ i ], y ); } } ```