Re: Bit Swizzling

Chris <>
Sun, 06 Sep 2020 17:48:58 +0100

          From comp.compilers

Related articles
Bit swizzling (Rick C. Hodgin) (2020-09-05)
Re: Bit swizzling (Hans-Peter Diettrich) (2020-09-05)
Re: Bit Swizzling (John Levine) (2020-09-05)
Re: Bit swizzling (Kaz Kylheku) (2020-09-05)
Re: Bit swizzling ( (2020-09-06)
Re: Bit Swizzling (Chris) (2020-09-06)
Re: Bit swizzling (Martin Ward) (2020-09-07)
Re: Bit swizzling (Rick C. Hodgin) (2020-09-07)
Re: Bit swizzling (Hans-Peter Diettrich) (2020-09-08)
Re: Bit swizzling (Tom Crick) (2020-09-08)
Re: Bit swizzling (gah4) (2020-09-10)
Re: Bit swizzling (Rick C. Hodgin) (2020-09-10)
| List of all articles for this month |

From: Chris <>
Newsgroups: comp.arch,comp.compilers
Date: Sun, 06 Sep 2020 17:48:58 +0100
Organization: NNTP Server
References: <riumcj$3j9$> <rivvah$1neg$> 20-09-014 20-09-016
Injection-Info:; posting-host=""; logging-data="79013"; mail-complaints-to=""
Keywords: optimize, hardware, comment
Posted-Date: 06 Sep 2020 13:20:15 EDT

On 09/05/20 19:50, John Levine wrote:
> In article<rivvah$1neg$>,
>>> -----
>>> Are there any algorithms which take a known-at-compile-time sequence
>>> of bitwise operations on an 8-bit to 64-bit quantity, and optimize
>>> them down to their minimal set of operations?
>> Why not just use a lookup table ?. Minimum ops and fast...
> Assuming you're looking for something you can implement in logic
> rather than by table lookup, it sounds like a set of Karnaugh maps.

Unless this is just an intellectual exercise for the fun of it, an
engineer would choose the minimal design at lowest cost to
satisfy the requirements. Table methods don't have to be in
software as a single eprom or gate array could do it in hardware.
8 inputs to address lines, then 8 bits of output, scale as required,
so why make life more difficult than necessary ?.

Old project here, where a programmer spent nearly 5 pages of 6800
asm to translate an input connect pin layout to that required for
the internal functions. Code was impenetrable, so substituted a
256 byte lookup table. Less space that the code and easily
modified for new requirements...

[I think the question is whether there is a way to mechanically
generate a version of the opaque assembler. -John]

Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.