「Lsh」の版間の差分

提供:GizmoLabs - だいたい CAD LISP なサイト
(ページの作成: ; 構文 : (lsh ''int'' ''numbits'') ; 機能 : 指定されたビット数だけ整数を論理的にビット シフトした結果を返す。 ; 引数 :* int : 整数。 :…)
 
編集の要約なし
 
(同じ利用者による、間の2版が非表示)
1行目: 1行目:
{{AutoLISP}}
; 構文
; 構文
: (lsh ''int'' ''numbits'')
: (lsh ''int'' ''numbits'')
5行目: 6行目:
; 機能
; 機能
: 指定されたビット数だけ整数を論理的にビット シフトした結果を返す。
: 指定されたビット数だけ整数を論理的にビット シフトした結果を返す。


; 引数
; 引数
13行目: 15行目:
::: どちらの場合も、シフトの結果として入ってくるビットは 0(ゼロ)で、出ていくビットは破棄される。
::: どちらの場合も、シフトの結果として入ってくるビットは 0(ゼロ)で、出ていくビットは破棄される。
::: numbits 引数を指定しなかった場合、シフトは行われない。
::: numbits 引数を指定しなかった場合、シフトは行われない。


; 戻り値
; 戻り値
38行目: 41行目:
-----
-----
関連事項
関連事項
*  
* [[logand]] 関数
* [[logior]] 関数
* [[lsh]] 関数
* [[boole]] 関数
 
 


[[Category:AutoLISP]]
[[Category:AutoLISP]]

2022年4月24日 (日) 08:48時点における最新版

構文
(lsh int numbits)


機能
指定されたビット数だけ整数を論理的にビット シフトした結果を返す。


引数
  • int : 整数。
  • numbits : int をシフトするビット数。
numbits 引数が正の場合、int は左にシフトされる。
numbits 引数が負の場合、int 引数は右にシフトされる。
どちらの場合も、シフトの結果として入ってくるビットは 0(ゼロ)で、出ていくビットは破棄される。
numbits 引数を指定しなかった場合、シフトは行われない。


戻り値
ビット シフト後の int 引数の値。 シフト演算後に符号ビット(ビット 31)が 0(ゼロ)になった場合、戻り値は正になる。1 の場合は負になる。引数を何も指定しなかった場合、 0(ゼロ)を返す。
  • 32 より多く左へシフト(32 ビット整数を)した場合、結果が 0になる他の言語(C、C++、Java の >> および <<)とは異なった動作をする。右シフトも同様だが、numbits 引数は、32 で割ったときの剰余とみなされる。


サンプル
(lsh 2 1)
4
---
(lsh 2 -1)
1
---
(lsh 40 2)
160
---
(lsh 8 -1)
4
---
(lsh 24 3)
192



関連事項