27

大多数语言(包括 Ruby)允许以至少三种基数编写数字文字:十进制、八进制和十六进制。以十进制为基数的数字是通常的事情,并且写成(大多数)人自然写数字,96 写成96。以零为前缀的数字通常被解释为基于八进制:96 将被写为0140. 基于十六进制的数字通常带有前缀0x: 96 将被写为0x60.

问题是:我可以在 Ruby 中将数字写成二进制文字吗?如何?

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

二进制整数

于 2008-09-19T12:35:56.270 回答