binary {compositions} | R Documentation |

## Treating binary and g-adic numbers

### Description

Allows the access to individual digits in binary (and general g-adic) numbers.

### Usage

```
binary(x,mb=max(maxBit(x,g)),g=2)
unbinary(x,g=2)
bit(x,b,g=2)
## S3 method for class 'numeric'
bit(x,b=0:maxBit(x,g),g=2)
## S3 method for class 'character'
bit(x,b=0:maxBit(x,g),g=2)
bit(x,b,g=2) <- value
## S3 replacement method for class 'numeric'
bit(x,b=0:maxBit(x,g),g=2) <- value
## S3 replacement method for class 'character'
bit(x,b=0:maxBit(x,g),g=2) <- value
maxBit(x,g=2)
## S3 method for class 'numeric'
maxBit(x,g=2)
## S3 method for class 'character'
maxBit(x,g=2)
bitCount(x,mb=max(maxBit(x,g)),g=2)
gsi.orSum(...,g=2)
whichBits(x,mb=max(maxBit(x,g)),g=2,values=c(TRUE))
binary2logical(x,mb=max(maxBit(x,g)),g=2,values=c(TRUE))
```

### Arguments

`x` |
a number either represented a g-adic character string or as a integeral numeric value |

`b` |
the indicies of the bits to be processes. The least significant bit has index 0. |

`mb` |
maximal bit. The index of the most significant bit to be treated |

`g` |
the base of the g-adic representation. 2 corresponds to binary numbers, 8 to octal numbers, 16 to hexadecimal numbers. g is limited by 36. |

`value` |
a vector of bit values to be selected or setted. |

`values` |
a vector of bit values that should be considered as TRUE. |

`...` |
some binary numbers |

### Details

These routines are primerily intended to manipulate g-adic numbers for user interface purposes and condensed representation of information. They are not intended for a long number arithmetic.

### Value

`binary` |
returns a standard binary (or g-adic) character representation of the number |

`unbinary` |
returns a binary (or g-adic) representation of the number |

`bit` |
returns the values of the requested bits. The values are returned as a logical vector for binary numbers an as numeric digit values for other g-adic numbers. |

`maxBit` |
returns the most significant bit represented in the number. This is the highest bit set in numeric numbers and the highest actually given character in a character representation. |

`bitCount` |
returns the g-adic crossfoot of the number. For a binary number this is the number of bits set |

`gsi.orSum` |
Only works for binary numbers and does a parallel or on each of the bits for a list of binary numbers. |

`whichBits` |
returns the indices of the bits acutally set (or more
precisely of the bits with value in |

`binary2logical` |
returns the a true false vector of the bits
acutally set (or more
precisely of the bits with value in |

### Author(s)

K.Gerald v.d. Boogaart http://www.stat.boogaart.de

### See Also

### Examples

```
(x<-unbinary("10101010"))
(y<-binary(x))
bit(x,1:3)
bit(y,0:3)
maxBit(x)
maxBit(y)
whichBits(x)
whichBits(y)
binary2logical(y)
bit(x)
bit(y)
gsi.orSum(y,1)
bitCount(x)
bitCount(y)
bit(x,2)<-1
x
bit(y,2)<-1
y
```

*compositions*version 2.0-8 Index]