> ## Content Index
> Fetch the complete content index at: https://www.geekjp.com/llms.txt
> Use this file to discover other available public pages before exploring further.

# 令和元年度秋期 基本情報技術者試験 午前 問1～問2｜過去問解説
- URL: https://www.geekjp.com/2019-10-30-113249/
- Published: 2019-10-30T02:32:49.000Z
- Updated: 2026-07-26T13:45:39.000Z
- Description: 令和元年度秋期・基本情報技術者試験の午前問1～問2を解説します。10進整数を2進数へ変換する流れ図と、排他的論理和による8ビット値の反転を、筆算とビット列の計算で確認します。
- Author: 工学じじい
- Tags: コンピュータサイエンス, 技術, 情報処理技術者試験, アルゴリズム, #Import 2026-07-19 20:21, #Import 2026-07-19 20:24

> **この記事について**  
> 2019年（令和元年度）秋期に実施された基本情報技術者試験 午前の問1～問2を扱う過去問解説です。現在の試験制度や出題形式とは一部異なりますが、コンピュータサイエンスの基礎学習には引き続き活用できます。

> **出典・引用について**  
> 問題文、選択肢および試験問題に含まれる図表は、独立行政法人情報処理推進機構（IPA）が公開している令和元年度秋期試験から引用しています。掲載にあたり、改行、表組み、全角・半角、画像配置などを調整している場合があります。問題の趣旨は変更していません。解説、補足、計算過程および当サイト作成の図は、工学じじいの縁側日記によるものです。  
> [IPA公式・問題冊子（PDF）](https://www.ipa.go.jp/shiken/mondai-kaiotu/gmcbt8000000dict-att/2019r01a%5Ffe%5Fam%5Fqs.pdf?ref=geekjp.com) ／ [IPA公式・解答例（PDF）](https://www.ipa.go.jp/shiken/mondai-kaiotu/gmcbt8000000dict-att/2019r01a%5Ffe%5Fam%5Fans.pdf?ref=geekjp.com) ／ [2019年度の過去問題一覧](https://www.ipa.go.jp/shiken/mondai-kaiotu/2019h31.html?ref=geekjp.com)

## R01基本情報技術者試験 秋期試験に挑戦

- R01基本情報技術者試験 秋期試験に挑戦
  - 令和元年度 基本情報技術者試験 午前問題
    - 令和元年度 基本情報技術者試験 午前問題 問１
    - 解説
    - 令和元年度 基本情報技術者試験 午前問題 問２
    - 解説

### 令和元年度 基本情報技術者試験 午前問題

#### 令和元年度 基本情報技術者試験 午前問題 問１

> 出典：[令和元年度 秋期 基本情報技術者試験 午前 問1](https://www.ipa.go.jp/shiken/mondai-kaiotu/gmcbt8000000dict-att/2019r01a%5Ffe%5Fam%5Fqs.pdf?ref=geekjp.com)

次の流れ図は、10進整数ｊ（０＜ｊ＜１００）を8桁の2進数に変換する処理を表している。2進数は下位桁から順に、配列の要素NISHIN(1)からNISHIN(8)に格納される。流れ図のa及びbに入る処理はどれか？ここで、ｊdiv２はｊを２で割った商の整数部分を、ｊmod２はｊを2で割った余りを表す。

![f:id:gomta777:20191030032450p:plain](https://www.geekjp.com/content/files/images/import/hatena/2019/10/20191030032450.png "f:id:gomta777:20191030032450p:plain")

*図：フローチャート*

注意：ループ端の繰り返し指定は、変数名：初期値、増分、終値を示す。

|   | a                   | b                   |
| - | ------------------- | ------------------- |
| ア | j ← j div 2         | NISHIN(k) ← j mod 2 |
| イ | j ← j mod 2         | NISHIN(k) ← j div 2 |
| ウ | NISHIN(k) ← j div 2 | j ←j mod 2          |
| エ | NISHIN(k) ← j mod 2 | j ← j div 2         |

#### 解説

ちょうどこの前、変数の型の話をしたときに、2進数と10進数の変換やりましたね。

[Pythonで基数変換を考える関連記事](https://www.geekjp.com/2019-10-28-135618-2/)

2で割っていって、余りを下から並べる

```text
2) 20
2) 10 ...0　←①
2) 5  ...0　←②
2) 2  ...1
2) 1  ...0
2) 0  ...1

```

10100が2進数で書いた10進数の20ということでした。  
処理の流れを見てみると、  
ア、イは、jを更新してから、更新したｊを使ってNISHIN(k)を更新、  
ウ、エは、NISHIN(k)を更新してから、同じｊを使ってｊを更新、という流れになります。  
先ほどの筆算をかんがえると、  
①は、**２０**を２で割った商を書き、隣に**２０**を２で割った余りを書いている  
②は、**１０**を２で割った商を書き、隣に**１０**を２で割った余りを書いている  
両方同じjで処理するということですので、ウかエが答えってことになります。  
んで、実際に、2進数の数値となるのは、余りの方なので、配列に入るのは確実にmod演算の結果ですね。  
じゃぁ、**エが正解**

#### 令和元年度 基本情報技術者試験 午前問題 問２

> 出典：[令和元年度 秋期 基本情報技術者試験 午前 問2](https://www.ipa.go.jp/shiken/mondai-kaiotu/gmcbt8000000dict-att/2019r01a%5Ffe%5Fam%5Fqs.pdf?ref=geekjp.com)

8ビットの値の全ビットを反転する操作はどれか。

| ア | 16進表記００のビット列と排他的論理和を取る |
| - | ---------------------- |
| イ | 16進表記００のビット列と論理和を取る    |
| ウ | 16進表記ＦＦのビット列と排他的論理和を取る |
| エ | 16進表記ＦＦのビット列と論理和を取る    |

#### 解説

論理演算の問題です。  
論理和と、排他的論理和が出てきています。これらを知らないとどうしようもないですよね。  
逆に知ってれば、考えるまでもない問題なのですが、全員がそうとも限らないのでまじめに考えてみます。  
それぞれの、1ビットずつでの演算は以下のようになります。

$$\\begin{array}{c|c|c|c}\\text{演算}&X&Y&\\text{出力}\\cr\\hline\\text{論理和}&0&0&0\\cr&0&1&1\\cr&1&0&1\\cr&1&1&1\\cr\\hline\\text{排他的論理和}&0&0&0\\cr&0&1&1\\cr&1&0&1\\cr&1&1&0\\end{array}$$

サンプルに、16進表記のA4(10100100(2)=164(10))を使って、実際に計算してみます。

| ア | 16進表記００のビット列と排他的論理和を取る |
| - | ---------------------- |

$$\\begin{array}{c|cccccccc}\\mathrm{A4}&1&0&1&0&0&1&0&0\\cr\\mathrm{00}&0&0&0&0&0&0&0&0\\cr\\hline\\text{排他的論理和}&1&0&1&0&0&1&0&0\\end{array}$$

| イ | 16進表記００のビット列と論理和を取る |
| - | ------------------- |

$$\\begin{array}{c|cccccccc}\\mathrm{A4}&1&0&1&0&0&1&0&0\\cr\\mathrm{00}&0&0&0&0&0&0&0&0\\cr\\hline\\text{論理和}&1&0&1&0&0&1&0&0\\end{array}$$

| **ウ** | **16進表記ＦＦのビット列と排他的論理和を取る** |
| ----- | -------------------------- |

$$\\begin{array}{c|cccccccc}\\mathrm{A4}&1&0&1&0&0&1&0&0\\cr\\mathrm{FF}&1&1&1&1&1&1&1&1\\cr\\hline\\text{排他的論理和}&0&1&0&1&1&0&1&1\\end{array}$$

| エ | 16進表記ＦＦのビット列と論理和を取る |
| - | ------------------- |

$$\\begin{array}{c|cccccccc}\\mathrm{A4}&1&0&1&0&0&1&0&0\\cr\\mathrm{FF}&1&1&1&1&1&1&1&1\\cr\\hline\\text{論理和}&1&1&1&1&1&1&1&1\\end{array}$$

全部見てみるとウだけが、元のすべてのビットが反転されてますね。  
演算結果がわかっていれば並べてみるだけの問題です。

---

## シリーズ内の記事

- 一覧：[令和元年度秋期 基本情報技術者試験 テクノロジ系まとめ](https://www.geekjp.com/2019-11-18-144908/)
- 次の記事：[問3～問6の解説](https://www.geekjp.com/2019-10-30-042832/)

内容の誤りや分かりにくい箇所は、[お問い合わせページ](https://www.geekjp.com/contact/)からお知らせください。