スウィフトコードをJavascriptに変換しようとしていますが、スウィフトのこれらの演算子のいくつかがわからないためにバンプが発生しました。そのため、それを類似のJavascriptフォーム。ここでは、コードされています、port
はすでにスウィフト演算子の説明
private var portMasks = [UInt8](count: 3, repeatedValue: 0)
var newMask = UInt8(newState.rawValue * Int(powf(2, Float(pinIndex))))
portMasks[Int(port)] &= ~(1 << pinIndex) //prep the saved mask by zeroing this pin's corresponding bit
newMask |= portMasks[Int(port)] //merge with saved port state
portMasks[Int(port)] = newMask
data1 = newMask<<1; data1 >>= 1 //remove MSB
data2 = newMask >> 7 //use data1's MSB as data2's LSB
pinIndex
定義されているとの両方UInt8
です。
私は実際のコンバージョンを探していません - 自分でそれを行うことができます。これらの行のそれぞれが何を数学的/プログラム的な観点からしているのかの説明を探してください。
すべてのスウィフト演算子については、リファレンス:https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/AdvancedOperators.html#//apple_ref/doc/uid/TP40014097-CH27に詳しく記載されています。 -ID28。 –
このリンクをお寄せいただきありがとうございます!いくつかの演算子がありますが、 '> ='と '| ='がありません –
少なくともドキュメントを参照する前にSwiftに関する質問を投稿していませんでしたか? :) –