On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
Programming
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Databases
Mail Systems
openSolaris
Eclipse Documentation
Techotopia.com
Virtuatopia.com

How To Guides
Virtualization
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Windows
Problem Solutions

Ruby Programming
Previous Page Home Next Page
class Bignum
 Parent: Integer Version: 1.6

### Index:

Arithmetic operations Bit operations <=> [ ] size to_f to_i to_s

`Bignum` objects hold integers outside the range of `Fixnum`. `Bignum` objects are created automatically when integer calculations would otherwise overflow a `Fixnum`. When a calculation involving `Bignum` objects returns a result that will fit in a `Fixnum`, the result is automatically converted.

For the purposes of the bitwise operations and `[]`, a `Bignum` is treated as if it were an infinite-length bitstring with 2's complement representation.

While `Fixnum` values are immediate, `Bignum` objects are not---assignment and parameter passing work with references to objects, not the objects themselves.

instance methods
Arithmetic operations

Performs various arithmetic operations on big.

 big + aNumeric Addition big -- aNumeric Subtraction big * aNumeric Multiplication big / aNumeric Division big % aNumeric Modulo big ** aNumeric Exponentiation

Bit operations

Performs various operations on the binary representations of the `Bignum`

 ~ big Invert bits big | aNumeric Bitwise OR big & aNumeric Bitwise AND big ^ aNumeric Bitwise EXCLUSIVE OR big << aNumeric Left-shift aNumeric bits big >> aNumeric Right-shift aNumeric bits (with sign extension)

<=> big <=> aNumeric -> -1, 0, +1

Comparison---Returns -1, 0, or +1 depending on whether big is less than, equal to, or greater than aNumeric. This is the basis for the tests in `Comparable`.

[ ] big[ n ] -> 0, 1

Bit Reference---Returns the nth bit in the (assumed) binary representation of big, where big[0] is the least significant bit.

 ```a = 9**15 50.downto(0) do |n|   print a[n] end ```
produces:
 ```000101110110100000111000011110010100111100010111001 ```

size big.size -> anInteger

Returns the number of bytes in the machine representation of big.

 `(256**10 - 1).size` � `12` `(256**20 - 1).size` � `20` `(256**40 - 1).size` � `40`

to_f big.to_f -> aFloat

Converts big to a `Float`. If big doesn't fit in a `Float`, the result is infinity.

to_i big.to_i -> big

Returns big.

to_s big.to_s -> aString

Returns a string containing the decimal representation of big.

Ruby Programming
Previous Page Home Next Page

 Published under the terms of the Open Publication License Design by Interspire