bits()

Read(1514) Label: decimal, numeric,

Description:

Convert a number represented by a certain number system to a decimal number.

Syntax:

bits(xi,…)

Note:

The function converts a number of a certain number system to a decimal integer according to a specific rule. Parameter xi represents the value in the ith position of the number counted from right to left. When no option is present the function converts a binary number to a decimal number.

 

When there is only one parameter xi and xi is a sequence, write the parameter in the form of x1 , x2 ,…xi.

 

If there is only a single xi and it is a string, split it into a sequence of single characters first, and then perform the conversion.

number system

Parameter:

xi

An integer/string.

Option:

@h

Convert xi to integer decimal number according to the rules of hexadecimal number system if it is the string.

@d

First convert xi to an integer if it is the string and then perform the operation according to rules of decimal number system.

@b

Convert to 0 if parameter xi is false and to 1 if the parameter is true, and then convert them to a decimal number according to the rules of binary system.

@s

Should work with other options to return the string forming the number of the corresponding number system.

@n

Convert to a long integer.

@r

Put lower bits before higher bits.

Return value:

Numeric value/string

Example:

  Convert from binary to decimal:

 

A

 

1

=bits(1,0,1,1)

11. As no options work, covert binary to decimal.

2

=bits([1,0,1,1])

11. As the one parameter is a sequence, take members of the sequence as parameter values; in this case the operation is equivalent to bits(1,0,1,1).

3

=bits("1","0","1","1")

11. As the parameters are strings, first convert them to an integer and to decimal according to rules of binary system.

4

=bits("1011")

11. As the one parameter is a string, split it into a sequence of single characters; in this case the operation is equivalent to bits([1,0,1,1]).

 

Convert hexadecimal to decimal:

 

A

 

1

=bits@h("A",1,1,5)

@h option works to convert hexadecimal number A115 to decimal and the result is 41237.

 

With @d option:

 

A

 

1

=bits@d("1","0","1","5")

1015. As parameters are strings, first convert them to an integer and then to decimal.

 

With @b option:

 

A

 

1

=bits@b(true,false,true)

5. The operation convert binary number 101 to decimal.

 

Put lower bits before higher bits:

 

A

 

1

=bits@r(0XBB0D8196)

3138224534

 

Convert to long integer:

 

A

 

1

=67546523567

 

2

=bits@n(67546523567)

Return a long type:

 

With @s option:

 

A

 

1

=bits@sd(1212)

1212. Get the decimal string forming 1212.

2

=bits@sh(1212)

4bc. Get the hexadecimal string forming 1212.