13a8617a8SJordan K. Hubbard.\" Copyright (c) 1985, 1991 Regents of the University of California. 23a8617a8SJordan K. Hubbard.\" All rights reserved. 33a8617a8SJordan K. Hubbard.\" 43a8617a8SJordan K. Hubbard.\" Redistribution and use in source and binary forms, with or without 53a8617a8SJordan K. Hubbard.\" modification, are permitted provided that the following conditions 63a8617a8SJordan K. Hubbard.\" are met: 73a8617a8SJordan K. Hubbard.\" 1. Redistributions of source code must retain the above copyright 83a8617a8SJordan K. Hubbard.\" notice, this list of conditions and the following disclaimer. 93a8617a8SJordan K. Hubbard.\" 2. Redistributions in binary form must reproduce the above copyright 103a8617a8SJordan K. Hubbard.\" notice, this list of conditions and the following disclaimer in the 113a8617a8SJordan K. Hubbard.\" documentation and/or other materials provided with the distribution. 123a8617a8SJordan K. Hubbard.\" 3. All advertising materials mentioning features or use of this software 133a8617a8SJordan K. Hubbard.\" must display the following acknowledgement: 143a8617a8SJordan K. Hubbard.\" This product includes software developed by the University of 153a8617a8SJordan K. Hubbard.\" California, Berkeley and its contributors. 163a8617a8SJordan K. Hubbard.\" 4. Neither the name of the University nor the names of its contributors 173a8617a8SJordan K. Hubbard.\" may be used to endorse or promote products derived from this software 183a8617a8SJordan K. Hubbard.\" without specific prior written permission. 193a8617a8SJordan K. Hubbard.\" 203a8617a8SJordan K. Hubbard.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 213a8617a8SJordan K. Hubbard.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 223a8617a8SJordan K. Hubbard.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 233a8617a8SJordan K. Hubbard.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 243a8617a8SJordan K. Hubbard.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 253a8617a8SJordan K. Hubbard.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 263a8617a8SJordan K. Hubbard.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 273a8617a8SJordan K. Hubbard.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 283a8617a8SJordan K. Hubbard.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 293a8617a8SJordan K. Hubbard.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 303a8617a8SJordan K. Hubbard.\" SUCH DAMAGE. 313a8617a8SJordan K. Hubbard.\" 323a8617a8SJordan K. Hubbard.\" from: @(#)ieee.3 6.4 (Berkeley) 5/6/91 333a8617a8SJordan K. Hubbard.\" $Id: ieee.3,v 1.7 1994/03/10 18:15:07 jtc Exp $ 343a8617a8SJordan K. Hubbard.\" 353a8617a8SJordan K. Hubbard.Dd Feb 25, 1994 363a8617a8SJordan K. Hubbard.Dt IEEE 3 373a8617a8SJordan K. Hubbard.Os 383a8617a8SJordan K. Hubbard.Sh NAME 393a8617a8SJordan K. Hubbard.Nm copysign , 403a8617a8SJordan K. Hubbard.Nm finite , 413a8617a8SJordan K. Hubbard.Nm ilogb , 423a8617a8SJordan K. Hubbard.Nm nextafter , 433a8617a8SJordan K. Hubbard.Nm remainder , 443a8617a8SJordan K. Hubbard.Nm scalbn 453a8617a8SJordan K. Hubbard.Nd Functions for IEEE arithmetic 463a8617a8SJordan K. Hubbard.Sh SYNOPSIS 473a8617a8SJordan K. Hubbard.Fd #include <math.h> 483a8617a8SJordan K. Hubbard.Ft double 493a8617a8SJordan K. Hubbard.Fn copysign "double x" "double y" 503a8617a8SJordan K. Hubbard.Ft int 513a8617a8SJordan K. Hubbard.Fn finite "double x" 523a8617a8SJordan K. Hubbard.Ft int 533a8617a8SJordan K. Hubbard.Fn ilogb "double x" 543a8617a8SJordan K. Hubbard.Ft double 553a8617a8SJordan K. Hubbard.Fn nextafter "double x" "double y" 563a8617a8SJordan K. Hubbard.Ft double 573a8617a8SJordan K. Hubbard.Fn remainder "double x" "double y" 583a8617a8SJordan K. Hubbard.Ft double 593a8617a8SJordan K. Hubbard.Fn scalbn "double x" "int n" 603a8617a8SJordan K. Hubbard.Sh DESCRIPTION 613a8617a8SJordan K. HubbardThese functions are required or recommended by 623a8617a8SJordan K. Hubbard.St -ieee754 . 633a8617a8SJordan K. Hubbard.Pp 643a8617a8SJordan K. Hubbard.Fn copysign 653a8617a8SJordan K. Hubbardreturns 663a8617a8SJordan K. Hubbard.Fa x 673a8617a8SJordan K. Hubbardwith its sign changed to 683a8617a8SJordan K. Hubbard.Fa y Ns 's. 693a8617a8SJordan K. Hubbard.Pp 703a8617a8SJordan K. Hubbard.Fn finite 713a8617a8SJordan K. Hubbardreturns the value 1 just when 723a8617a8SJordan K. Hubbard\-\*(If \*(Lt 733a8617a8SJordan K. Hubbard.Fa x 743a8617a8SJordan K. Hubbard\*(Lt +\*(If; 753a8617a8SJordan K. Hubbardotherwise a 763a8617a8SJordan K. Hubbardzero is returned 773a8617a8SJordan K. Hubbard(when 783a8617a8SJordan K. Hubbard.Pf \\*(Ba Ns Fa x Ns \\*(Ba 793a8617a8SJordan K. Hubbard= \*(If or 803a8617a8SJordan K. Hubbard.Fa x 813a8617a8SJordan K. Hubbardis \*(Na 823a8617a8SJordan K. Hubbard.Pp 833a8617a8SJordan K. Hubbard.Fn ilogb 843a8617a8SJordan K. Hubbardreturns 853a8617a8SJordan K. Hubbard.Fa x Ns 's exponent 863a8617a8SJordan K. Hubbard.Fa n , 873a8617a8SJordan K. Hubbardin integer format. 883a8617a8SJordan K. Hubbard.Fn ilogb \*(Pm\*(If 893a8617a8SJordan K. Hubbardreturns 903a8617a8SJordan K. Hubbard.Dv INT_MAX 913a8617a8SJordan K. Hubbardand 923a8617a8SJordan K. Hubbard.Fn ilogb 0 933a8617a8SJordan K. Hubbardreturns 943a8617a8SJordan K. Hubbard.Dv INT_MIN . 953a8617a8SJordan K. Hubbard.Pp 963a8617a8SJordan K. Hubbard.Fn nextafter 973a8617a8SJordan K. Hubbardreturns the next machine representable number from 983a8617a8SJordan K. Hubbard.Fa x 993a8617a8SJordan K. Hubbardin direction 1003a8617a8SJordan K. Hubbard.Fa y . 1013a8617a8SJordan K. Hubbard.Pp 1023a8617a8SJordan K. Hubbard.Fn remainder 1033a8617a8SJordan K. Hubbardreturns the remainder 1043a8617a8SJordan K. Hubbard.Fa r 1053a8617a8SJordan K. Hubbard:= 1063a8617a8SJordan K. Hubbard.Fa x 1073a8617a8SJordan K. Hubbard\- 1083a8617a8SJordan K. Hubbard.Fa n\(**y 1093a8617a8SJordan K. Hubbardwhere 1103a8617a8SJordan K. Hubbard.Fa n 1113a8617a8SJordan K. Hubbardis the integer nearest the exact value of 1123a8617a8SJordan K. Hubbard.Bk -words 1133a8617a8SJordan K. Hubbard.Fa x Ns / Ns Fa y ; 1143a8617a8SJordan K. Hubbard.Ek 1153a8617a8SJordan K. Hubbardmoreover if 1163a8617a8SJordan K. Hubbard.Pf \\*(Ba Fa n 1173a8617a8SJordan K. Hubbard\- 1183a8617a8SJordan K. Hubbard.Sm off 1193a8617a8SJordan K. Hubbard.Fa x No / Fa y No \\*(Ba 1203a8617a8SJordan K. Hubbard.Sm on 1213a8617a8SJordan K. Hubbard= 1223a8617a8SJordan K. Hubbard1/2 1233a8617a8SJordan K. Hubbardthen 1243a8617a8SJordan K. Hubbard.Fa n 1253a8617a8SJordan K. Hubbardis even. Consequently 1263a8617a8SJordan K. Hubbardthe remainder is computed exactly and 1273a8617a8SJordan K. Hubbard.Sm off 1283a8617a8SJordan K. Hubbard.Pf \\*(Ba Fa r No \\*(Ba 1293a8617a8SJordan K. Hubbard.Sm on 1303a8617a8SJordan K. Hubbard\*(Le 1313a8617a8SJordan K. Hubbard.Sm off 1323a8617a8SJordan K. Hubbard.Pf \\*(Ba Fa y No \\*(Ba/2. 1333a8617a8SJordan K. Hubbard.Sm on 1343a8617a8SJordan K. HubbardBut 1353a8617a8SJordan K. Hubbard.Fn remainder x 0 1363a8617a8SJordan K. Hubbardand 1373a8617a8SJordan K. Hubbard.Fn remainder \*(If 0 1383a8617a8SJordan K. Hubbardare invalid operations that produce a \*(Na. 1393a8617a8SJordan K. Hubbard.Pp 1403a8617a8SJordan K. Hubbard.Fn scalbn 1413a8617a8SJordan K. Hubbardreturns 1423a8617a8SJordan K. Hubbard.Fa x Ns \(**(2** Ns Fa n ) 1433a8617a8SJordan K. Hubbardcomputed by exponent manipulation. 1443a8617a8SJordan K. Hubbard.Sh SEE ALSO 1453a8617a8SJordan K. Hubbard.Xr math 3 1463a8617a8SJordan K. Hubbard.Sh HISTORY 1473a8617a8SJordan K. HubbardThe 1483a8617a8SJordan K. Hubbard.Nm ieee 1493a8617a8SJordan K. Hubbardfunctions appeared in 1503a8617a8SJordan K. Hubbard.Bx 4.3 . 1513a8617a8SJordan K. Hubbard.Sh STANDARDS 1523a8617a8SJordan K. Hubbard.St -ieee754 153