comp.lang.ada
 help / color / mirror / Atom feed
From: Georg Bauhaus <bauhaus@futureapps.de>
Subject: Re: How do you bitwise operations in Ada '83 and '95
Date: Thu, 20 Jul 2006 15:49:45 +0200
Date: 2006-07-20T15:49:21+02:00	[thread overview]
Message-ID: <1153403384.9119.40.camel@localhost.localdomain> (raw)
In-Reply-To: <20060720145730.F9651@docenti.ing.unipi.it>

On Thu, 2006-07-20 at 15:08 +0200, Colin Paul Gloster wrote:

>  the returned value from function 
> Shift_Left  (Value : Unsigned_96; Amount : Natural) return Unsigned_96 
> can not be assigned to a variable of type Time is mod 2 ** 96 without 
> conversion.

type Time is new Unsigned_96;

In fact,
  type Time is private;
and then the above.

> As another example, suppose one did not have type Time and wanted
> Interfaces.Unsigned_96 but Interfaces.Unsigned_96 did not exist in one 
> particular implementation but e.g. Interfaces.Unsigned_128 did. The code 
> relying on Interfaces.Unsigned_96 would not work on that implementation. 

OK, that is a good point when the program is operating on modular
numbers or bit sets.
But if an algorithm is about shifting bits really, then why
not use the subprograms that say "Shift_zzzz" in their names, and
that were made for shifting bits?
If there is room for even more than 96 bits in modular numbers,
I'd say that "easily ported" (from a 96 bit system to a 128 bit
system) is a better description than "unportable".
I guess for the "*" -> shift optimization to work in the general case,
the **2 factors will have to be statically known anyway. (They are,
in MAA's program.)






  parent reply	other threads:[~2006-07-20 13:49 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <9315684D-C216-4EDA-8852-0A6BD4C275B0@amado-alves.info>
2006-07-19 22:30 ` How do you bitwise operations in Ada '83 and '95 Marius Amado-Alves
2006-07-20  7:40   ` Georg Bauhaus
2006-07-20  9:29     ` Colin Paul Gloster
2006-07-20 12:31       ` Georg Bauhaus
2006-07-20 13:08         ` Colin Paul Gloster
2006-07-20 13:29           ` Marius Amado-Alves
2006-07-20 13:49           ` Georg Bauhaus [this message]
2006-07-21  5:23             ` Colin Paul Gloster
2006-07-21  8:00               ` Georg Bauhaus
2006-07-20  9:03   ` Stephen Leake
2006-07-20  9:38     ` Marius Amado-Alves
2006-07-21  9:53       ` Stephen Leake
2006-07-20 11:31     ` Dmitry A. Kazakov
2006-07-20 13:18       ` Marius Amado-Alves
2006-07-21  9:58       ` Stephen Leake
2006-07-21 12:09         ` Dmitry A. Kazakov
2006-07-21 19:03           ` Simon Wright
2006-07-22  8:32             ` Dmitry A. Kazakov
2006-07-22  8:57               ` Simon Wright
2006-07-22 10:52               ` Georg Bauhaus
2006-07-22 13:31                 ` Dmitry A. Kazakov
     [not found] <CD6E3BB8-52D2-4EED-A790-0184FE56A99A@amado-alves.info>
2006-07-20 20:41 ` Marius Amado-Alves
2006-07-20 23:13   ` Randy Brukardt
2006-07-21  5:38     ` Marius Amado-Alves
2006-07-21 22:09       ` Randy Brukardt
     [not found] <BFF12262-F906-4F9A-B867-D0373609F038@amado-alves.info>
2006-07-20 16:40 ` Marius Amado-Alves
2006-07-20  9:39 Fwd: " Marius Amado-Alves
2006-07-20 17:54 ` tmoran
2006-07-20 18:30   ` Marius Amado-Alves
2006-07-20 19:36     ` tmoran
2006-07-20 22:09       ` Simon Wright
2006-07-21 10:07         ` Stephen Leake
2006-07-21 19:09           ` Simon Wright
2006-07-21 19:45             ` tmoran
2006-07-23 15:59             ` Stephen Leake
2006-07-24  6:08               ` Simon Wright
     [not found] <1153244316.853254.291560@m79g2000cwm.googlegroups.com>
2006-07-18 18:45 ` Robert A Duff
2006-07-18 18:53 ` jimmaureenrogers
2006-07-18 19:22   ` Jeffrey R. Carter
2006-07-18 21:32     ` jimmaureenrogers
2006-07-19  0:40       ` Jeffrey R. Carter
2006-07-19  3:55         ` jimmaureenrogers
2006-07-19  4:37           ` Jeffrey R. Carter
2006-07-19 13:05             ` jimmaureenrogers
2006-07-19 19:43               ` Jeffrey R. Carter
2006-07-19 14:41             ` Robert A Duff
     [not found]             ` <1153313832.389434.144930@s13g2000cwa.googlegroups.com>
2006-07-19 13:55               ` Georg Bauhaus
2006-07-19 14:20               ` Robert A Duff
2006-07-19 19:30               ` Jeffrey R. Carter
2006-07-18 19:21 ` Jeffrey R. Carter
2006-07-19  3:01 ` tmoran
replies disabled

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