On Monday, 1 May 2017 at 15:45:00 UTC, bachmeier wrote:
I'm porting a small piece of Java code into D, but I've run into this:

int y1 = ((x12 & MASK12) << 22) + (x12 >>> 9) + ((x13 & MASK13) << 7) + (x13 >>> 24);

I have a basic understanding of those operators in both languages, but I can't find a sufficiently detailed explanation to tell me how to translate the Java into D and know that it's guaranteed to give the same result. Can someone tell me the correct D code to use?

It's the same code in D. It extracts consecutive bits in x12 and x13 (and maskxx), put them at the beginning (right shift) and add them.

Reply via email to