27

ほとんどの言語 (Ruby を含む) では、数値リテラルを少なくとも 3 つの基数 (10 進数、8 進数、16 進数) で記述することができます。10進数の数字は通常のものであり、(ほとんどの)人が自然に数字を書くように書かれています.96は96. ゼロで始まる数値は通常、8 進数として解釈されます。96 は0140. 16 進数ベースの数値は、通常、接頭辞0xとして : 96 を書きます0x60

問題は、Ruby で数値を 2 進リテラルとして記述できるかどうかです。どのように?

4

4 に答える 4

50

0bプレフィックスを使用

>> 0b100
=> 4
于 2008-09-19T12:36:28.513 に答える
15

そしてあなたはすることができます:

>> easy_to_read_binary = 0b1110_0000_0000_0000
=> 57344
>> easy_to_read_binary.to_s(10)
=> "57344"
于 2009-08-12T18:25:25.373 に答える
13

リテラルの場合、プレフィックスは 0b です。そう

0b100 #=> 4

文字列をフォーマットするために同じことが存在することに注意してください。

"%b" % 4 #=> "100"
于 2008-09-19T14:38:08.427 に答える
8

このマニュアルから

0b01011

2進整数

于 2008-09-19T12:35:56.270 に答える