• ベストアンサー

二進数を勉強しているのですが、符号がいまいちよくわかりません。

二進数を勉強しているのですが、符号がいまいちよくわかりません。 言葉で伝えにくいのですが、5Bitで00111と書かれていたら十進数で7と分かるのですが、11100と書かれていたら-4なのか36なのか見分けられません。 こういうときはどうやって見分ければいいのでしょうか。 何か、捕捉で書かれているのでしょうか。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

結論:見分ける方法はありません。(補足でも記載されていません。) そもそも、0か1しか記録出来ないのに、「補足」という考え方がどうなのと思ってしまうのですが。。。 「11100」というデータの記録元・参照先の取り決めにより、どういう風に取り扱うべきか決まります。 「11100」の2の補数では-4ですが1の補数だと???です。 ※いま酒で酔っ払っているためルーピーです、???は自分で調べてください。 C言語等では「0x10000000」はcharに格納すると-128で、unsigned char に格納すると128?です。

tonyemly
質問者

お礼

回答ありがとうございます。 見分ける方法がないのは、残念です。 どうにかします。

その他の回答 (1)

  • denkiya19
  • ベストアンサー率50% (5/10)
回答No.2

えーと、まずは、何の為に二進数を勉強しているか? からなど分かれば、見分ける方法が分かるかも知れません。 ちなみに、 0b11100は、28とも読めれば、0x1chとも、-12とも-0xchとも読めるかも。

tonyemly
質問者

補足

コンピュータの勉強をしていて、それで二進数を勉強しています。

関連するQ&A

専門家に質問してみよう