Thousands of tools! Check out Online Tools – I have now added thousands of tools.
I often have to generate a sequence of powers of two so I created this simple utility that does it for me. It lets you generate however many powers of two you need, starting from any value. It works in the browser and is powered by alien technology from the future.
Powers Of Two Generator Options
Powers Of Two Generator Examples (click to try!)
1; 2; 4; 8; 16; 32; 64; 128; 256; 512; 1024; 2048; 4096; 8192; 16384; 32768; 65536; 131072; 262144; 524288
0.5 0.25 0.125 0.0625 0.03125 0.015625 0.0078125 0.00390625 0.001953125 0.0009765625
111 1111 11111 111111 1111111 11111111 111111111 1111111111 11111111111 111111111111 1111111111111 11111111111111
How Does This Powers Of Two Generator Work?
This powers of two generator works entirely in your browser and is written in JavaScript. To generate a list of powers of two, it first parses and checks the options, such as the start
and count
. The start
ing value can be any power of two 2n
and to find the exponent n
, it uses the binary logarithm function log2(start)
from the decimal.js
library. As start
is 2n
, the function log2(2n)
finds the starting power n
and puts it in the startPower
variable. If the starting power is not an integer, it uses the toFixed(0, rm)
method, which turns the decimal into an integer using the rounding mode Decimal.ROUND_UP
or Decimal.ROUND_DOWN
. Next, it creates an empty array powersOfTwo = []
and starts a loop with the starting value i = startPower
and the condition powersOfTwo.length < count
. If the increasing sequence mode is selected, the counter variable increases i++
; if the decreasing sequence mode is selected, the counter decreases i--
. Another helper library bignumber.js
makes sure that the powers of two work with large numbers. Before the loop starts, another variable is setup two = new BigNumber(2)
and then inside the loop, two.pow(i)
is called to calculate 2i
. To turn a BigNumber value into a regular string, the toString(base)
function is used, where base
is the selected radix from 2 to 64. All the calculated values are push()
ed at the end of the powersOfTwo
array and before being printed to the screen, they are join(separator)
ed together (separator
is specified in options).
Created by Browserling
This powers of two generator was created by me and my team at Browserling. Behind the scenes, it's actually powered by our web developer tools that are used by millions of people every month. Browserling itself is an online cross-browser testing service powered by alien technology. Check it out!
Secret message: If you love my tools, then I love you, too! Use coupon code TOOLLING to get a discount at my company.