![[LISPWORKS]](../Graphics/LWSmall.gif)
![[Common Lisp HyperSpec (TM)]](../Graphics/CLHS_Sm.gif) 
 ![[Previous]](../Graphics/Prev.gif)
![[Up]](../Graphics/Up.gif)
![[Next]](../Graphics/Next.gif)
Syntax:
bit bit-array &rest subscripts => bit
sbit bit-array &rest subscripts => bit
(setf (bit bit-array &rest subscripts) new-bit)
(setf (sbit bit-array &rest subscripts) new-bit)
Arguments and Values:
bit-array---for bit, a bit array; for sbit, a simple bit array.
subscripts---a list of valid array indices for the bit-array.
bit---a bit.
Description:
bit and sbit access the bit-array element specified by subscripts.
These functions ignore the fill pointer when accessing elements.
Examples:
 (bit (setq ba (make-array 8 
                            :element-type 'bit 
                            :initial-element 1))
       3) =>  1
 (setf (bit ba 3) 0) =>  0
 (bit ba 3) =>  0
 (sbit ba 5) =>  1
 (setf (sbit ba 5) 1) =>  1
 (sbit ba 5) =>  1
 
Affected By: None.
Exceptional Situations: None.
See Also:
aref, Section 3.2.1 (Compiler Terminology)
Notes:
bit and sbit are like aref except that they require arrays to be a bit array and a simple bit array, respectively.
bit and sbit, unlike char and schar, allow the first argument to be an array of any rank.
![[Starting Points]](../Graphics/StartPts.gif)
![[Contents]](../Graphics/Contents.gif)
![[Index]](../Graphics/Index.gif)
![[Symbols]](../Graphics/Symbols.gif)
![[Glossary]](../Graphics/Glossary.gif)
![[Issues]](../Graphics/Issues.gif)