[ Arithmetic | Reference Manual | Alphabetic Index ]
setbit(+Number, +Index, -Result)
-Result is setbit(+Number, +Index)
Result is Number with the Index'th bit set.
- Number
- Integer.
- Index
- Non-negative integer.
- Result
- Output: integer.
Description
Set the Index'th bit in Number giving Result. The least significant
bit has index zero. Two's complement representation is assumed.
This predicate can be used as a function in arithmetic expressions.
In coroutining mode, if Number or Index are uninstantiated, the call
is delayed until these variables are instantiated.
Modes and Determinism
Exceptions
- (4) instantiation fault
- Number or Index is not instantiated (non-coroutining mode only).
- (5) type error
- Number or Index is a number but not an integer.
- (24) number expected
- Number or Index is not of a numeric type.
Examples
Result is setbit(0, 3). % gives Result = 8
Result is setbit(1, 8). % gives Result = 257
Result is setbit(setbit(0,3),5). % gives Result = 40
See Also
is / 2, clrbit / 3, getbit / 3, lsb / 2, msb / 2, popcount / 2, << / 3