Maple Professional
Maple Academic
Maple Student Edition
Maple Personal Edition
Maple Player
Maple Player for iPad
MapleSim Professional
MapleSim Academic
Maple T.A. - Testing & Assessment
Maple T.A. MAA Placement Test Suite
Möbius - Online Courseware
Machine Design / Industrial Automation
Aerospace
Vehicle Engineering
Robotics
Power Industries
System Simulation and Analysis
Model development for HIL
Plant Modeling for Control Design
Robotics/Motion Control/Mechatronics
Other Application Areas
Mathematics Education
Engineering Education
High Schools & Two-Year Colleges
Testing & Assessment
Students
Financial Modeling
Operations Research
High Performance Computing
Physics
Live Webinars
Recorded Webinars
Upcoming Events
MaplePrimes
Maplesoft Blog
Maplesoft Membership
Maple Ambassador Program
MapleCloud
Technical Whitepapers
E-Mail Newsletters
Maple Books
Math Matters
Application Center
MapleSim Model Gallery
User Case Studies
Exploring Engineering Fundamentals
Teaching Concepts with Maple
Maplesoft Welcome Center
Teacher Resource Center
Student Help Center
SFloatMantissa - return the mantissa of a floating-point number
SFloatExponent - return the exponent of a floating-point number
Calling Sequence
SFloatMantissa(x,base)
SFloatExponent(x,base)
Parameters
x
-
software or hardware floating-point number
base
(optional) 2 or default 10
Description
The SFloatMantissa(x) function returns the mantissa field of x as a Maple integer.
If x is any numeric argument other than a floating-point number, an error is generated. Otherwise, this function returns unevaluated.
The SFloatExponent(x) function returns the exponent field of x as a Maple integer, symbolic infinity, or undefined.
For all software floating-point numbers x (including software float infinities and undefineds), SFloat( SFloatMantissa(x), SFloatExponent(x) ) = x.
These functions can be used for hardware floating-point numbers (see HFloat) with the second argument of 2. Such numbers are represented internally in the form mantissa 2^exponent.
When the optional base argument is omitted or set to 10, hardware floating-point numbers may still be passed to SFloatMantissa and SFloatExponent. This will result in an implicit conversion to software floating-point format before the operation is carried out.
Note that SFloatMantissa(HFloat(m,e)) and SFloatMantissa(HFloat(m,e,2),2) are not usually equal to m. When HFloat(m,e) or HFloat(m,e,2) is created, the mantissa and exponent are normalized to the standard underlying 64-bit hardware double representation. Extracting the mantissa or exponent using the base-2 option returns the mantissa or exponent as stored. Extracting the mantissa or exponent in base-10 form incurs a conversion to an equivalent software floating-point format that may not exactly match the input expression.
For all hardware floating-point numbers x (including hardware float infinities and undefined's), HFloat( SFloatMantissa(x), SFloatExponent(x) ) = x, and HFloat( SFloatMantissa(x,2), SFloatExponent(x,2), 2 ) = x.
Thread Safety
The SFloatMantissa and SFloatExponent commands are thread-safe as of Maple 15.
For more information on thread safety, see index/threadsafe.
Examples
See Also
float, HFloat
Download Help Document