0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

基本情報技術者を初めて勉強した。

Last updated at Posted at 2021-02-18

n進数

種類
・10進数 1〜9の数字を使って表す。
・2進数 1、0を使って表す。
・8進数 1〜7を使って表す。
・16進数 0〜9、A~Fを使って表す。

・進数には基数という概念があり、基本となる数のこと。 
・重みはn^n-1で表される。

基数変換
別の基数表現に変換できる。
計算方法がある。
詳しくは後で見る。

2進数の計算と数値表現

2進数の足し算、引き算
コンピュータは足し算しかできない。後の計算法は工夫して行っている。
・1+1で繰り上がある。
・先頭の1ビット(桁)で正負の符号を分けられる。
 ・0で正
 ・1で負
・補数という表現がある。

シフト演算と、2進数のかけ算わり算
シフト演算
2進数を表すビット列を左、右にいずれかにずらす操作
論理シフト、算術シフトがある。

小数点を含む数のあらわし方
***・固定小数点数 整数を表す。
・浮動小数点数 実数(小数を表す) ***

誤差
実際の数値と、コンピュータの数値内部で表現できる数値との間に生じたズレ
どんな時にどんな誤差が生じるか?
・コンピュータの扱える最大値、最小値を超える時 けたあふれ誤差が生じる
・絶対値の大きな値と絶対値の小さいな値の加減算の時絶対値の小さな値が計算結果に反映されない時 情報落ちが生じる
・完了まで待たないで打ち切る時 打ち切り誤差が生じる
・絶対値がほぼ等しい数値同士の差を求めた時 けた落ちが生じる
・表現できる桁数を超えた時 丸め誤差生じる
無限小数 割り切れなくなる小数

コンピュータの回路を知る

AND,OR,NOTの演算を組み合わせて複雑な制御が可能となる。
リレーとは電子部品の名前
論理演算とベン図
・ベン図 集合をあらわす図
・論理積(AND) 2つの条件の両方合致
・論理和(OR) 2つの条件のいずれか合致
・否定(NOT) 合致しないものを”真”と見なす
論理回路と基本回路
・論理積回路(AND回路) 入力がどちらも『1』の時 『1』を出力する。 A ・ B = Y
・論理和回路(OR回路) 入力のどちらか『1』の時 『1』を出力する。 A + B = Y          _
・否定回路(NOT回路) 入力が『0』の時『1』を出力する。 入力が『1』の時『0』を出力する。  A = Y
基本回路を組み合わせ論理回路
                                  _____
・否定論理積回路(NAND回路) ANDとNOTの組み合わせた論理回路 A ・ B = Y 
                                ___
・否定論理和回路(NOR回路) ORとNOTの組み合わせた論理回路 A + B = Y
・排他的論理和回路(EOR回路 また XOR回路) 
 ※図は参考書を見る。

半加算器と全加算器
2進数の足し算の計算処理を行う2つの仕組みがある。
半加算器 一桁の2つの入力から合計と繰り上げを出力する。
全加算器 二桁以上だと必要。繰り上がりの値を半加算器で足す。 半加算器2つとOR回路が合体したもの

ビット操作とマスクパターン
ビット操作 演算をやるときにビットを反転、特定のビットを取り出すなどを行うこと。
ビットを反転 EOR・XORを用いる。0から1へ 1から0へ
マスクパターン ビットを反転させたい位置に1を入れたビット列
特定のビットを取り出す ANDを用いる。

ディジタルデータのあらわし方

ビットとバイトとその他の単位
1バイト=8ビット 正負合わせて256通りの表現ができる。
補助単位 キロ、ギガ、メガ、テラ、ミリ、マイクロ、ナノ、ピコ ことをいう。

文字の表現方法
文字コード 
7ビット データの誤りを検査用の1ビットで文字をあらわす。
文字のコードの種類
・ACSII
・EBCDIC
・シフトJISコード
・EUC
・Unicode

画像など、マルチメディアデータの表現方法
画像や音声はディジタルデータへ変換することで数値であらわせる。
画像データ ドット(点)であらわす。
 ビット数が多いほど高画質になる。
音声データ 単位時間ごとに区切りを作る サンプリングして量子化で数値であらわす。 
 サンプリング周期が短く、量子化ビット数が多いと良くなる。

アナログデータのコンピュータ制御
コンピュータは、センサによってアナログ情報を計測し、アクチュエータにより電気信号を物理動作へと変換します。
センサ(計測) 温度、照度、湿度などを計測ことができる。
アクチュエータ(物理動作) モーター等が動く。
シーケンス制御 順序、条件に従って制御の各段階を逐次進めていく制御方式
フィートバック制御 定期的に計測し、目標値をのズレを反映させてズレを直そうとする制御方式

CPU

CPUとコンピュータの5大装置
CPU 制御装置と演算装置のこと
制御装置、演算装置(制御、演算)、記憶装置(記憶)、入力装置(マウス、キーボード)、出力装置(ディスプレイ、プリンタ)
を5大装置という。

ノイマン型コンピュータ
・普段は補助記憶装置にあるが、実行時には、プログラムをあらかじめ主記憶装置上に読み込んでおく プログラム内蔵方式
・プログラムの実行を一つずつ取り出して、順番に実行していく 逐次制御方式 
 以上の特徴を持つ。 ほとんどのコンピュータがこれである。
・主記憶装置には情報を収納する***アドレス(番地)***があり、簡単に取り出せる。

CPUの命令実行手順とレジスタ
・レジスタ CPU内部にある記憶装置
・命令の手順
 1命令の取り出し(フェッチ)
 2命令の解読
 3対象データ(オペランド)読み出し
 4命令実行
オペランド 処理の対象となるデータ
機械語のアドレス指定方式
・機械語 コンピュータに理解できる言葉
・命令の構造はオペランド部(何を)***、命令部(どうしろ)が一緒なっている。
オペランド部には対象となるデータの
実行アドレス(有効アドレス)があるとは限らない。
アドレスを求める方式を
アドレス修飾(アドレス指定)***という。
アドレス修飾の種類
・即値アドレス指定方式
・直接アドレス指定方式
・間接アドレス指定方式
・インデックス(指標)アドレス指定方式
・ベースアドレス指定方式
・相対アドレス指定方式
CPUの性能指標
CPUの性能は、クロック周波数、CPI、MIPSなどの指標地を用いて評価されます。
クロック周波数 1周期の時間が短いほど多く処理ができる。(性能が高い)
クロックサイクル時間 1周期に要する時間
CPI 1命令あたり何クロックサイクル必要か
MIPS 1秒間に実行出来る命令の数

命令ミックス 命令の手順の内の3番目を省いた手順
種類
・ギブソンミックス
・コマーシャルミックス

CPUの高速化技術
複数の命令を並行して実行させ、処理効率を高めることができます。 その手法としてパイプライン処理がある。
パイプライン処理は、分岐予測(次の命令がどれかを命令する。)を行い投機実行(分岐先の命令を実行開始する手法)をする。
先読み分が無駄になることを
分岐ハザード
と呼びます。
分岐予測が外れると無駄になるので、精度が高ければ高いほど良い。

パイプライン処理の高速化を推し進める手法
・スーパーパイプライン
・スーパースカラ

CPUのアーキテクチャ(基本設計)
・CISC 高性能な命令
・RISC 単純な命令のみ

メモリ

メモリの分類
RAM、ROMの2つの種類がある。
RAM DRAM(安価、主記憶装置、低速、リフレッシュ必要、集積高)
   SRAM(高価、キャッシュメモリ、高速、リフレッシュ不要、集積低)

ROM ・マスクROM (読み出し専用 一般的のROMはこれを示す)
   ・PROM (ユーザーの手で書き換え
    ・EPROM (紫外線で消去、書き換え)
    ・EEPROM (電気的に消去、書き換え)
    ・フラッシュメモリ (ブロック単位でデータを消去して書き換え)

  
主記憶装置(メモリ)と高速化手法
レジスタとメモリと磁気ディスクの間には速度差があり、そこの速度差を出来るだけ無くす工夫がある。
レジスタとメモリの間 キャッシュメモリ、メモリとハードディスク(磁気ディスク)の間 ディスクキャッシュという手法がある。
キャッシュメモリ以外の高速化の工夫 メモリインタープ
主記憶装置の書き込み方式
・ライトスルー方式
・ライトバック方式

目的とするデータがキャッシュメモリに入っている確率 ヒット率
キャッシュメモリを利用したコンピュータの平均なアクセス時間***(実行アクセス時間)***

ハートディスクとその他の補助記憶装置

ハードディスクの構造と記録方法
ハードディスクは高速回転している。 ディスクに磁気ヘッドを使って情報を読み書きします。
ディスク(プラッタ)という。 
表面に磁性体を塗布してあり、その最小範囲をセクタ、複数集めたぐるりと一周期分の領域をトラックと呼ぶ。
同心円状のトラックを複数まとめると、シリンダという単位になる。
ハードディスクの記憶容量は仕様書表から記憶量を算出することができる。

ファイルの記録
OSはクラスタ単位で読み書きする。
複数のセクタを1ブロックと見做したものをクラスタという。 クラスタを余らせると無駄な領域となる。

データへのアクセス時間
1シーク アクセスアームを動かして目的のデータが書かれているトラック位置まで運ぶ
2サーチ ディスクの回転に伴い、目的のデータが磁気ヘッドの位置まで来るのを待つ
3データ転送 セクタに書かれたデータを読み込む
1、2を待ち時間という。
1〜3までの時間をアクセス時間という。

フラグメンーション
ハードディスクの連続した空き容量が減り、ファイルが断片化した状態をフラグメンテーションという。
フラグメンテーションを解消すルために断片化したファイルのデータを並び直す作業をデフラグメンテーション(デフラグ)

RAIDはハードディスクの合体技
複数のハードディスクを使って仮想的なハードディスクを構築、運営するのがRAIDという。
RAIDの種類
・RAIDO(ストライピング)
・RAID1(ミラーリング)
・RAID5

ハードディスク以外の補助記憶装置
・光ディスク
・光磁気ディスク
・磁気テープ
・フラッシュメモリ
・SSD

その他のハードウェア

入力装置
処理に必要なデータをコンピュータに与える機器
・キーボード
・マウス
・トラックパッド
・タッチパネル
・タブレット
・ジョイスティック

ディスプレイ
コンピュータからの出力を画面上に映し出す
ディスプレイが表示するきめ細やかさを解像度という。
コンピュータは、画面に表示させる内容を***VRAM(ビデオRAM)***という専用メモリに保持する。

プリンタ
処理結果をプリント(印刷)する装置
指標
印字品質を図る指標が解像度dpi(dot per inch)という。
1秒間に何時印字できるかを
CPS
という。
1分間に何ページ印字できるかをPPMという。

入出力インターフェース
コンピュータと様々な機器を繋ぐために定められた規格。
・パラレルインタフェーズ(並列) IDE、SCSI
・シリアルインタフェーズ(直列) USB、IEEE1394
・無線インターフェーズ(無線で通信) IrDA,Bluetooth

基本ソフトウェア

OSの仕事
コンピュータの基本動作を実現する「基本ソフトウェア」という。
3つに分けると
・制御プログラム
・言語処理プログラム
・サービスプログラム
ソフトウェアは、大きく分けて***「応用ソフトウェア」、「システムソフトウェア」***がある。
代表的なOS Windows、macOS、MS-DOS、UNIX、Linux

OSの操作性の向上
画面にアイコンやボタンを表示して、これを視覚的に操作することで命令を伝える操作方式をGUIという。

API
自身が持つ各種機能を、アプリケーションから呼出せる仕組みを用意しています。このために設けられたインターフェースをAPIという。

ジョブ管理

ジョブ 利用者からみた仕事の単位
ジョブ管理 バッチファイル(イラストの指示書に似た仕組み)をたくさん登録して、自動実行させていける仕組み
ジョブの管理の流れ
ジョブ管理は、カーネルがもつ機能の一つマスタスケジューラという管理プログラム。
マスタスケジューラはジョブの実行をジョブスケジューラに依頼。
ジョブスケジューラの実行の流れ(ジョブ管理の過程)
1リーダ(入力して登録)
2イニシエータ(優先度の高いジョブを持ってきてジョブステップ(ジョブステップ単位で実行する)に分ける)
3ターミネータ(ジョブの結果を登録)
4ライタ(ジョブ結果を出力)

スプーリング 
低速な装置とのデータのやり取りを、高速な磁気ディスクを介して行うことで処理効率を高める方法

タスク管理

コンピュータから見た仕事の単位をタスクという。
タスクの状態遷移
実行可能状態READY CPUの使用権を待っている状態
実行可能(RUN) CPUの使用権が与えられた状態、実行中
待機状態(WAIT) 入出力状態が発生したのでその終了を待っている。
以上の3つの状態を繰り返しながらコンピュータはタスクを実行している。

ディスパッチャとタスクスケジューリング
実行可能状態(READY)のタスクにCPU使用権を割り当てる管理プログラムの役割をディスパッチャという。
どのタスクに使用権を割り当てるのかを決めることをタスクスケジューリングという。
タスクスケジューリングの種類
・到着順方式
・優先順(プライオリティ)方式
・ラウンドロビン方式

マルチプログラミング
CPUの利用効率を高めるために、複数のプログラミングを見かけ上同時に実行することはマルチ(多重)プログラミングという。

割り込み処理
実行中のタスクを中断して、別の処理に切り替え、そちらが終わるとまた元のタスクに復帰するという処理を割り込み処理という。

実記憶管理

実記憶管理
限られた主記憶空間を効率よく使えるようプログラムに割り当てるものを実記憶管理という。
実記憶管理方式の種類
・固定区画方式
・可変区画方式
・オーバーレイ方式
・スワッピング方式 

可変区画方式で主記憶の空き容量が細切れになることをフラグメンテーションという。
細切れになった空き容量を連続下一つの領域にすることを***メモリコンパクション(ガーベコレクション)***という。

再配置可能プログラムとプログラムの4つの性質

プログラムの4つの性質
・再配置可能(リロケータブル) どこに配置されても実行できる
・再使用可能(リユーザブル) 再ロードすることなく、繰り返し実行できる
・再入可能(リエントラント) 複数のタスクから呼び出されても、お互いに干渉しない
・再帰的(リカーシブ) 実行中に自分自身(プログラム)を呼び出すことができる

仮想記憶管理

主記憶や補助記憶の存在を隠蔽することで、広大なメモリ空間を自由に使えるものを仮想記憶という。
仮想記憶から実記憶(主記憶)にアドレスを変換するものを動的アドレス変換機構という。
動的アドレス変換機構があるために主記憶でけでなく補助記憶も使うことができる。
仮装記憶の実装方式
・ページング方式 
ページテーブルという対応表を作り、***ページ(この方式のプログラムの単位)を出し入れする。
実記憶と補助記憶がページインやページアウトを行い、仮想記憶を作り出す。
このやり取りを行いすぎると
スラッシング(処理効率が格段に下がる)***を起こす
・セグメント方式
ページの置き換えアルゴリズム
ページイン、ページアウトを行うアルゴリズムの方式
・FIFO方式
・LIFO方式
・LRU方式
・LFU方式

ファイル管理

ファイルとは文書のこと

データを一つの塊として記録するために使う入れ物をファイルという。
ファイルの形式
・テキスト形式 
・CSV形式
・PDF
・画像用のファイル形式
・音声用のファイル形式
・動画用のファイル形式

画像や音声、動画などのマルチメディアデータは圧縮することができる。
しかし ***不可逆圧縮(元に戻らない)***する場合がある。

文書をしまう場所がディレクトリ

ファイルをグループ化して整理したものをディレクトリという。
ディレクトリは階層構造になっている。
階層構造の一番上位に位置するディレクトリはルートディレクトリという。
自分が作業しているディレクトリをカレントディレクトリという。
一つ上を親ディレクトリという。
下を子ディレクトリという。

ファイルの場所を示す方法

ルートディレクトリから目的のディレクトリへの経路を絶対パスという。
カレントディレクトリから目的のディレクトリへの経路を相対パスという。

汎用コンピュータにおけるファイル

ファイルはレコードの集合である。

ファイルへのアクセス方法
・順次アクセス 上から順にアクセス
・直接アクセス 任意のレコードに直接アクセス
・動的アクセス 上記2つを合わせたもの

ファイルの編成法
・順編成ファイル
・直接編成ファイル 
 直接アドレス方式 
 間接アドレス方式
・索引編成ファイル
・区分編成ファイル

データベース

DBMSと関係データベース

データベースの定義や操作、制御などの機能をもつミドルウェアをデータベース管理システム(DBMS)という。
データベースで主流は関係型
関係データベースは表、行、列でできている。
表を
テーブル

行をレコード、組、タプル
列をフィールド、属性と呼ぶ。

関係データベースは***リレーショナルデータベース(RDB)***と呼ぶ。

データのの表を操作する演算を関係演算という。 またこれにより新しい表を作り出す。
選択 行を取り出す
射影 列を取り出す
結合 票と表をくっつける
関係演算を行った一時的な票をビュー表という。

データベースの構造や仕様を定義するものをスキーマという。
外部スキーマ
概念スキーマ
内部スキーマ

主キーと外部キー

表には一人一人識別できるように主キーというものがある。
また外部キー、複合キー(多くの条件)がある。

正規化

データに矛盾や重複を生じさせないようにすることを正規化という。
非正規形の表から、繰り返しの部分を取り除いたのが第一次正規形という。
主キーが決まれば列の値が決まる。このような関係を関数従属という。
複合キーの一部が決まれば列の値が決まる。このような関係を部分関数従属という。

SQLでデータベースを操作する

DBMSへ指示を伝える言語をSQLという。
***データ定義言語(DLL),データ操作言語(DML)***の2つによって構成される。
SELECT文
SELECT 列名 FROM 表名 WHERE 条件
どの条件でどの表からどの列を取り出す。という意味
 

トランザクション管理と排他制御

データベースを守るための方法
一連の処理を一塊にする トランザクション
ACID特性がある。
  ・中途半端に一部だけ実行させない。
  ・矛盾させない。
  ・順番に実行した場合の処理結果が一致

・障害が起きてもデータベースを消失しない。
  他人がデータベースを勝手に読み書きを防止 排他制御
  ・共有ロック 他のユーザが読むことができない。
  ・専有ロック 他のユーザは読むことも、書くこともできない
  また お互いがロックし合うことで永遠にデータを見ることができないことをデットロックという。

SQL文を一つのプログラムにまとめ、データベース管理システムにあらかじめ保存することをストアドプロージャ

データベースの障害管理

データベースは代替品はない。なのでバックアップをとる。
頻度を決めて別のファイルに保管する。
しかし更新されるまで更新分のデータベースは補完されないので、
ジャーナル(ログファイル)に更新前のファイル(更新前ジャーナル)、更新後の状態(更新後ジャーナル)を逐次記録して、データベースの更新履歴を管理する。
障害が起こった場合はこれらのファイルを使ってロールバック,ロールフォワーなどを障害回復処理を行い、復旧させる。

理解していないところ

・基数の意味 (2進数の時の2ことかな?)
・基数変換計算方法
・2進数の足し算、引き算、かけ算、割り算
・浮動・固定小数点数の表し方
・排他的論理和回路のどういう回路か?
・マスクパターンの意味
・特定のビットを取り出す
・CPUの命令手順の中身(詳細)
・パイプラインの構造
・カーネルの意味
・実記憶管理の詳細
・絶対パス、相対パスの表記法
・ファイルの編成法
・第二・三正規表現の意味
.SQLの詳細

理解できるように頑張りたい。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?