• 締切済み

16ビットが65536バイト?

来週のIPAのテストに向けて勉強中です。 来週なのにわからないことだらけで焦っています。 8ビットが1バイトですよね? IPパケット長のフィールドが16ビット、つまり2バイトです。 16ビットで表すことのできるができる大きさは2^16=65536ということも理解できます。 が、単位は何になるのでしょうか? いろいろなテキストには65536バイトと書いてあります。 65536まで表現できるのはわかるのですが、なんで単位がバイトになるのかが、わかりません。 どなたか教えてください。

noname#200482
noname#200482

みんなの回答

  • wanda1
  • ベストアンサー率100% (1/1)
回答No.6

他の人も答えているとおり。 16ビットで表現できるのは、65536通りの数値(0~65535) IPパケットフィールドが表現したいのは、「長さが何バイトか」。 よって65535バイト どうして単位がビットじゃなくて「バイト」になるか?ってのは TCPIPの国際規格でそう決まってるからじゃね。 としか言えません。 強いていえば送信単位の都合。 あなたの家の体重計が、どうしてグラム単位じゃなくキログラム単位で数値が振ってあるかと、大差無い気がします。 乱暴な言い方をしますが、 IPAの資格試験はもっと大雑把(=要点を捉えてなぞっていく)な勉強の仕方をしないと、落ちます。

  • hue2011
  • ベストアンサー率38% (2800/7250)
回答No.5

2センチの紙きれがあります。付箋です。ここに「3万キロメートル」と書くのは自由ですね。 実際にこれを論文の端に貼って考えるときは、3万キロメートルだという意味がそこにはあります。 でも紙は2センチです。 このたとえでわかりませんか。 16ビットというのは、入れもののサイズは2バイトです。それより大きいものではありません。 ここに16進で10、と入れたら、2と言う意味を格納したわけです。 これは2ビットのことかもしれないし2バイトのことかもしれないし、2ギガバイトのことかもしれません。 この入れものには0から65535までの数字つまり65536通りのデータを格納できます。でも入れもの自体は2バイトです。 ここで、新しい用語ですが、覚えてください。データバスとアドレスバスです。 この16ビットの入れものに入っているものを何であると扱うか、という決めをするのです。 データバスというのは、中にはいっているものが数字であるという見方です。2バイトか2キログラムか2冊か2メートルか、わかりませんが中身はデータとみると考えるのです。 アドレスバスというのは、どこを見に行け、という指定をする見方です。 そのデータは自分からみて2バイト先にあるから見に行け、という意味で、2を格納すると言う話です。 アドレスバスとして考えるのであれば2バイトのエリアは、0バイトめからはじめて65536バイトに住所番号をふれるということなのです。 このやり方はコンピュータ技術では非常に重要な考えかたです。 どこを見に行け、ということが、特定の固定した場所に書いてあるということが、です。

  • Cupper-2
  • ベストアンサー率29% (1342/4565)
回答No.4

勘違いされていませんか。 他の回答者さんも示しているように質問にある65536には単位はありません。 10進数で表現された単なる数値です。 敢えて単位を付けるなら、    65536種類 となりますよ? 1パケットの中で65536種類の表現ができると言うだけです。 単位は絶対にバイトにはなりません。 逆に考えてみ。 65526バイトって、何ビットで、そして表現できる最大の数値っていくつよ。 テキストを間違って読んでいると思いますよ。

  • don_go
  • ベストアンサー率31% (336/1059)
回答No.3

>16ビットで表すことのできるができる大きさ であれば、2^16=65536通り 16ビットのアドレスで、指定(確保)することが できるメモリ容量を指す場合は「バイト」になり ます。 メモリのしくみと種類 http://www.tij.co.jp/lsds/ti_ja/general/mcu_basics/mcu05_memory.page >メモリは、1バイト(8ビット)の大きさの小 >部屋がぎっしりと並んでいて、各部屋に順番に >アドレス(部屋番号)が付けられた構成に >なっています。

  • hashioogi
  • ベストアンサー率25% (102/404)
回答No.2

2進数に特に単位はありません。 10進数で8ケタでは0から99999999までの数を表すことができますが、特に単位はないのと同じです。具体的な場面では「リンゴが2個」「車が2台」と単位は付くでしょうけど。 メモリアドレスを2進16ビットで表せば、0~65535の65536バイトに対応すると思いますけど。

  • drum_KT
  • ベストアンサー率43% (1108/2554)
回答No.1

>なんで単位がバイトになるのか そのように決めてあるからです。これは単位換算の問題ではありません。「IPパケット長」というフィールドに「何を設定するか」という定義の問題です。

関連するQ&A

  • ビットとバイト

    どうも理解できないので教えて下さい。 32ビットのOSで扱えるメモリは約4GBとなっていますが、なぜ単位はバイトなのでしょうか? 1ビットというのは0か1の2進数ですよね? なので32ビットは2の32乗で約42億となるのはわかります。 これがどうして42億ビットではないのでしょうか? 1バイトは8ビットとのことらしいのでバイトで表記するなら約42億÷8ビットで約5.2億バイト=520メガバイトとなるのではないのでしょうか? 恐ろしく勘違いしてると思うのでどなたか教えて下さいませ。

  • ビット、バイト、Kバイト、ちょビットわかんない!!

    こんばんは、頭がこんがらがってしまってます。 今、お勉強を始めた身なのですが、 1バイト=8ビット うんうん、そうか。で、 1Kバイト=1,024バイト と、テキストに載ってるのですが、 !!!?待って!ちょっと待って? Kってキロだから1000よね? …って、なんで、じゃ、24はいったい何? という感じで、パニックに陥ってしまいました。 すみません、よーく教えてやってください。 よろしくお願いします。

  • 5.1byteは何bitですか?

    シスアドの勉強をしてるのですが、わけがわかりません。 特に進数については全く理解できません。 <問題> Q5.1byteは何bitですか? 2bit 8bit 10bit 回答が付いてない問題なので、正解が分かりません。が、私の感覚では、8ビット=1バイトだから、 答えは0.63ビットでは・・?と思います。 実際の回答と、どうしてそうなるのかを教えていただけないでしょうか?

  • ビットとバイトの違い

    PCの何かの単位に「ビット」とか「バイト」などという単位がありますが、具体的にどのように違うのですか? 教えてください!

  • なぜビットとバイト異なる単位で表すのでしょうか?

    なぜ通信速度はビット、容量はバイトと異なる単位で表すのでしょうか?それぞれその単位で表すことのメリットってあるのでしょうか?

  • ビット・バイトの由来について。

    コンピュータの基本単位のビットは、おそらく英語のbit「(時間的・量的に)わずか, 少しの時間」が由来だと思います。 これに対してバイトは、辞書で調べてもコンピュータ用語としての意味しか見つかりません。しかし何の意味もなく名づけたのではなく何か根拠を持ったのではないかと思っています。 質問は2つです ・ビットの由来はbitで間違いないか ・バイトの由来は何か 出来れば根拠を説明したURLなどもつけていただきたいと思っています。 よろしくお願いします。

  • IPアドレス 3ビットは6、8ビットは256の意味がわからない

    PCを日々使っていますが、基礎の知識が全く無いので、インターネットの理論の勉強を独学でしています。 今、IPアドレスのことについて勉強しているところなのですが、参考書を読んでも意味がわからないところがあります。 クラスレスのところなのですが、 ネットワーク部で29ビット利用すると、ホスト部は3ビットで表現できるホスト数は6 ネットワーク部で24ビット利用すると、ホスト部は8ビットで表現できるホスト数は256 と書かれています。 全部で32ビットだから、29ビットのときは3ビット、24ビットのときは8ビットというのはわかりますが、表現できるホスト数というのはどうやって計算されるのかがわかりません。 おばかな質問ですみません(汗) 解説お願いします。

  • ビット・バイトの計算の式がわかりません

    学校のデータ単位の授業で、ビットやバイトの計算の問題が出たのですが、答えを教えてもらっても何故そうなったのかがわからないのです。 1. 4000kb + 2.5MB = 3MB 2. 2.5GB + 24,000Mb = 44Gb Bはバイト bはビットです この二問の解き方の式だけがどうしてもわかりません、答えは出てるだけにもどかしいです。(もしかしたら答え自体間違っているかもしれません)

  • ビットフィールドについて

    参考書のビットフィールドの語境界の指定という項目を読んでいるところなのですが説明に ビットフィールドは、「それを保持するに十分な大きさの任意アドレス付け可能な記憶単位に割り付け」されることになっている と書かれているのですが何度読んでもうまく理解できません。 どなたか上の文章の内容を噛み砕いて説明していただけないでしょうか わからないところがうまく言えなくてすみませんがよろしくお願いします。 参考書名:新訂 新C言語入門 シニア編(著 林晴比古)

  • Qビット(量子ビット)について教えて頂きたいのです

    Qビット(量子ビット)について教えて頂きたいのですが … 「重ね合わせ」が出来るということで高速化が期待されていますが、この理解の仕方として、普通のコンピュータ最小単位であるビットが「2ビット」であると考えるのは乱暴でしょうか?最小単位が2ビットあると考えれば、量子ビットに00,01,10,11の4種類があることが素直に理解出来ます。大雑把な理解方法として、「量子ビットは1ビットで2ビットあるようなもの」(グリコみたいですが …)と理解しておいて問題ないでしょうか?よろしくお願い致します。

専門家に質問してみよう