基本情報技術者試験 基本情報技術者試験 平成29年度 秋期 午前 午前 問1: 数値を2進数で表すレジスタがある。このレジスタに格納されている正の整数 x を10倍にする操作はどれか。ここで,桁あふれは起こらないものとする。

基本情報技術者試験 平成29年度 秋期 午前
Q 11 / 80
数値を2進数で表すレジスタがある。このレジスタに格納されている正の整数 x を10倍にする操作はどれか。ここで,桁あふれは起こらないものとする。
この問の正解率:55.01%(1,885件)
この問題の本文・選択肢・正解・解説(展開)

問題本文

数値を2進数で表すレジスタがある。このレジスタに格納されている正の整数 x を10倍にする操作はどれか。ここで,桁あふれは起こらないものとする。

選択肢

  • .xを2ビット左にシフトした値にxを加算し,更に1ビット左にシフトする。
  • .xを2ビット左にシフトした値にxを加算し,更に2ビット左にシフトする。
  • .xを3ビット左にシフトした値と,xを2ビット左にシフトした値を加算する。
  • .xを3ビット左にシフトした値にxを加算し,更に1ビット左にシフトする。

正解

. xを2ビット左にシフトした値にxを加算し,更に1ビット左にシフトする。

解説

10x = (4x+x)×2 = 5x×2 と分解できる。2ビット左シフト(4x)+x=5x、さらに1ビット左シフトで10xになる。

選択肢ごとの解説

  • .(4x+x)×2=10x で正解。
  • .(4x+x)×4=20x になり10倍ではない。
  • .8x+4x=12x で10倍にならない。
  • .(8x+x)×2=18x で10倍にならない。

基本情報技術者試験 平成29年度 秋期 午前過去問一覧へ戻る・問1