Subject: Re: [boost] Fixed point integer proposal
From: Neal Becker (ndbecker2_at_[hidden])
Date: 2009-06-25 09:57:33
Patrick Mihelich wrote:
> On Wed, Jun 24, 2009 at 12:51 PM, Soren Holstebroe
>> Would there be public interest in a template like that in the boost
> Yes, very much so. My main use case is also image processing.
> It would be useful if you could compare your work to other
> implementations, such as:
> * Phil Endecott's related proposal last year, and the ensuing discussion:
> * Dr. Dobbs, "Fixed-Point Arithmetic Types for C++,"
> How are multiplication and division handled?
> Is overflow detection and/or saturation arithmetic supported?
I have posted here before some code based on constrained_value. One
difficulty with this area is that users have different opinions on what the
semantics should be.
For example, does a(24bit) x b(24bit) -> c(24bit), or c(48bit)?
My preference is to be explicit about these issues, meaning 24bit x 24bit ->
24 bit. If you want more, you cast the operands first. Similarly there
were some questions on division.
My implementation also uses boost::operators. In addition, I have 2
versions, one which the bit-widths are set at compile time, and the other
set at runtime (I use the latter to expose to python).
Since it is small, I am attaching the runtime version
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk