医療工学解説-2進数・16進数・bit

国家試験で出題される2進数・16進数の計算について解説します!これらの計算が苦手な方は必見!?(+bitの計算も解説!)

※スマホから閲覧している場合,数式をスクロールできます。

各見出しの重要度は,過去の臨床検査技師国家試験(第52回~最新回まで)の出題率や覚えやすさなどを考慮して主観で表記しています。国家試験を受ける学生以外の方は無視してかまいません。

2進数(重要度:★★★★☆)

2進数とは 

ペンギンくん
ペンギンくん
  2進数って何だっけ?
2個の数字(0と1)だけで数値を表現した値のことだよ。
おるてぃ
おるてぃ

2進数という言葉は聞いたことがある人も多いかもしれません。
これは,全ての数値を0と1の組み合わせで表現したものです。

普段私たちが日常で使っているのは10進数と言って,これは数値を0~9の10個の数字を使って表現しています。
(そのため,9の次は10(位が1つ増えて,もとあった位は0になる)となります)

2進数もこれと同じように,1の次は2ではなく,位が1つ増えてもとあった位は0となるため,10となります。

2進数と10進数の対応は以下のようになります。

10進数 2進数 10進数 2進数
0 0 6 110
1 1 7 111
2 10 8 1000
3 11 9 1001
4 100 10 1010
5 101


ペンギンくん
ペンギンくん
  なんか難しそう……
確かに,いつもは10進数で見てるからとっつきにくいかもね。ただ,慣れればどうってことないよ。
おるてぃ
おるてぃ

 

2進数の変換 

ペンギンくん
ペンギンくん
  2進数で表されてもよくわからないから,10進数への変換方法が知りたい!
おっけー。変換は2進数を勉強する上で必須だから変換方法を覚えておいてね!
おるてぃ
おるてぃ

国家試験でこの変換の問題はまだ出題されていないのですが,2進数の計算でこの変換を知っておくと,計算結果が正しいかどうかを確認できるので,変換方法を覚えておきましょう!

 

2進数→10進数変換

2進数から10進数への変換方法は以下の通りです。

【2進数から10進数への変換】
2進数の数値の右からn番目の数値に2n-1をそれぞれ掛け合わせて,それぞれの数値を足し合わせる。

言葉だとわかりづらいので,実際にやってみましょう。

例題1:2進数で110010を10進数に変換するといくらか。

まずは2進数の値である110010を紙に書き出しましょう。

110010

次に,数値の右から1,2,4……と2n-1の値を下に書きましょう

110010

次に,上の数字(黒)と,下の数字(赤)を掛け合わせます

110010

最後に,掛け合わせた数字(青)を足し合わせます。これが,10進数に変換したときの値となります。

110010

よって,2進数で110010は10進数で表すと50となります。

ペンギンくん
ペンギンくん
  2進数だから2n-1を掛けるんだね。
そう!後で16進数の話もするけど,このときは16n-1を掛けるんだよ。
おるてぃ
おるてぃ

 

10進数→2進数変換

2進数から10進数への変換では2を掛けていましたが,10進数から2進数への変換は逆に2で割っていきます。

【10進数から2進数への変換】
10進数の数値を2で割り,商を右に,余りを商の下に書く。これを,商が0になるまで行い,最後に余りを右から左に読み上げる。

これも言葉だけだとちんぷんかんぷんなので,実際に例題を見ていきましょう。

例題2:10進数で77を2進数に変換するといくらか。

まずは10進数の値である77を紙に書き出しましょう。

77

次に,77を2で割ります。すると,商が38,余りが1となります。この商を右に,余りを商の下に書きます

77

同様にして,どんどん2で割っていきます。

77

77

77

最後に,余りを右から左に向かって読みます。これが2進数に変換したときの値となります。

77

よって,10進数で77は2進数で表すと1001101となります。

ペンギンくん
ペンギンくん
  慣れたら簡単そうだね。
そのまま左から右に並べてしまうと間違いなので注意してね!「右から左」だよ!
おるてぃ
おるてぃ

 

2進数の計算 

ペンギンくん
ペンギンくん
  計算方法も覚えないといけないの?
国家試験に出題されるから絶対に覚えて!
おるてぃ
おるてぃ

2進数の計算は国家試験に出題されるので計算方法を覚えましょう。ただ,この方法を知らなくても,2進数を一旦10進数に変換して,これでいつも通りの10進数の計算をして,再度10進数を2進数に変換する方法でも計算できます。新しいことを覚えたくない人は,こちらの方法で。

 

2進数の足し算

10進数と同じように足し算を行います。その後,2以上は2進数に変換してからまた足し算します。これを,0と1だけになるまで行います。

実際に計算してみましょう。

例題3:2進数で1101と111を加えた値はいくらか。

まずは,小学校で習った筆算のように書きます。

1101+111

次に,10進数の要領で普通に計算します。

1101+111

ここで,2進数は0と1の2つの数値しか扱わないので,2以上の数値は2進数で表しましょう

1101+111

これでまた足し算します。

1101+111

後は,「2以上の値が出た時は2進数の値に変える→計算する」を繰り返して,0と1の値だけになるようにします

1101+111

よって,2進数で1101と111を加えた値は10100となります。

ペンギンくん
ペンギンくん
  2進数の足し算は意外と単純だね。
2以上を2進数に変換することを忘れなければ大丈夫!
おるてぃ
おるてぃ
【別解 10進数への変換からの計算】
上で示した計算方法が面倒な場合は,10進数に変換してから計算するのがおすすめです。
2進数:1101→10進数:8+4+0+1=13
2進数:111→10進数:4+2+1=7

この値を足し合わせます。13+7=20

最後に,20を2進数に変換します。
※( )は余りを表します。
20→10(0)→5(0)→2(1)→1(0)→0(1
よって,10100となります。
2進数←→10進数の変換が簡単にできる人はこちらのほうがおススメだよ!
おるてぃ
おるてぃ
 

2進数の引き算

2進数の引き算はやや厄介です。ここでは補数を使った方法を紹介します。

言葉だと説明しづらいので,こちらも実際に計算してみましょう。

例題4:2進数で1000から101を引いた値はいくらか。

まずは,小学校で習った筆算のように書きます。

1000-101

次に,引く数(ここでは101)の補数を求めます。補数は簡単で,もとの数字のそれぞれの位を見て,1なら0,0なら1にすればOKです。

なお,注意点として,補数を求める際は,引かれる側の数(ここでは1000)の桁数と同じになるように,引く数をみなす必要があります。なので,101は,0101として補数を考えます

101補数

次に,この補数に1を足します

101の補数+1

次に,引かれる側の値(1000)と,先ほど出した補数+1(1011)を足し合わせます

1000-101

最後に,一番上の位の1を消すと答えになります。

1000-101

よって,2進数で1000から101を引いた値は11となります。

ペンギンくん
ペンギンくん
  2進数の引き算は足し算と違って面倒だね……。
補数の概念がある分大変かも。そういう人は10進数に変換してから計算する方法がいいかなぁ。
おるてぃ
おるてぃ
【別解 10進数への変換からの計算】
上で示した計算方法が面倒な場合は,10進数に変換してから計算するのがおすすめです。
2進数:1000→10進数:8+0+0+0=8
2進数:101→10進数:4+0+1=5

引き算をします。8-5=3

最後に,3を2進数に変換します。
※( )は余りを表します。
3→1(1)→0(1
よって,11となります。
2進数の引き算はこちらのほうが簡単かも。
おるてぃ
おるてぃ
 

16進数(重要度:★☆☆☆☆)

16進数とは 

ペンギンくん
ペンギンくん
  2進数が2個の数字なら,16進数は16個の数字で数値を表現するの?
その通り!注意したいのは,16進数だとアルファベットまで登場することかな……。
おるてぃ
おるてぃ

16進数は,全ての数値を0~9と,アルファベットA~Fの組み合わせで表現したものです。
16進数の場合,9の次はAとなり,以降,B→C→D→E→F→10(位が1つ増える)となります。

16進数と10進数の対応は以下の通りです。

10進数 16進数 10進数 16進数
0 0 10 A
1 1 11 B
2 2 12 C
3 3 13 D
4 4 14 E
5 5 15 F
6 6 16 10
7 7 17 11
8 8 18 12
9 9
ペンギンくん
ペンギンくん
  アルファベットまで出てくるの!?ますます混乱しそう。
こっちも慣れるまでが大変かも。ただ,16進数はまだ国家試験で出題されていないから優先度は低め。
おるてぃ
おるてぃ

 

16進数の変換 

16進数→10進数変換

16進数から10進数への変換方法は以下の通りです。やり方自体は2進数と同じなので,2進数→10進数の変換が理解できていれば簡単です。

【16進数から10進数への変換】
16進数の数値の右からn番目の数値に16n-1をそれぞれ掛け合わせて,それぞれの数値を足し合わせる。

せっかくなので,例題を見てみましょうか。

例題5:16進数で2AEを10進数に変換するといくらか。

まずは2進数の値である2AEを紙に書き出しましょう。

2AE

次に,数値の右から1,16,256……と16n-1の値を下に書きましょう

2AE

次に,上の数字(黒)と,下の数字(赤)を掛け合わせます。ここで注意したいのは,A~Fです。これらは,10進数の値に必ず変えておきましょう!
A=10,B=11,C=12,D=13,E=14,F=15(これはどこかしらにメモっておくといいかも)

最後に,掛け合わせた数字(青)を足し合わせます。これが,10進数に変換したときの値となります。

2AE

よって,16進数で2AEは10進数で表すと686となります。

ペンギンくん
ペンギンくん
  16進数も2進数と同じような感じだから覚えやすいね。
A~Fの表記さえ慣れてしまえば簡単かな。
おるてぃ
おるてぃ

 

10進数→16進数変換

こちらも10進数から2進数への変換方法と同じなので,10進数→2進数の変換が理解できていれば簡単です。

【10進数から16進数への変換】
10進数の数値を16で割り,商を右に,余りを商の下に書く。これを,商が0になるまで行う。余りのうち,10~15はそれぞれA~Fに変換し,最後に余りを右から左に読み上げる。

実際に例題を見ていきましょう。

例題6:10進数で1000を16進数に変換するといくらか。

まずは10進数の値である1000を紙に書き出しましょう。

次に,1000を16で割ります。すると,商が62,余りが8となります。この商を右に,余りを商の下に書きます

同様にして,どんどん16で割っていきます。

1000

次に,余り10~15を16進数に変換します。

1000

最後に,余りを右から左に向かって読みます。これが16進数に変換したときの値となります。

1000

よって,10進数で1000は16進数で表すと3E8となります。

ペンギンくん
ペンギンくん
  16で割るのがきつい。
2と違ってなかなか暗算するのが難しいから筆算頼りになると思うけど頑張って!
おるてぃ
おるてぃ

 

16進数の計算 

ペンギンくん
ペンギンくん
  16進数の計算なんて国家試験に出るのかなぁ。覚える必要ある?
2進数と違って16進数ってほとんど出題されないからね~。余裕があれば覚えればいいと思うよ。
おるてぃ
おるてぃ

16進数の足し算

10進数と同じように足し算を行います。その後,16以上は16進数に変換してからまた足し算します。これを,0~Fだけになるまで行います。

実際に計算してみましょう。

例題7:16進数で3Dと4Cを加えた値はいくらか。

まずは,小学校で習った筆算のように書きます。

3D+4C

次に,16進数のうち,A~Fは10進数の10~15に変換します。

3D+4C

次に,10進数の要領で普通に計算します。

3D+4C

ここで,16進数は0~9とA~Fの16個の文字しか扱わないので,16以上の数値は16進数で表しましょう
簡単に言えば,16以上の数値は16を引いて,次の位に1を追加すればOKです。

3D+4C

これでまた足し算します。

3D+4C

後は,「16以上の値が出た時は16進数の値に変える→計算する」を繰り返して,0~9とA~Fだけになるようにします

よって,16進数で3Dと4Cを加えた値は89となります。

ペンギンくん
ペンギンくん
  A~Fさえわかれば簡単だね!
A~Fは予め10進数の10~15にすることがポイント!
おるてぃ
おるてぃ
【別解 10進数への変換からの計算】
上で示した計算方法が面倒な場合は,10進数に変換してから計算するのがおすすめです。ただ,2進数と違って計算量が多くなるので結構大変です。
16進数:3D→10進数:48+13=61
16進数:4C→10進数:64+12=76

この値を足し合わせます。61+76=137

最後に,137を16進数に変換します。
※( )は余りを表します。
137→8(9)→0(8
よって,89となります。
16進数←→10進数の変換に苦労しないならこの方法もおすすめ。
おるてぃ
おるてぃ

16進数の引き算

16進数の引き算は2進数よりはやりやすいですが,やはり10進数と比べるとやや違和感があります。

実際に計算してみましょう。

例題8:16進数で112からAFを引いた値はいくらか。

まずは,小学校で習った筆算のように書きます。

112-AF

次に,16進数のうち,A~Fは10進数の10~15に変換します。

112-AF

次に,10進数の要領で普通に計算します…が,結果がマイナスとなる場合は,次の位に「-1」を書き,もとの引かれる数に16を足します

112-AF

この計算では,2-Fはマイナスとなるため,2に16を足して18とし,代わりに2-Fの次の位に-1を書きます。
1-Aも同様にマイナスとなるため,1に16を足して17とし,代わりに1-Aの次の位に-1を書きます。

これで引き算します。-1の部分も忘れないようにしましょう

112-AF

最後に,10以上の数値がある場合は16進数に変換します。
よって,16進数で112からAFを引いた値は63となります。

ペンギンくん
ペンギンくん
  2進数の引き算よりはわかりやすいかも。
マイナスとなった時の対処法を覚えておけば大丈夫!
おるてぃ
おるてぃ
【別解 10進数への変換からの計算】
上で示した計算方法が面倒な場合は,10進数に変換してから計算するのがおすすめです。ただ,やはり16進数だと計算量が多くなるので結構大変です。
16進数:112→10進数:256+16+2=274
16進数:AF→10進数:160+15=175

引き算をします。274-175=99

最後に,99を16進数に変換します。
※( )は余りを表します。
99→6(3)→0(6
よって,63となります。
16進数←→10進数の変換に苦労しないならこの方法もおすすめ。
おるてぃ
おるてぃ
 

bit・byte・bps(重要度:★★★★★)

bit(ビット)とbyte(バイト) 

ペンギンくん
ペンギンくん
  ビットってなにー?
簡単に言えば,情報量(データ量)の単位のことだよ。国試にもよく出るから,覚えておいてね!
おるてぃ
おるてぃ

bit(ビット)は,コンピュータで扱うデータの最小単位であり,1bitは2進数の1桁分に相当します
つまり,1bitで,0と1の2種類のデータを扱うことができるようになります。
2bitであれば,00・01・10・11の合計4種類を,3bitであれば,000・001・010・011・100・101・110・111の合計8種類のデータを扱えるようになります。

ここで気付いた方もいると思いますが,Nbitで,2Nの情報量を扱える(重要!)ということになります。

なぜデータ量をbitで表現するのかというと,コンピュータは2進数(0と1の組み合わせ)で情報を処理しているからです。そのため,10個の情報であれば4bit,20個の情報であれば5bit必要ということになります。

例えば,「あ・い・う・え・お」の5種類の文字をコンピュータで処理する際,コンピュータは文字そのものでは処理できないため,それぞれの文字を0と1の組み合わせで表現します。
例)あ:000,い:001,う:010,え:011,お:100
そうすると,2bitでは1文字分表現できないため,この場合は3bit必要ということになり,3bit分の情報量があるということになります。

ペンギンくん
ペンギンくん
  ってことは,100個の情報をデータ化しようとすると,7bit(27=128)は必要ってこと?
そう!因みに,昔のゲーム(特にRPG)で255が最大値だったりするのは,ステータスに割り振る情報量が8bitだったからなんだよ。(昔はゲームのメモリが少なかったから……)
おるてぃ
おるてぃ

なお,8bitを1byte(バイト)とし,現在のデータ量ではこのbyteが単位として用いられています。(単位ではBと表記されます)
例)USBメモリなら4GB~,HDDなら1TBなど

実際にbitを使った問題を解いてみましょう。

例題9:1pixelが256色で表現された1440×1080pixelの大きさの画像がある。この画像のデータサイズ[MB]はいくらか。ただし,1MB=106byteとする。

pixel(ピクセル)ということばが出てきましたが,これは画像の1つの点(=画素)のことです。

つまり,1440×1080pixelの画像というのは,横1440個,縦1080個の点の集合体と考えてください。

bit

↑画像は点(画素)の集まり(集合体)!

そして,256色で表現ということは,1つの点,つまり1×1pixelの中に256通りの情報量があるということになります。
これはbitで表すと8bit(28=256)となるため,1つの点に8bitの情報量があるということになります。

bit

8bit=1byteなので,この画像自体のデータ量は
1080×1440×1byte=1555200byte$\approx $1.56MBとなります。

bps(ビーピーエス)

ペンギンくん
ペンギンくん
  なんかまた新しい単語が出てきたね……。頭がパンクしそう。
大丈夫。意外と簡単だから。
おるてぃ
おるてぃ

スマホが普及した時代,一般の人でもbpsという単語は聞いたことがあるかもしれません。

これはbit per second(bit/s)の略で通信速度を表します。

例えば,1bpsなら,1秒間に1bitの情報を伝えることができるということになります。

bps

BNRスピードテスト(https://www.musen-lan.com/speed/)での通信速度測定結果

私の使っているネット環境での通信速度は約35Mbpsで,これは1秒間に約35Mbit$\approx $4.4MBのデータを転送できることになります。

この速度なら,YoutubeのフルHD動画(約3Mbpsの通信速度が必要)でもまず不自由なく視聴できます。

逆に,スマホの通信制限(一定以上のデータ容量を使用すると自動的に低速回線となる)だと,通常128kbpsにまで速度が落とされます。
この通信制限を経験した方も多いと思いますが,こうなると動画はもちろんのこと,画像が多いwebサイトも読み込みが遅く,快適には閲覧できなくなってしまいます。

話がそれてしまいましたが,このbpsを使った問題が出るかもしれませんので,意味を覚えておきましょう。(幸いにもまだ臨床検査技師の国家試験には出題されていませんが……)

ペンギンくん
ペンギンくん
  通信制限なら僕も経験あるよ!あれすごくイライラするよね~。
この機にぜひbpsという単位も覚えてね!
おるてぃ
おるてぃ

実際にbpsを使った問題を解いてみましょう。

例題9:1pixelが256色で表現された1440×1080pixelの大きさの画像がある。この画像を5Mbpsで伝送したとき,伝送にかかる時間はいくらか。ただし,画像は非圧縮とし,画像以外のデータは無視できるものとする。

まずは画像のデータサイズを求めましょう。
1pixelが256色なので,8bit/pixel
これが1440×1080個あるので,画像のデータサイズは
1440×1080×8=12441600bit$\approx $12.44Mbit

後は,この式にそれぞれの値を代入します。

【bpsの計算】
$$V=\frac{DN}{T}$$
V:通信速度[bps]
D:1枚当たりの画像のデータサイズ[bit]
N:画像の枚数
T:時間[s]

よって,

$$V=\frac{DN}{T}$$
$$T=\frac{DN}{V}=\frac{12.44\,\mathrm{M}\times 1}{5\,\mathrm{M}}\approx 2.5\,\mathrm{s}$$

となります。

 

ペンギンくん
ペンギンくん
  こ,この式も覚えなきゃいけないの?
bpsの計算問題を解くなら必須だけど,国試的には優先度は低めかなぁ。余裕があったら覚えて。
おるてぃ
おるてぃ

 

練習問題

このページの復習だよ。解けるかな?
おるてぃ
おるてぃ

問1 二進法で11と11を加えた値はどれか。(第52回臨床検査技師国家試験am85)

1.100
2.110
3.111
4.1000
5.1001

解答を見る

解答:2
2進数の足し算の方法を知っていればなんなく解けるはずです。

問1

よって,答えは110となります。
【別解】 10進数変換法
10進数に戻してから計算する方法でも簡単に計算できます。
11=2+1=3(10)
3+3=6(10)
6→3(0)→1(1)→0(1)
∴11+11=110

 

問2 二進法で110から11を引いた値はどれか。(第61回臨床検査技師国家試験pm98)

1.1
2.10
3.11
4.100
5.101

解答を見る

解答:3
2進数の引き算の方法を知っていれば……というが,10進数変換法のほうが簡単だったり(笑)
まずは引く数11の補数を求める。
011→100(11の補数)
次に,これに1を加える。100+1=101
最後に,引かれる数110と補数+1(101)を足し合わせて,1番上の位の1を消すと答えが出ます。

問2

よって,答えは11となります。
【別解】 10進数変換法
10進数に戻してから計算する方法のほうが簡単です。
110=4+2+0=6(10)
11=2+1=3(10)
6-3=3
3→1(1)→0(1)
∴110-11=11

 

問3 16進数の減算,C8-4Aの結果を16進数で表したのはどれか。(第31回臨床工学技士国家試験am61)

1.78
2.7E
3.87
4.88
5.8E

解答を見る

解答:2
16進数の引き算の方法を知っていれば簡単です。

問3

16進数の計算では,最初にA~Fを10進数の値に変えておきましょう。
そのうえで,まず8-Aに注目すると,これはマイナスになるので,8に16を足して,代わりに次の位に-1を書きます。
後は,10進数と同じ要領で計算し,最後に10~15をA~Fに変換すればOKです。
よって,答えは7Eとなります。
【別解】 10進数変換法
10進数に戻してから計算する方法です。
C8=16×12+8=200(10)
4A=16×4+10=74(10)
200-74=126
126→7(14=E)→0(7)
∴C8-4A=7E

 

問4 2つの16進数A8と2Bの和を2進数で表したのはどれか。(第32回臨床工学技士国家試験am60)

1.11000011
2.11001001
3.11001010
4.11010011
5.11011001

解答を見る

解答:4
16進数の計算結果を16進数で表さない,つまり変換が強制的に必要な場合は,16進数を10進数に変換する計算方法を用いましょう。
(16進数での計算をしたところでまた変換が必要になってくるので)
A8=16×10+8=168(10)
2B=16×2+11=43(10)
168+43=211
計算後は,10進数を2進数に変換してあげればOKです。
211→105(1)→52(1)→26(0)→13(0)→6(1)→3(0)→1(1)→0(1)
よって,答えは11010011となります。

 

問5 3原色を組み合わせて画素の表示を行うディスプレーで,それぞれの色が4ビットの階調で表されるとき,画素の表現できる色の数はどれか。(第52回臨床検査技師国家試験am87)

1.12
2.64
3.256
4.1,024
5.4,096

解答を見る

解答:5
1色当たりの色のパターンは4bit=24=16パターンとなります。
3原色で画素を表すため,画素の色の全パターンは1色目の色のパターン数×2色目の色のパターン数×3色目の色のパターン数で表されます。よって,16×16×16=4096通りとなります。

 

問6 情報をコード化するとき,10ビットで表現できるコードの種類はどれか。(第56回臨床検査技師国家試験am98)

1.64
2.128
3.512
4.1,024
5.4,096

解答を見る

解答:4
Nbitで2Nの情報量となります。
よって,10bitでは210=1024種類となります。

 

問7 2バイトで表すことができる情報の個数として正しいのはどれか。(第57回臨床検査技師国家試験am98)

1.24
2.28
3.216
4.232
5.264

解答を見る

解答:3
1byte=8bitなので,2byte=16bit。
Nbitで2Nの情報量であるため,16bitは216となります。

 

問8 8bitのAD変換器で0~2.5V電圧を変換するとき,電圧の分解能に最も近いのはどれか。(第64回臨床検査技師国家試験am98)

1.1mV
2.5mV
3.10mV
4.16mV
5.20mV

解答を見る

解答:3
近年の国家試験の傾向なのかどうかはわかりませんが,単純な計算では答えが出せなくなっています(いわゆる難化)。ただ,ぱっと見はわからなくても,bitをきちんと理解していれば答えは出せます。

まず,答えが全てmV表記であることから,問題文の電圧も0~2500mVと考えます。ここで,段階が5のときを考えてみましょう。

問8

 

段階が5であれば,上のように500mV刻みで表せます。すなわち,電圧は0~2500の間で500mVずつ変換することができます。
(0~500は0mV,501~1000は500mV,1001~1500は1000mV的な感じで変換できるということ)
このときの500mVが分解能になります
なお,計算式としては,最大値(2500mV)÷段階(5)=分解能(500mV)となります。

では,今回の問題で考えてみましょう。8bitと問題文に表記されていますが,これは段階を表しています。8bit=28=256であるため,このA/D変換器は256段階で表せるということになります。(そもそもbitは情報量を表すため,256個の情報量を使って変換すると考えるとわかりやすい)
後は,分解能を求めるだけです。これは,最大値を段階で割ればOKなので,2500÷256=9.765625$\approx $9.8mVとなります。

よって,これに最も近い10mVが正解となります。

 

問9 画素数が800×1000のモノクロ画像を128段階の濃度で表示するために必要な最小データ量[Mbyte]に最も近いのはどれか。(第30回臨床工学技士国家試験am62)

1.0.7
2.1.2
3.2.1
4.2.4
5.12.8

解答を見る

解答:1
まずは1pixel(1画素)のbitを求めましょう。
今回の問題では,1pixelが128段階の濃度で表示ということなので,情報量としては128=27=7bitとなります。
1pixelあたりのbit数が分かれば,後は画像の大きさを掛けるだけです。
800×1000×7=5600000=5.6×106bit=5.6Mbit
最後に,bitをbyteに変換しましょう。
よって,5.6Mbit÷8=0.7Mbyteとなります。

 

問10 1画面100kbitで構成されるディジタル画像を伝送したい。通信回路の伝送速度が9Mbpsであるとき,1秒間に伝送できる画像の最大数はどれか。ただし,伝送時に圧縮符号化等の処理は行わず,画像構成データ以外のデータは無視する。(第28回臨床工学技士国家試験am60)

1.1
2.9
3.10
4.90
5.100

解答を見る

解答:4
1画面が100kbitということであるため,要は画像1枚のデータサイズが100kbit=0.1Mbitということです。
今回は画像数を求めればいいため,$V=\frac{DN}{T}$の式を使うと,

$$N=\frac{VT}{D}=\frac{9M\times 1}{0.1M}=90$$

となります。

 

問11 各ピクセルの濃度が210=1024階調,1フレームの画像の大きさが4000×2000ピクセル,1秒間に50フレームのグレースケール動画像を,伝送速度40Mbpsの伝送路で滞留なく伝送したい。データ量は少なくとも何分の1に圧縮しなければならないか。(第32回臨床工学技士国家試験am61)

1.$\frac{1}{10}$
2.$\frac{1}{50}$
3.$\frac{1}{100}$
4.$\frac{1}{500}$
5.$\frac{1}{1000}$

解答を見る

解答:3
まずは1秒当たりのbit数を求めましょう。
1pixel(1画素)のbitは,1pixelが210段階の濃度で表示なので,情報量としては10bitとなります。
1pixelあたりのbit数が分かれば,後は画像の大きさを掛ければ画像1フレーム分のbit数になります。
4000×2000×10=8×107bit=80Mbit
このフレームが1秒間に50フレームあるため,1秒当たりのbit数は
80Mbit×50=4000Mbit。
これを40Mbps=40Mbit/sで送ろうとすると,T=4000/40=100sとなり,1秒分が100秒かかってしまう計算となるため,滞留なく伝送できません。今回の問題では,「滞留なく伝送」することが目的なので,1秒間の動画を最大でも1秒で伝送できるように圧縮する必要があります。
よって,4000Mbitを40Mbit($\frac{1}{100}$)にまで圧縮する必要があり,答えは$\frac{1}{100}$となります。

コメント