Emscripten を使用してこのコードをコンパイルします。
#include <stdio.h>
int main() {
unsigned long d1 = 0x847c9b5d;
unsigned long q = 0x549530e1;
printf("%lu\n", d1*q);
return 0;
}
利回り ( を使用-g):
$d1=-2072208547; //@line 3 "minusmul.c"
$q=1419063521; //@line 4 "minusmul.c"
var $2=$d1; //@line 5 "minusmul.c"
var $3=$q; //@line 5 "minusmul.c"
var $4=((($2)*($3))|0); //@line 5 "minusmul.c"
js(SpiderMonkey だと思いますか?) または を使用してこれを実行するnodeと、結果が得られ3217488896ます。ネイティブ実行可能ファイル (GCC を使用してコンパイル) を実行すると、3217489085. JavaScript を使用して、x86 の符号なし 32 ビット整数の乗算をどのようにエミュレートしますか?