bijectieve bit functies

Status
Niet open voor verdere reacties.

tom dierickx

Nieuwe gebruiker
Lid geworden
25 jun 2008
Berichten
3
Geachte,

Voor mijn huidig hobby-programmeerproject heb ik een kort stukje code nodig dat een zeer specifiek doel dient. Mijn probleem is niet dat ik het niet kan programmeren, maar wel dat ik geen efficiënte oplossing vind. Ik schets het probleem hieronder.

Ik zoek twee functies die twee items bijectief in elkaar transformeren.

1) Een 64 bit integer met allemaal 0'en of slechts één 1 op positie 24 tot 39 (dus op de middelste 16 bits van het variabel). --> 17 mogelijkheden


2) Diezelfde 64 bit integer waarin slechts de eerste 8 bits mogen gebruikt worden. In principe volstaan 5 bits voor bijectiviteit, maar 8 bits geeft meer ontwerpvrijheid voor topprestaties. 8 bits is evenwel het maximum.


Ik zoek dus 2 functies die deze twee items bijectief in elkaar omzetten in een recordtempo.... een handigheidje met bit operatoren dus.

Het kader van deze vraag is een schaakcomputer die steunt op bitboard technologie. Voor de geïnteresseerde wil ik hier wel een stukje code posten. Ik hoop alvast op een elegante en snelle oplossing!

Met vriendeljke groeten

Tom Dierickx
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan