Warning: This is the manual of the legacy Guile 2.0 series. You may want to read the manual of the current stable series instead.

Next: , Previous: , Up: R6RS Standard Libraries   [Contents][Index]


7.6.2.21 rnrs arithmetic bitwise

The (rnrs arithmetic bitwise (6)) library provides procedures for performing bitwise arithmetic operations on the two’s complement representations of fixnums.

This library and the procedures it exports share functionality with SRFI-60, which provides support for bitwise manipulation of integers (see SRFI-60).

Scheme Procedure: bitwise-not ei
Scheme Procedure: bitwise-and ei1 ...
Scheme Procedure: bitwise-ior ei1 ...
Scheme Procedure: bitwise-xor ei1 ...

These procedures are identical to the lognot, logand, logior, and logxor procedures provided by Guile’s core library. See Bitwise Operations, for documentation.

Scheme Procedure: bitwise-if ei1 ei2 ei3

Returns the bitwise “if” of its arguments. The bit at position i in the return value will be the ith bit from ei2 if the ith bit of ei1 is 1, the ith bit from ei3.

Scheme Procedure: bitwise-bit-count ei

Returns the number of 1 bits in the two’s complement representation of ei.

Scheme Procedure: bitwise-length ei

Returns the number of bits necessary to represent ei.

Scheme Procedure: bitwise-first-bit-set ei

Returns the index of the least significant 1 bit in the two’s complement representation of ei.

Scheme Procedure: bitwise-bit-set? ei1 ei2

Returns #t if the ei2th bit in the two’s complement representation of ei1 is 1, #f otherwise.

Scheme Procedure: bitwise-copy-bit ei1 ei2 ei3

Returns the result of setting the ei2th bit of ei1 to the ei2th bit of ei3.

Scheme Procedure: bitwise-bit-field ei1 ei2 ei3

Returns the integer representation of the contiguous sequence of bits in ei1 that starts at position ei2 (inclusive) and ends at position ei3 (exclusive).

Scheme Procedure: bitwise-copy-bit-field ei1 ei2 ei3 ei4

Returns the result of replacing the bit field in ei1 with start and end positions ei2 and ei3 with the corresponding bit field from ei4.

Scheme Procedure: bitwise-arithmetic-shift ei1 ei2
Scheme Procedure: bitwise-arithmetic-shift-left ei1 ei2
Scheme Procedure: bitwise-arithmetic-shift-right ei1 ei2

Returns the result of shifting the bits of ei1 right or left by the ei2 positions. bitwise-arithmetic-shift is identical to bitwise-arithmetic-shift-left.

Scheme Procedure: bitwise-rotate-bit-field ei1 ei2 ei3 ei4

Returns the result of cyclically permuting the bit field in ei1 with start and end positions ei2 and ei3 by ei4 bits in the direction of more significant bits.

Scheme Procedure: bitwise-reverse-bit-field ei1 ei2 ei3

Returns the result of reversing the order of the bits of ei1 between position ei2 (inclusive) and position ei3 (exclusive).


Next: , Previous: , Up: R6RS Standard Libraries   [Contents][Index]