Skip to content

Instantly share code, notes, and snippets.

@Aleksey-Danchin
Created July 15, 2015 09:38
Show Gist options
  • Save Aleksey-Danchin/701742c6872c59d3e0a4 to your computer and use it in GitHub Desktop.
Save Aleksey-Danchin/701742c6872c59d3e0a4 to your computer and use it in GitHub Desktop.
Bitwise suma.
function sum (a, b) {
var c = [], buff = false;
for (var i = a.length - 1; i >= 0; i--)
if ((a[i] && b[i]) || (!a[i] && !b[i])) {
c.unshift(buff);
buff = a[i];
} else c.unshift(!buff);
if (buff) c.unshift(true);
return c;
}
// firstBitArray = 101101011011
// secondBitArray = 101111010001
// result = 1011100101100
var firstBitArray = [true, false, true, true, false, true, false, true, true, false, true, true];
var secondBitArray = [true, false, true, true, true, true, false, true, false, false, false, true];
var result = sum(firstBitArray, secondBitArray);
// result === [ true, false, true, true, true, false, false, true, false, true, true, false, false ]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment