任意のビット位置の値を参照する - lisp-cookbook-ja/common-lisp GitHub Wiki
数値
任意のビット位置の値を参照する
任意のビット位置の値を参照するにはldbを使用し、数値とバイト指定子を与えます。
(let ((i #x10)
(pos 0))
(ldb (byte 1 pos) i))
;=> 0
(let ((i #x10)
(pos 4))
(ldb (byte 1 pos) i))
;=> 1
任意のビット位置の値が1であるかを確かめるには、logbitpを使用します。
(let ((i #x10))
(logbitp 4 i))
;=> T