基本情報技術者平成18年秋期 午前問2

午前問2

数値を2進数で格納するレジスタがある。このレジスタに正の整数 x を設定した後,"レジスタの値を2ビット左にシフトして,x を加える"操作を行うと,レジスタの値は x の何倍になるか。ここで,シフトによるあふれ(オーバーフロー)は,発生しないものとする。
  • [この問題の出題歴]
  • 基本情報技術者 H15春期 問2
  • 基本情報技術者 H21春期 問1
  • 基本情報技術者 H28春期 問1

分類

テクノロジ系 » 基礎理論 » 離散数学

正解

解説

2進数のビット列xを左にnビットシフトするのは、xを2n倍するのと同じことです。
例えば 1010(2)は10進数で表すと10です。これを2ビット左シフトすると、10 1000(2)となり10進数で40です。

この問題ではxを左に2ビットした後、元の数(x)を加えているので、x×22+x で元の数の5倍になります。
© 2010-2020 基本情報技術者試験ドットコム All Rights Reserved.

Pagetop