MENU

基本情報技術者試験 - tips15


基礎理論

n進数の変換

  • 10→2
    • 整数部分
      • 商が0になるまで連続で2で割った時、余りが1になるか0になるかでそれを低い桁から並べていく
    • 小数部分
      • 小数部分が0になるまで2進数の基数2をかけて結果の整数部分(1or0)を取り出し、高い桁から並べていく
    • (100.625)10の例
整数部
100 / 2 = 50 ... 0
50 / 2 = 25 ... 0
25 / 2 = 12 ... 1
12 / 2 = 6 ... 0
6 / 2 = 3 ... 0
3 / 2 = 1 ... 1
1 / 2 = 0 ... 1 #商が0になったため終了
→(1100100)2
小数部
0.625 * 2 = 1.25 → 1
0.25 * 2 = 0.5 → 0
0.5 * 2 = 1 → 1 #小数部が0になったため終了
→(0.101)2
  • 2→8
    • 小数点を基準として適宜0を補いながら、3桁ずつ区切る(2進数の3桁で8進数の桁が1桁繰り上がるから)
    • (100011000101.001100)2の例
n進数
2進数 100 011 000 101 . 001 100
8進数 4 3 0 5 . 1 4
  • 2→16
    • 小数点を基準として適宜0を補いながら、4桁ずつ区切る
    • (100011000101.001100)2の例
n進数
2進数 1000 1100 0101 . 0011
16進数 8 c 5 . 3
  • 補数
    • ある数nに足すことで100...0となる数
    • 補数を使って足し算で引き算をする例
通常→980 - 430 = 550
980 + 570 = 1550 ← 桁あふれを無視する
  • 2の補数の求め方
    • 符号ビットを含めた全てのビットを反転したものに1を加算する
100 - 17
100 + (-17)
100 → 01100100
17  → 11101111
---------------
    (1)01010011

シフト演算

  • 論理右シフト
    • 全ビットをそのまま右へ移動
    • 空いた左端には0が入る
  • 論理左シフト
    • 全ビットをそのまま左へ移動
    • 空いた右端には0が入る
  • 算術右シフト
    • 符号付き2進数の符号ビット以外のビットをそのまま右へ移動
    • 空いた左端には符号ビットの値が入る
  • 算術左シフト
    • 符号付き2進数の符号ビット以外のビットをそのまま左へ移動
    • 空いた右端には0が入る

集合と論理演算

データ構造

  • スタック
    • LIFO
    • データを積み上げる操作をプッシュ
    • 上から取り出す操作をポップ
    • スタックポインタで管理
  • キュー
    • FIFO
    • データを列の最後に格納する操作をエンキュー
    • 列の先頭から取り出す操作をデキュー
  • 2分探索木
    • 各節にデータを格納したもので、どの節についても左<中<右のようになっている

XML文書

  • DTD(Domcument Type Definition)
    • 文書型定義

コンピューターシステム

RAID

  • RAID-0(ストライピング)
    • 複数のハードディスクにデータをブロック単位で分割し、並列に書き込む
  • RAID-1(ミラーリング)
    • 2つのハードディスクに同じデータを書き込む

稼働率

  • 直列→どちらかが故障したらシステム全体が終わる
  • 並列→どちらかが故障してもシステムとしては動く

CPU

  • 制御装置

    • 制御用レジスタを持つ
      • 命令アドレスレジスタ
        • 次に実行するアドレスを記憶する
        • PC(プログラムカウンタ)とも呼ばれる
      • 命令レジスタ
        • 主記憶から呼び出された命令を格納する
    • 汎用レジスタ
      • 様々な用途で使用される
  • 演算装置

    • 演算用レジスタを持つ
      • アキュムレーター
        • 演算結果や演算途中のデータが格納される
      • インデックスレジスタ
        • 命令のアドレス部を指定する値が入る
    • 汎用レジスタ
  • MIPS(CPUが1秒間に実行できる命令数)

    1[秒] / 平均実行命令数 * 106

  • nMIPSのCPUの平均命令実行時間

    1[秒] / (n * 106)

  • 1クロックあたりの時間

    1[秒] / (クロック周波数[MHz]*106)

プログラムの動作の仕組み

  • 命令サイクル
    • 主記憶装置から命令を取り出し、解読する工程
    • 命令アドレスレジスタに格納されているアドレスを主記憶装置へ送るとともに、読み出し信号を読み書き制御部に伝える
    • 主記憶装置は指定されたアドレスから命令を読み出し、CPU内の命令レジスタに格納する
    • 1つの命令の取り出しが終了するとプログラムレジスタの値を次に実行するべき命令のアドレスに変更する
  • 実行サイクル
    • 命令を解読し、解読された命令やアドレスに基づいて、実行、処理結果の書き込みを行う工程
    • 命令レジスタに格納された命令のうち"オペレータ部"をデコーダで解読
    • "オペランド部"をアドレス変換機構に送り、有効アドレスを計算
    • 有効アドレスにより、主記憶装置のデータを取り出す
    • 命令を実行する。
      • 通常の命令→オペランド部で指定されたデータを使用して計算を行う
      • 分岐命令→分岐先の有効アドレスを命令アドレスレジスタに格納
      • SVC命令→有効アドレスを引数として割り出し(OSの機能を呼び出す内部割り込み)を行う
    • 実行された演算結果をレジスタ、または主記憶装置へ格納する

論理回路

  • フリップフロップ回路
  • XOR
  • NAND
    • ANDの否定
  • 文字をビットマップで表示→ドットの集まりで文字を表示
    • 96dpi→1インチあたり96個ドットを並べる
  • 文字の大きさ1ポイント=1/72インチ

ハードディスク

  • 磁気ディスクの容量
    • セクタ < トラック < シリンダ < 磁気ディスク全体
  • アクセス時間

    データ転送時間 = 転送データ量 / データ転送速度
    平均回転待ち時間 = 1/2 * 1回転の時間
    1回転の時間(秒) = 60秒 / 1分間の回転数
    1回転の時間(ミリ秒) = 60秒 * 10 * 10 * 10 / 1分間の回転数
    アクセス時間 = 平均位置決め時間 + 平均回転待ち時間 + データ転送時間

メモリ

  • ページング
    • 使うときに仮想記憶上から実記憶上に読み込まれる(ページイン)
    • 空き容量がなくなったときに実記憶上に存在するページを仮想記憶に書き戻す(ページアウト)
      • どのページを追い出すかをはFIFO,LRU(Least Recently Used),LFU(Least Frequently Used)のいずれかの方式で決まる
    • ページフォールト
      • 実記憶上に存在しないページが参照されると発生する割り込み
      • ページアウトが発生する
  • スラッシング
    • 仮想記憶管理においてページングの多発によりシステム性能が極端に下がる現象
  • キャッシュメモリ
    • ライトスルー方式
    • ライトバック方式

割込み

  • 内部割込み
    • プログラム割込み
      • プログラム実行中のエラーによって発生する
    • SVC割込み
  • 外部割込み
    • 入出力割込み
      • 入出力動作が終了したときに発生する
    • 機械チェック割込み
      • ハードウェアが故障したときに発生する
    • タイマ割込み
      • プログラムの実行時間が設定時間を超過したときに発生する
    • コンソール割込み
      • オペレータが介入したときに発生する

システム構成

  • デュプレックスシステム
    • システムが部分的に故障しても待機しているシステムに切り替えて処理を続行するシステム
  • デュアルシステム
    • 1つの処理を2系統のシステムで独立におこない結果を照合させる方式
  • フォールトレランとシステム
    • 部品が壊れてもその影響を最小限に抑え、システム全体には影響を与えずに処理が続けるようにする
  • フールプルーフ
    • 操作ミスが発生しないような作りにするか、操作ミスが発生しても致命的な誤りにならないように設計する

システムのスケールアウト

  • スケールアウト
    • 既存のシステムにサーバーを追加導入する
  • スケールアップ
    • 既存サーバーにメモリやCPUの交換により増強する

技術要素

データの保存手法

  • キーバリューストア
    • 保存したいデータと対応する一意の値を設定して"データ"と"識別できる一意の値"をペアで保存
  • グラフ型データベース
    • ノード,リレーションシップ,プロパティによって関係性を表現
  • 関係モデル
    • 集合論に基づいて、行と列からなる2次元の表で表現
      • 選択
        • 表の中から特定の条件を満たす行を取り出すこと
      • 射影
        • 表の中から特定の列を取り出すこと
      • 結合
        • 共通の列をもとに複数の表を結合して新しい表を作ること

セキュリティ

  • ISMS(情報セキュリティマネジメントシステム)→ISO/IEC 27001:2013,JIS Q 27001:2014
    • セキュリティレベルを保つための仕組みや取り組み
    • ISMS適合性評価制度も設けられている
    • 統合的セキュリティ対策が適切になされていることを証明
  • ISO/IEC15408
    • セキュリティ評価基準
    • 日本ではJISEC(ITセキュリティ評価及び認証制度)
  • リスクアセスメント
    • 特定、分析、評価、対応

開発技術


プロジェクトマネジメント


サービスマネジメント


システム戦略

  • BPO(Business Process Outsourcing)
  • 情報システムの調達
    • RFI(Request for Information)を配布して技術情報などの情報提供を求め、RFP(Proporsal)で調達対象システムや調達条件などを示して提案書の提出を求める、そして検討して決定のあと契約を交わす

経営戦略

  • O to O(Online to Offline)
    • オンラインとオフラインで連携して購買活動を促す
    • LINEでクーポンくるやつ

企業と法務

  • 連関図
    • "原因-結果","目的-手段"の因果関係で問題の構造を明らかにしていく手法
  • PDPC法
    • 自体の進展とともに様々な展開が想定される問題について、対応策を検討して望ましい結果に至るプロセスを定める
  • 親和図
    • KJ法に由来する
    • グループ化する
  • いろいろな曲線
    • OC曲線
      • 検査するときに使う
    • ゴンペルツ曲線
      • ある程度テストをしたらバグは収束する
    • バスタブ曲線
      • 故障が発生するときは重ねて起こる
    • ロジスティック曲線
      • 緩やか→急激→緩やか
      • 人口や製品の普及過程

*1:1-Aの稼働率) * (1-Bの稼働率