• ベストアンサー

基本情報技術者試験問題

以下の問題の考え方を教えてください。 初心者で、本を読んでもなかなか理解できず困っています。 よろしくお願いします。 「数値の部分が6桁の符号付き10進数を、パック10進表記法で表すと、 必要なバイト数はいくらか」 ア   3 イ   4 ウ   6 エ   7

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

  • ベストアンサー
  • ok-kaneto
  • ベストアンサー率39% (1798/4531)
回答No.2

パック方式だと、10進数の1桁が4ビットに対応します。それに全体で4ビット分の符号部が加えられます。 この場合、6桁で24ビット、符号部で4ビットの併せて28ビットが必要な計算です。 1バイトは8ビットなので、3.5バイトという計算です。必要なバイト数は切り上げて4バイトが必要です。

sairamnaomi
質問者

お礼

シンプルでわかり易い回答ありがとうございます。 助かりました!

その他の回答 (2)

  • jjon-com
  • ベストアンサー率61% (1599/2592)
回答No.3

ゾーン10進表現,パック10進表現ともに,10進数字0~9を4bitで表現する。 http://ja.wikipedia.org/wiki/%E4%BA%8C%E9%80%B2%E5%8C%96%E5%8D%81%E9%80%B2%E8%A1%A8%E7%8F%BE 符号も4bitで表現し,EBCDIC文字コードを採用したコンピュータでは,正は1100,負は1101。 キーワード「パック10進」でGoogle画像検索すると,2番目に次の画像がヒットする。 http://infosupport.infoteria.co.jp/asbook/images/03_04/WhatIsZonedPacked.png ゾーン10進数の格納形式は上図を参照せよ。 ゾーンパターン1111 + 数値4bit の計8bitで 1桁の10進数字を表す。 末尾の1桁のみゾーンパターンが符号パターンに置き換わるが, -1234のように4桁の10進数なら,4Byteとなる。 パック10進数の格納形式も上図を参照せよ。 ゾーンパターンの1111が取り除かれ, 数字1桁(4bit) × 4桁 + 符号4bit = 20bit = 2.5Byte 半端な空き4bitに0000を埋めて,3Byteとなる。 -------- ということで,6桁の符号付き10進数なら,パック10進表記法で, (数字6桁 + 符号1つ) × 4bit = 28bit = 3.5Byte 半端な空き4bitに0000を埋めて,4Byteとなる。

sairamnaomi
質問者

お礼

詳しい回答ありがとうございます! 教えていただいたページも参考になりました。

  • maiko0318
  • ベストアンサー率21% (1483/6969)
回答No.1

6桁ですから123456を格納してみましょう。 上位ビット0246 下位ビット135f fは符号 4バイトですね。 ゾーンだと 上位ビット00000f 下位ビット123456 で6バイト

sairamnaomi
質問者

お礼

早々にご回答ありがとうございます! すみません、本当に初心者で 恥ずかしながら1行目からわかりませんでした。 精進します。

関連するQ&A