Transferred bit module documentation.

This commit is contained in:
Johny Mattsson 2016-01-05 16:07:29 +11:00
parent 3430e9faf6
commit ee23e46068
2 changed files with 172 additions and 0 deletions

171
docs/en/modules/bit.md Normal file
View File

@ -0,0 +1,171 @@
# bit Module
Bit manipulation support, on 32bit integers.
## bit.bnot()
Bitwise negation, equivalent to ~value in C.
####Syntax
`bit.bnot(value)`
####Parameters
value: the number to negate.
####Returns
number: the bitwise negated value of the number.
___
## bit.band()
Bitwise AND, equivalent to val1 & val2 & ... & valn in C.
####Syntax
`bit.band(val1, val2 [, ... valn])`
####Parameters
- `val1`: first AND argument.
- `val2`: second AND argument.
- `...valn`: ...nth AND argument.
####Returns
number: the bitwise AND of all the arguments.
___
## bit.bor()
Bitwise OR, equivalent to val1 | val2 | ... | valn in C.
####Syntax
`bit.bor(val1, val2 [, ... valn])`
####Parameters
- `val1`: first OR argument.
- `val2`: second OR argument.
- `...valn`: ...nth OR argument.
####Returns
number: the bitwise OR of all the arguments.
___
## bit.bxor()
Bitwise XOR, equivalent to val1 ^ val2 ^ ... ^ valn in C.
####Syntax
`bit.bxor(val1, val2 [, ... valn])`
####Parameters
- `val1`: first XOR argument.
- `val2`: second XOR argument.
- `...valn`: ...nth XOR argument.
####Returns
number: the bitwise XOR of all the arguments.
___
## bit.lshift()
Left-shift a number, equivalent to value << shift in C.
####Syntax
`bit.lshift(value, shift)`
####Parameters
- `value`: the value to shift.
- `shift`: positions to shift.
####Returns
number: the number shifted left
___
## bit.rshift()
Logical right shift a number, equivalent to ( unsigned )value >> shift in C.
####Syntax
`bit.rshift(value, shift)`
####Parameters
- `value`: the value to shift.
- `shift`: positions to shift.
####Returns
number: the number shifted right (logically).
___
## bit.arshift()
Arithmetic right shift a number equivalent to value >> shift in C.
####Syntax
`bit.arshift(value, shift)`
####Parameters
- `value`: the value to shift.
- `shift`: positions to shift.
####Returns
number: the number shifted right (arithmetically).
___
## bit.bit()
Generate a number with a 1 bit (used for mask generation). Equivalent to 1 << position in C.
####Syntax
`bit.bit(position)`
####Parameters
- `position`: position of the bit that will be set to 1.
####Returns
number: a number with only one 1 bit at position (the rest are set to 0).
___
## bit.set()
Set bits in a number.
####Syntax
`bit.set(value, pos1 [, ... posn ])`
####Parameters
- `value`: the base number.
- `pos1`: position of the first bit to set.
- `...posn`: position of the nth bit to set.
####Returns
number: the number with the bit(s) set in the given position(s).
___
## bit.clear()
Clear bits in a number.
####Syntax
`bit.clear(value, pos1 [, ... posn])`
####Parameters
- `value`: the base number.
- `pos1`: position of the first bit to clear.
- `...posn`: position of thet nth bit to clear.
####Returns
number: the number with the bit(s) cleared in the given position(s).
___
## bit.isset()
Test if a given bit is set.
####Syntax
`bit.isset(value, position)`
####Parameters
- `value`: the value to test.
- `position`: bit position to test.
####Returns
boolean: true if the bit at the given position is 1, false otherwise.
___
## bit.isclear()
Test if a given bit is cleared.
####Syntax
`bit.isclear(value, position)`
####Parameters
- `value`: the value to test.
- `position`: bit position to test.
####Returns
boolean: true if the bit at the given position is 0, false othewise.
___

View File

@ -30,6 +30,7 @@ pages:
- Support: 'en/support.md'
- Modules:
- 'adc': 'en/modules/adc.md'
- 'bit': 'en/modules/bit.md'
- 'crypto': 'en/modules/crypto.md'
- 'gpio': 'en/modules/gpio.md'
- 'node': 'en/modules/node.md'