From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: 64-bit unsigned integer?
Date: Sun, 25 Feb 2018 13:41:58 +0100
Date: 2018-02-25T13:41:58+01:00 [thread overview]
Message-ID: <p6uaul$pfm$1@gioia.aioe.org> (raw)
In-Reply-To: e8c6d243-b919-4fc5-a6dc-aeb5e2042be9@googlegroups.com
On 2018-02-25 13:30, MM wrote:
> I'm trying to get an unsigned integer type of 64 bits without modular wraparound.
Unsigned integers and modular integers are same, mathematically at
least, considering the semantics of arithmetic operations.
What you want is a [signed] integer subtype of the range 0..2**64-1.
> type u64 is range 0 .. 2**64-1; -- this fails with "integer type definition bounds out of range".
This is the right method alas not supported by the architecture of the
machine you have.
> Is there a way to do it so can get an unsigned integer that will raise an exception if it overflows?
You must implement it yourself, e.g. on top of a modular or integer
type, or use an arbitrary length integer arithmetic package. There exist
a few in Ada.
--
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de
next prev parent reply other threads:[~2018-02-25 12:41 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-02-25 12:30 64-bit unsigned integer? MM
2018-02-25 12:41 ` Dmitry A. Kazakov [this message]
2018-02-25 12:54 ` MM
2018-02-25 13:23 ` Dmitry A. Kazakov
2018-02-25 13:59 ` MM
2018-02-25 14:20 ` Dmitry A. Kazakov
2018-02-25 15:34 ` MM
2018-02-25 16:35 ` Jeffrey R. Carter
2018-02-25 16:36 ` Anh Vo
2018-02-25 17:31 ` MM
2018-02-26 23:19 ` Randy Brukardt
2018-02-26 23:33 ` MM
2018-02-28 10:17 ` Paul Rubin
2018-02-28 10:39 ` J-P. Rosen
2018-02-28 10:59 ` Dmitry A. Kazakov
2018-02-28 23:20 ` Randy Brukardt
2018-03-01 5:47 ` Paul Rubin
2018-03-01 8:16 ` Niklas Holsti
2018-03-01 8:35 ` Simon Wright
2018-03-01 8:47 ` Dmitry A. Kazakov
2018-03-01 18:15 ` Dan'l Miller
2018-03-01 19:10 ` Dmitry A. Kazakov
2018-03-01 19:22 ` Dan'l Miller
2018-03-01 19:59 ` Dmitry A. Kazakov
2018-03-01 20:32 ` Dan'l Miller
2018-03-01 21:15 ` Dmitry A. Kazakov
2018-03-01 22:23 ` Randy Brukardt
2018-03-01 23:50 ` Robert Eachus
2018-03-01 20:06 ` Niklas Holsti
2018-03-01 22:04 ` Randy Brukardt
2018-02-26 6:45 ` Robert Eachus
2018-02-27 16:40 ` Dan'l Miller
2018-02-27 17:18 ` J-P. Rosen
2018-02-27 18:17 ` Dan'l Miller
2018-02-28 3:03 ` Robert Eachus
2018-02-28 6:41 ` J-P. 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