基本情報技術者試験の過去問と解説
[TOP] [午前分野別] [午後分野別] [キーワード索引] [平成31年春午前] [平成31年春午後]

平成15年 春期 基本情報技術者 午前 問02
問02   レジスタのシフト操作

 数値を2進数で格納するレジスタがある。このレジスタに正の整数 x を 入れた後,“レジスタの値を2ビット左にシフトして,これに x を 加える”操作を行うと,レジスタの値は x の何倍になるか。ここで, シフトによるあふれ(オーバフロー)は,発生しないものとする。

ア 3    イ 4    ウ 5    エ 6
解答←クリックすると正解が表示されます

解説

 オーバーフロー等のシフトによる「あふれ」が発生しない場合、2進数をあるレジスタから 1ビット左に移動すると元の数が 21 = 2 倍となり、1ビット右に移動すると 元の数が 2-1 = 1/2 倍となる。今回の場合、 正整数 x を左に2ビットシフトし、さらに x を加えているので
22 x + x = 5 x
となる。

[←前の問題] [次の問題→] [問題一覧表] [分野別] [キーワード索引] [基本情報技術者試験TOP ]