#

##
12.1.1.3.1 Logical Operations on Integers

Logical operations require *integers* as arguments; an error of *type* **type-error** should be signaled if an argument is supplied that is not an *integer*. *Integer* arguments to logical operations are treated as if they were represented in two's-complement notation.

The next figure shows *defined names* relating to logical operations on numbers.

ash boole-ior logbitp
boole boole-nand logcount
boole-1 boole-nor logeqv
boole-2 boole-orc1 logior
boole-and boole-orc2 lognand
boole-andc1 boole-set lognor
boole-andc2 boole-xor lognot
boole-c1 integer-length logorc1
boole-c2 logand logorc2
boole-clr logandc1 logtest
boole-eqv logandc2 logxor

**Figure 12-5. Defined names relating to logical operations on numbers.**

*Copyright 1996-2005, LispWorks Ltd. All rights reserved.*