1.\" $OpenBSD: logb.3,v 1.2 2003/06/02 20:18:41 millert Exp $ 2.\" Copyright (c) 1985, 1991 Regents of the University of California. 3.\" All rights reserved. 4.\" 5.\" Redistribution and use in source and binary forms, with or without 6.\" modification, are permitted provided that the following conditions 7.\" are met: 8.\" 1. Redistributions of source code must retain the above copyright 9.\" notice, this list of conditions and the following disclaimer. 10.\" 2. Redistributions in binary form must reproduce the above copyright 11.\" notice, this list of conditions and the following disclaimer in the 12.\" documentation and/or other materials provided with the distribution. 13.\" 3. Neither the name of the University nor the names of its contributors 14.\" may be used to endorse or promote products derived from this software 15.\" without specific prior written permission. 16.\" 17.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 18.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 19.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 21.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 23.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27.\" SUCH DAMAGE. 28.\" 29.\" from: @(#)ieee.3 6.4 (Berkeley) 5/6/91 30.\" 31.Dd March 10, 1994 32.Dt IEEE_TEST 3 33.Os 34.Sh NAME 35.Nm logb , 36.Nm logbf , 37.Nm scalb , 38.Nm scalbf , 39.Nm significand , 40.Nm significandf 41.Nd IEEE test functions 42.Sh SYNOPSIS 43.Fd #include <math.h> 44.Ft double 45.Fn logb "double x" 46.Ft float 47.Fn logbf "float x" 48.Ft double 49.Fn scalb "double x" "double n" 50.Ft float 51.Fn scalbf "float x" "float n" 52.Ft double 53.Fn significand "double x" 54.Ft float 55.Fn significandf "float x" 56.Sh DESCRIPTION 57These functions allow users to test conformance to 58.St -ieee754 . 59Their use is not otherwise recommended. 60.Pp 61.Fn logb x 62returns 63.Fa x Ns 's exponent 64.Fa n , 65a signed integer converted to double\-precision floating\-point. 66.Fn logb \*(Pm\*(If 67= +\*(If; 68.Fn logb 0 69= -\*(If with a division by zero exception. 70.Fn logbf 71is the single precision form of 72.Fn logb . 73.Pp 74.Fn scalb x n 75returns 76.Fa x Ns \(**(2** Ns Fa n ) 77computed by exponent manipulation. 78.Fn scalbf 79is the single precision form of 80.Fn scalb . 81.Pp 82.Fn significand x 83returns 84.Fa sig , 85where 86.Fa x 87:= 88.Fa sig No \(** 2** Ns Fa n 89with 1 \(<= 90.Fa sig 91< 2. 92.Fn significand x 93is not defined when 94.Fa x 95is 0, \*(Pm\*(If, or \*(Na. 96.Fn significandf 97is the single precision for of 98.Fn significand . 99.Sh SEE ALSO 100.Xr ieee 3 , 101.Xr math 3 102.Sh STANDARDS 103.St -ieee754 104