プログラムが実行される仕組みとデータ構造 基本情報技術者 用語解説


はじめに

Hello World!
今回は基本技術者試験の用語を解説していきます!

【YouTube動画】プログラムが実行される仕組みとデータ構造

プログラミング言語

プログラミング言語には大きく分けて2種類あります。
1つは、プログラムを1度まとめてから実行するコンパイラ方式で、C言語、Javaなどがあります。
もう1つは、プログラムを逐次実行していくインタプリタ方式で、Basic、Pythonなどがあります。

コンパイルから実行までの流れ

コンパイラ方式では、コンパイル、リンカ、ローダという段階を踏みます。

コンパイルでは以下の処理をします。

字句解析 -> 構文解析 -> 意味解析 -> 最適化 -> コード生成

字句解析で、文字列を単語ごとに区切ります。
構文解析で、文や構造が言語仕様に合っているかチェックします。
意味解析で、変数や型、文が言語の記述仕様に合っているかチェックします。
上記をパスしたら、最適化、コード生成により目的のプログラムが作られます。

プログラムを実行するときは、さらにコンパイルしたものをリンカでまとめ、ローダでプログラムを読み込み実行します。

構造化プログラミング

構造化プログラミングとは順次、選択、繰り返しの3つの制御構造によって、処理の流れをまとめ、階層化しプログラミングする手法のことです。

動画内で詳しく説明しているので、ぜひ確認してください。

データ構造

データを保存する仕組みには、例えば以下のものがあります。
配列はデータを番号付けて保存するデータ構造です。
リストは隣のデータを記憶して保存するデータ構造です。
木構造はデータを条件づけて枝分かれして保存するデータ構造です。

  • 配列
  • リスト
  • 木構造

データの扱い方は次の2つがあります。
キューは先に入れたデータを先に取り出すデータの扱い方をします。
スタックは後に入れたデータを先に取り出すデータの扱い方をします。

  • キュー
  • スタック

まとめ

今回は基本情報技術者試験の中でも、コンパイルの仕組みやデータ構造など基礎的な部分を解説しました。
他に解説して欲しい部分があれば、コメントいただければ解説します!

また、twitteryoutubeでのコメントもお待ちしています!