これは正確にはプログラミングの質問ではないことはわかっていますが、私にとっては主題に関連しています。テキストだけで異なる数体系をどのように表しますか? (テキストとは、適切な速度で入力でき、別のプログラムからコピーして貼り付けることができないことを意味します。)たとえば、基数2の数値がある場合、他の人が基数2であることを理解できるように入力するにはどうすればよいですか。紙の上では、(1001)2 のようなことができます。ここで、2 は小さいインデックスです。他の人が下付き文字として理解できるように、2 の前に入力しなければならない特定の記号はありますか? (累乗はこれに記号 ^ を使用します。) それとも、すべてがランダムで、標準が存在しないのでしょうか?
5871 次
5 に答える
4
多くのプログラミング言語の慣習は
0b1001
ここで、「b」はバイナリを示します。その他の規則には、16進数の場合は0xで始まり、8進数の場合は0(他の数字が続く)で始まることが含まれます。
于 2010-09-21T19:39:40.430 に答える
3
16 進数の場合は、接頭辞0x
.
0xFF
バイナリの場合、0b
0b101
オクタルの場合、0o
0o44
または、より明確にしますか?
dec(123)
hex(0AF)
bin(101)
oct(111)
于 2010-09-21T19:44:17.720 に答える
2
私が見た規則では、キャレットが上付き文字 (累乗の場合) を示すのと同様に、アンダースコアは下付き文字を示します。したがって、例を ASCII に変換する最も「文字通りの」方法は 1001_2 です。ただし、JacobM には同意します。0b プレフィックスは明確であり、誤解される可能性はほとんどありません。
于 2010-09-21T19:44:43.023 に答える
0
これの多くは、最終的にデータをどのように/なぜ/何をしたいかによって決まると思います。
私にとって、^ は入力が簡単なので論理的に使用できますが、表記法に慣れていない人は間違って解釈する可能性があります。
于 2010-09-21T19:33:27.087 に答える
0
ベースの表記は、プログラミング言語によって異なります (この質問へのコメントで言っていたように)。
- 10 進表記がデフォルトになりがちです (特定の表記はありません)。
#
16 進数は接頭辞or0x
または接尾辞を使用する傾向がありh
ます:0xA0
、#A0
またはA0h
.- 一部の言語では、
0
接頭辞を使用して 8 進数表記を表します (例:0777
)。 - 2 進表記はあまり一般的ではありません (代わりに 16 進表記が使用されることがよくあります。これは、表記が少しコンパクトになり、最終的にオクテットに適切なパディングが使用されるためです)。ただし、
0b1010
またはを使用できます1010b
。繰り返しますが、これは言語と、コンパイラがサポートしているかどうかによって異なります。
上記のすべては、プログラミング言語に依存します。テキストで書くだけの場合は、これらの規則のいずれかで十分です。もちろん、本を書いているのであれば、途中で使用している規則を変更しないでください...
于 2010-09-21T19:46:01.600 に答える