使用 JavaScript 计算奇偶校验位并将其添加到二进制文件中
奇偶校验位
奇偶校验位或校验位是添加到位串中的位,以确保串中1位的总数是偶数或奇数。
问题
我们需要编写一个JavaScript函数,它接受两个参数,一个是想要的奇偶校验(总是“偶数”或“奇数”),另一个是我们要检查的数字的二进制表示。
我们函数的任务是返回一个整数(0或1),这是我们需要添加到二进制表示中的奇偶校验位,以便结果字符串的奇偶校验符合预期。
示例
以下是代码-
const parity = 'even'; const bin = '0101010'; const findParity = (parity, bin) => { const arr = bin .toString() .split(""); let countOnes = 0; let res = 0; for (let i = 0; i < arr.length; i++) { if (arr[i] == 1) { countOnes += 1; } }; if (parity == 'even') { if (countOnes%2 == 0) { res = 0; } else { res = 1; } } else { if (countOnes%2 !== 0) { res = 0; } else { res = 1; } }; return res; }; console.log(findParity(parity, bin));输出结果
1