最近开始搞乱AArch64程序集,我注意到它有一个严格为零的指定寄存器,而(大多数)其他架构你只是xor var, var.
我正在阅读的网站zr将其解释为零的参考点,这听起来很像我在DC电子设备中定义地面的方式.并且因为ARM被业余爱好者使用,所以在代码中将电路中的接地归零对我来说是有意义的.
我敢肯定它比这复杂得多,但这是一个安全的类比吗?并且使用此寄存器与其他获得"0"的方法相比会产生不同的结果吗?
我正在尝试将一些JS转换为C#,我得到了这篇文章,但是无法弄清楚C#的等价物是什么.希望有人能指出我正确的方向?
我只需要帮助这两个函数的内容.$ iterator在另一个地方编码,但我猜测以下代码的C#版本不需要它.如果你需要我添加它,我可以.
这些函数被调用的上下文是:
var centers = Lambda.array(Lambda.map(this.hexes,function(hex) {
return me.hexToCenter(hex);
}));
Run Code Online (Sandbox Code Playgroud)
功能是:
var Lambda = function() { }
Lambda.array = function(it) {
var a = new Array();
var $it0 = $iterator(it)();
while( $it0.hasNext() ) {
var i = $it0.next();
a.push(i);
}
return a;
}
Lambda.map = function(it,f) {
var l = new List();
var $it0 = $iterator(it)();
while( $it0.hasNext() ) {
var x = $it0.next();
l.add(f(x));
}
return l;
}
Run Code Online (Sandbox Code Playgroud)