0
私は16bitレジスタを持っています。ビット0の値に
ビット1で0 です... 2値は、ビット3の値で3
ビット4の端部に116bitレジスタから値を取得
だから値SSで1
あります (0 x 1)+(3 x 2)+(1 x 8)+(1 x 16)= 30
これで、値を取得するために逆にしたいと思いますiビット:
(30 &1)/ 1 = 0
(30 & 2)/ 2 = 1(これは間違っています私が間違ってやっている3)
(30 & 8)/ 8 = 1
(30 & 16)/ 16 = 1
すべきですか?
フムとあなたが
and
で....と私は同じような状況がありますが、いくつかの値はビット9にも存在する場合、この場合のレジスタの値が1054ビットであります9..10は値2を保持します。 – Josefちょうど9ビットだけシフトしました。紙の上にビットを書くとあなたが表示されます。一般的に、位置mにnビットを取得し、 '((1 << n) - 1)<< m」となるようにします –
ありがとうございました。これは私が必要としていたものです。 – Josef