2.11BSD/man/cat3f/and.0
BIT(3F) UNIX Programmer's Manual BIT(3F)
NAME
bit - and, or, xor, not, rshift, lshift bitwise functions
SYNOPSIS
(intrinsic) function and (word1, word2)
(intrinsic) function or (word1, word2)
(intrinsic) function xor (word1, word2)
(intrinsic) function not (word)
(intrinsic) function rshift (word, nbits)
(intrinsic) function lshift (word, nbits)
DESCRIPTION
These bitwise functions are built into the compiler and
return the data type of their argument(s). Their arguments
must be integer or logical values.
The bitwise combinatorial functions return the bitwise
``and'' (and), ``or'' (or), or ``exclusive or'' (xor) of two
operands. Not returns the bitwise complement of its
operand.
_L_s_h_i_f_t, or _r_s_h_i_f_t with a negative _n_b_i_t_s, is a logical left
shift with no end around carry. _R_s_h_i_f_t, or _l_s_h_i_f_t with a
negative _n_b_i_t_s, is an arithmetic right shift with sign
extension. No test is made for a reasonable value of _n_b_i_t_s.
These functions may be used to create a variety of general
routines, as in the following statement function defini-
tions:
integer bitset, bitclr, getbit, word, bitnum
bitset( word, bitnum ) = or(word,lshift(1,bitnum))
bitclr( word, bitnum ) = and(word,not(lshift(1,bitnum)))
getbit( word, bitnum ) = and(rshift(word,bitnum),1)
FILES
These functions are generated in-line by the f77 compiler.
Printed 11/26/99 April 30, 1986 1