From: "Henrik Härkönen" <heharkon@gmail.com>
Subject: Examining individual bytes of an integer
Date: Sun, 14 Oct 2018 12:15:09 -0700 (PDT)
Date: 2018-10-14T12:15:09-07:00 [thread overview]
Message-ID: <9d90fa3e-f800-4086-bf97-a65474a8140a@googlegroups.com> (raw)
I'd like to examine individual bytes of larger (in bit size) integer type. In C would probably move byte pointer etc. Also I'd need to have a way to construct the integer from individual bytes.
Would this be "the Ada-way", the Unchecked_Conversion?
---8<---
procedure Main is
type Byte is mod 256;
type Word is mod 2 ** 32;
type E2 is array(1 .. 4) of Byte;
Z: Word;
Y: E2;
function Convert_To_E2 is new Ada.Unchecked_Conversion (Source => Word,
Target => E2);
function Convert_To_Word is new Ada.Unchecked_Conversion (Source => E2,
Target => Word);
begin
Y := Convert_To_E2(Word(435343));
Z := Convert_To_Word(Y);
end Main;
--->8---
At least that looks nice and neat, I could also use record with assigned names to bytes if necessary.
-Henrik
next reply other threads:[~2018-10-14 19:15 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-10-14 19:15 Henrik Härkönen [this message]
2018-10-14 19:55 ` Examining individual bytes of an integer Jeffrey R. Carter
2018-10-14 21:28 ` Niklas Holsti
2018-10-15 10:18 ` AdaMagica
2018-10-15 18:43 ` Niklas Holsti
2018-10-15 20:18 ` Randy Brukardt
2018-10-16 10:18 ` AdaMagica
2018-10-16 11:55 ` Dmitry A. Kazakov
2018-10-16 22:35 ` Randy Brukardt
2018-10-17 8:10 ` Dmitry A. Kazakov
2018-10-17 9:47 ` briot.emmanuel
2018-10-17 10:04 ` Dmitry A. Kazakov
2018-10-17 21:57 ` Randy Brukardt
2018-10-16 22:33 ` Randy Brukardt
2018-10-17 6:51 ` Niklas Holsti
2018-10-17 22:01 ` Randy Brukardt
2018-10-17 8:17 ` Dmitry A. Kazakov
2018-10-17 22:03 ` Randy Brukardt
2018-10-17 22:10 ` Randy Brukardt
2018-10-18 8:01 ` Dmitry A. Kazakov
2018-10-18 9:33 ` AdaMagica
2018-10-18 21:18 ` Randy Brukardt
2018-10-19 6:27 ` Niklas Holsti
2018-10-19 8:28 ` AdaMagica
2018-10-19 16:38 ` Niklas Holsti
2018-10-14 21:04 ` Niklas Holsti
2018-10-15 7:49 ` Niklas Holsti
2018-10-15 8:55 ` Simon Wright
2018-10-15 10:52 ` Björn Lundin
2018-10-14 23:42 ` Matt Borchers
2018-10-14 23:45 ` Matt Borchers
2018-10-15 9:02 ` Simon Wright
2018-10-15 7:29 ` Dmitry A. Kazakov
2018-10-15 9:05 ` Simon Wright
2018-10-15 16:11 ` Simon Wright
2018-10-15 20:27 ` Randy Brukardt
2018-10-15 5:37 ` Henrik Härkönen
2018-10-15 7:42 ` Dmitry A. Kazakov
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox