Ruby

sprintf の記号の覚え方 ( 2進数 / 6進数 / 10進数 / 16進数 )

%b = binary = 2進数

https://ja.wikipedia.org/wiki/%E3%83%90%E3%82%A4%E3%83%8A%E3%83%AA

バイナリ (binary) とは二進法のことであるが、コンピュータが処理・記憶するために2進化されたファイルまたはその内部表現の形式(バイナリデータ)のことを指して用いることが多い。

後者の意味で使うことが多いと思うが、バイナリという言葉自体が「二進」という意味である。

image.png

sprintf('%b', 30) # => "11110"

%o = octal = 8進数

オクトパスと語源が同じっぽい。

語源
「オクテット」(8組との意味)は、ラテン語やギリシャ語の数字の「octo-」から来ている。

https://ja.wikipedia.org/wiki/%E3%82%AA%E3%82%AF%E3%83%86%E3%83%83%E3%83%88_(%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF)

image.png

タコのキャラクター(魚) | かわいいフリー素材集 いらすとや

sprintf('%o', 30) # => "36"

%d = decimal number = 10進数

「デシリットル」と合わせると覚えやすいかもしれない。

image.png

[15] pry(main)> sprintf('%d', 30) # => "30"

%x = hexadecimal = hex = 16進数

hexは六角形のこと。

  • hexadecimal = hex + decimal
  • 「アルファベット6個」+「10進数」

と考えると覚えやすいかもしれない。

sprintf('%x', 30) # => "1e"