bitshift
指定したビット数のシフト
説明
は、格納されている整数値を c = bitshift(a,k)k ビット分シフトした fi オブジェクト a の値を返します。
シフトは b = a.*2^k のように動作する算術シフトで、b の値が入力 a の型にキャストされます。b のキャストにより、オーバーフローや精度の低下が発生する可能性があります。
a の OverflowAction プロパティは維持されますが、RoundingMethod は必ず Floor です。a の RoundingMethod プロパティの維持が重要である場合は、関数 pow2 を使用してください。
a のオーバーフロー アクションが Saturate である場合、符号ビットは常に保持されます。a のオーバーフロー アクションが Wrap である場合、k が負であれば符号ビットが保持されます。a のオーバーフロー アクションが Wrap で k が正である場合は、符号ビットが変わる可能性があります。
kが正である場合、値が 0 のビットは右側にシフトします。kが負、aが符号なしまたは符号付きの正のfiオブジェクトである場合、値が 0 のビットは左側にシフトします。kが負、aが符号付きおよび負のfiオブジェクトである場合、値が 1 のビットは左側にシフトします。
例
入力引数
出力引数
拡張機能
バージョン履歴
R2006a より前に導入