comp.lang.ada
 help / color / mirror / Atom feed
From: "Robert I. Eachus" <rieachus@attbi.com>
Subject: Re: float with 24-bit resolution
Date: Sat, 16 Aug 2003 03:42:23 GMT
Date: 2003-08-16T03:42:23+00:00	[thread overview]
Message-ID: <3F3DA81B.2070701@attbi.com> (raw)
In-Reply-To: Yh4%a.148778$o%2.63694@sccrnsc02

Jeffrey Creem wrote:
> <mailbox@adrianhoe.nospam.com.my> wrote in message
> news:3F3CCB0F.543478AF@adrianhoe.nospam.com.my...
> 
>>Hi,
>>
>>I looked through the LRM and searched CLA but I could not find any
>>solution. Perhaps I've overlook somewhere.
>>
>>I need a float with 24-bit resolution. My data needs to be encoded into
>>24 bits at a scaling of 720 degrees / 2^24 bits with the most
>>significant bit being the sign bit. This results in a value that ranges
>>from +359.9999571 degrees (0x7FFFFF) to -360.0000000 degrees (0x800000)
>>at increments of approximately 4.291534424e-5 degrees per bit.
> 
> 
> This does not sound anything like a float at all. It sounds much more like a
> typical implementation of a fixed point type. Something along the lines of
> 
> package My_Pack is
> 
> The_Delta : constant := 4.291534424e-5;
> 
>   type Probably_Gonna_Work_But_Language_Lawyers_Will_Complain_Type is delta
> The_Delta range - 360.0 .. 359.9999571;
>   for  Probably_Gonna_Work_But_Language_Lawyers_Will_Complain_Type'Small use
> The_Delta;
>   for Probably_Gonna_Work_But_Language_Lawyers_Will_Complain_Type'Size use
> 24;

Okay, I'll complain. ;-)  You can declare the type as

   type Probably_Gonna_Work_But_Language_Lawyers_Will_Complain_Type is 

          delta The_Delta range - 360.0 .. 360.0;

but if you don't want to, you are much more likely to get exactly what 
you want, and have the users understand it as well, if you say:

   The_Delta : constant := 720.0/2**24;

   type Gonna_Work_And_Language_Lawyers_Will_Not_Complain_Type is
          delta The_Delta range - 360.0 .. 360.0 - The_Delta;
   for Gonna_Work_And_Language_Lawyers_Will_Not_Complain_Type'Size
          use 24;



--
                                              Robert I. Eachus

"As far as I'm concerned, war always means failure." -- Jacques Chirac, 
President of France
"As far as France is concerned, you're right." -- Rush Limbaugh




  parent reply	other threads:[~2003-08-16  3:42 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-08-15 11:59 float with 24-bit resolution mailbox
2003-08-15 12:24 ` Jeffrey Creem
2003-08-15 12:52   ` Adrian Hoe
2003-08-15 12:54     ` Adrian Hoe
2003-08-15 15:01       ` Jeffrey Creem
2003-08-16 15:29         ` Matthew Heaney
2003-08-15 13:39     ` Mark Johnson
2003-08-15 16:56       ` Robert I. Eachus
2003-08-15 18:08         ` Mark Johnson
2003-08-16  3:30           ` Robert I. Eachus
2003-08-18 13:39             ` Mark Johnson
2003-08-20 21:12               ` Robert I. Eachus
2003-08-21 13:38                 ` Mark Johnson
2003-08-16 15:32         ` Matthew Heaney
2003-08-16 15:26     ` Matthew Heaney
2003-08-15 19:56   ` Simon Wright
2003-08-16  4:21     ` Adrian Hoe
2003-08-16 12:59       ` Jeffrey Creem
2003-08-16 15:35     ` Matthew Heaney
2003-08-17 11:40       ` Simon Wright
2003-08-17 13:46         ` Matthew Heaney
2003-08-18  5:05       ` Adrian Hoe
2003-08-18 13:14         ` Matthew Heaney
2003-08-19  3:09           ` Adrian Hoe
2003-08-19 13:00             ` Matthew Heaney
2003-08-30  5:02           ` Randy Brukardt
2003-09-02 16:05             ` Adrian Hoe
2003-09-03  3:31               ` Matthew Heaney
2003-09-03 20:46                 ` Simon Wright
2003-09-04  1:43                   ` Randy Brukardt
2003-09-04  9:53                     ` Jean-Pierre Rosen
2003-09-05  3:46                       ` Randy Brukardt
2003-09-05 17:16                     ` Warren W. Gay VE3WWG
2003-09-05 19:37                       ` Randy Brukardt
2003-09-06 20:48                         ` Warren W. Gay VE3WWG
2003-09-08  7:53                         ` Dmitry A. Kazakov
2003-09-04  1:45                 ` Randy Brukardt
2003-08-16  3:42   ` Robert I. Eachus [this message]
2003-08-16 15:38     ` Matthew Heaney
2003-08-16 16:36       ` Robert I. Eachus
2003-08-16 15:22 ` Matthew Heaney
2003-08-17 11:46   ` Simon Wright
2003-08-18 10:04     ` Martin Dowie
2003-08-20 19:53       ` Robert I. Eachus
2003-08-20 23:36         ` Ludovic Brenta
2003-08-21 13:54           ` Mark Johnson
2003-08-21 14:35             ` Ludovic Brenta
2003-08-22 14:07               ` Mark Johnson
2003-08-22 15:12                 ` Jean-Pierre Rosen
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox