|
100精币
@oldleeC# 代码:
uint[] numArray = {3048352994, 2450463800, 316147747, 72362181};
uint v = 1621308139;
uint num3 = 1555151394;
uint num4 = 0;
uint num5 = 0x9e3779b9;
uint num6 = 0x10;
while (num6-- > 0)
{
num4 += num5;
v += (((num3 << 4) + numArray[0]) ^ (num3 + num4)) ^ ((num3 >> 5) + numArray[1]);
num3 += (((v << 4) + numArray[2]) ^ (v + num4)) ^ ((v >> 5) + numArray[3]);
}
Console.Write(v + " " + num3 + "\n");
Console.ReadKey();
输出结果:
3102704537 3321550359
-----------------------------------------------
易语言:
变量名 | 类 型 | 静态 | 数组 | 备 注 | numArray | 长整数型 | | 0 | v | 长整数型 | | | num3 | 长整数型 | | | num4 | 长整数型 | | | num5 | 长整数型 | | |
numArray = { 3048352994, 2450463800, 316147747, 72362181 }v = 1621308139 num3 = 1555151394 num4 = 0 num5 = 2654435769 计次循环首 (16, )num4 = num4 + num5 v = v + 位异或 (位异或 (左移 (num3, 4 ) + numArray [1 ], num3 + num4 ), 右移 (num3, 5 ) + numArray [2 ])num3 = num3 + 位异或 (位异或 (左移 (v, 4 ) + numArray [3 ], v + num4 ), 右移 (v, 5 ) + numArray [4 ])计次循环尾 ()调试输出 (GetLargeInteger (v ), GetLargeInteger (num3 )) 返回 (0 )|
GetLargeInteger | 长整数型 | | |
Integer | 整数型 | | | |
uint. 导入正整数 (Integer )返回 (到长整数 (uint. 取文本_10进制 ()) )
主要循环那边,怎样输出一样,被搞昏转了。。。
|
最佳答案
查看完整内容
[e=1].版本 2
.支持库 spec
.子程序 __启动窗口_创建完毕
.局部变量 numArray, 长整数型, , "0"
.局部变量 v, 长整数型
.局部变量 num3, 长整数型
.局部变量 num4, 长整数型
.局部变量 num5, 长整数型
numArray = { 3048352994, 2450463800, 316147747, 72362181 }
v = 1621308139
num3 = 1555151394
num4 = 0
num5 = 2654435769
.计次循环首 (16, )
num4 = num4 + num5
v = v + 大数位异或 (大数位异或 (大 ...
|