Ada Programming/Attributes/'Machine Emin


Ada. Time-tested, safe and secure.
Ada. Time-tested, safe and secure.

Description

X'Machine_Emin is an Ada attribute where X is any floating point type.

Floating point types are represented as:

where

sign is 1 or -1
mantissa is a fraction in base radix
radix is the hardware radix (usually 2)
exponent is an integer

'Machine_Emin returns the smallest exponent.

Example

with Ada.Text_IO;

procedure Machine_Emin is

   package T_IO renames Ada.Category:Book:Ada Programming/Pages containing deprecated templatesText_IO;
   package I_IO is new  Ada.Category:Book:Ada Programming/Pages containing deprecated templatesText_IO.Category:Book:Ada Programming/Pages containing deprecated templatesInteger_IO (Integer);
begin
   T_IO.Category:Book:Ada Programming/Pages containing deprecated templatesPut ("Emin of Float type       = ");
   I_IO.Category:Book:Ada Programming/Pages containing deprecated templatesPut (Float'Machine_Emin);
   T_IO.Category:Book:Ada Programming/Pages containing deprecated templatesNew_Line;
   
   T_IO.Category:Book:Ada Programming/Pages containing deprecated templatesPut ("Emin of Long_Float type  = ");
   I_IO.Category:Book:Ada Programming/Pages containing deprecated templatesPut (Long_Float'Machine_Emin);
   T_IO.Category:Book:Ada Programming/Pages containing deprecated templatesNew_Line;

end Machine_Emin;

The output with GNAT 4.6 on the x86-64 architecture is:

Emin of Float type       =        -125
Emin of Long_Float type  =       -1021

See also

Wikibook

Ada Reference Manual

Category:Book:Ada Programming#Address Category:Book:Ada Programming/Representation attributes#Address
Category:Book:Ada Programming Category:Book:Ada Programming/Pages containing deprecated templates Category:Book:Ada Programming/Representation attributes