使用 Node.js 的示例
假设您有一个包含这些内容的文件(称为 multiply.js),您可以运行
`node multiply <number> <number>`
并获得与在相同的两个数字上使用乘法运算符一致的输出。函数中进行的位移Mulitply
是如何获取表示一个数字的位掩码并使用它来翻转另一个数字中的位以进行快速操作的示例。
var a, b, input = process.argv.slice(2);
var printUsage = function() {
console.log('USAGE:');
console.log(' node multiply <number> <number>');
}
if(input[0] === '--help') {+
printUsage();
process.exit(0);
}
if(input.length !== 2) {
printUsage();
process.exit(9);
}
if(isNaN(+input[0]) || isNaN(+input[1])) {
printUsage();
process.exit(9);
}
// Okay, safe to proceed
a = parseInt(input[0]),
b = parseInt(input[1]);
var Multiply = function(a,b) {
var x = a, y = b, z = 0;
while( x > 0 ) {
if(x % 2 === 1) {
z = z + y;
}
y = y << 1;
x = x >> 1;
}
return z;
}
var result = Multiply(a,b);
console.log(result);