Ada Programming/Attributes/'Machine Radix
Description
editX'Machine_Radix is an Ada attribute where X is any floating or fixed point type. It returns the radix of the hardware representation of type X. On most machines this will be 2.
Machine_Radix is also an Ada aspect that may be set for decimal fixed point types via an attribute definition clause. The value is constrained to either 2 or 10.
Example
editwith
Ada.Text_IO;procedure
Machine_Radixis
package
T_IOrenames
Ada.Text_IO;package
I_IOis
new
Ada.Text_IO.Integer_IO (Integer);type
My_Fixed_Point_Typeis
delta
0.1range
-1.0 .. 1.0;type
My_Decimal_Typeis
delta
0.01digits
10;begin
T_IO.Put ("Radix of Float type = "); I_IO.Put (Float'Machine_Radix); T_IO.New_Line; T_IO.Put ("Radix of My_Fixed_Point_Type = "); I_IO.Put (My_Fixed_Point_Type'Machine_Radix); T_IO.New_Line; T_IO.Put ("Radix of My_Decimal_Type type = "); I_IO.Put (My_Decimal_Type'Machine_Radix); T_IO.New_Line;end
Machine_Radix;
The output with GNAT 4.6 on the x86-64 architecture is:
Radix of Float type = 2 Radix of My_Fixed_Point_Type = 2 Radix of My_Decimal_Type type = 2
See also
editWikibook
edit- Ada Programming
- Ada Programming/Attributes
- Ada Programming/Attributes/'Machine_Emax
- Ada Programming/Attributes/'Machine_Emin
- Ada Programming/Attributes/'Machine_Mantissa