情報技術 ~2値の論理と演算~ 2014年5月1日 笠井俊信 今回の目標 2値情報を扱う基本となる理論(プール代数)に ついて学び,それがハードウェアの実現にどの ように用いられるかを学ぶ. プール代数 • 論理(2値)を扱う • (論理)変数は論理値(0 or 1)をとる • 2値の入力と出力の関係は,論理変数に対する (論理)演算からなる(論理)関数によって定義 • 論理演算の機能を持つ論理素子を使って,論理 関数を回路で表現したものが論理回路 • コンピュータは基本的に論理回路で構成 基本論理演算 • 論理積(乗法 AND) x・y – 2変数がともに1の時,論理積は1 – 2変数のいずれかが0の時,論理積は0 • 論理和(加法 OR) x+y – 2変数のいずれかが1の時,論理和は1 – 2変数がともに0の時,論理和は0 • 論理否定(否定 NOT) x – 変数が0の時,論理否定は1 – 変数が1の時,論理否定は0 演算の優先順位は,否定,乗法,加法の順 真理値表 論理変数の値とそれに対する論理関数の値の関係の表 x y x・y x+y x 0 0 0 0 1 0 1 0 1 1 1 0 0 1 0 1 1 1 1 0 プール代数の定理 名称 単位元則 零元則 べき等則 補元則 交換則 結合則 分配則 吸収則 ド・モルガン則 AND形式 x・1=x x・0=0 OR形式 x+0=x x+1=1 x・x=x x・x=0 x+x=x x・y=y・x (x・y)・z=x・(y・z) x+y・z=(x+y)・(x+z) x+y=y+x (x+y)+z=x+(y+z) x・(x+y)=x x・y=x+y x+x=1 x・(y+z)=x・y+x・z x+x・y=x x+y=x・y 例題1 分配則x+y・z=(x+y)・(x+z)を真理値表で確かめよ x 0 0 0 0 1 1 1 1 y 0 0 1 1 0 0 1 1 z 0 1 0 1 0 1 0 1 y・z 0 0 0 1 0 0 0 1 x+y x+z 0 0 0 1 1 0 1 1 1 1 1 1 1 1 1 1 (x+y)・(x+z) 0 0 0 1 1 1 1 1 x+y・z 0 0 0 1 1 1 1 1 論理式の作り方 すべての論理関数は,真理値表,論理式で表現すること が可能. 論理式を回路で構成したものが論理回路であり,論理式 と1対1に対応 • 入力のすべての組み合わせのうち,出力が1の ものだけについて,入力が1のものはそのまま,0 なら否定したものの積の式を書く.この式を最小 項という. • 最小項の論理和が求める論理式である. 主加法標準形 or 積和標準形 例題2 3入力のうち,多数が1の時出力1となり,多数が0 の時出力0となる多数決論理の論理式を書け x y z f 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 0 0 1 0 1 1 1 x・y・z x・y・z x・y・z x・y・z f = x・y・z + x・y・z + x・y・z + x・y・z 演習問題 • 吸収則x・(x+y)=x, x+x・y=xを真理値表で 確かめよ • 2入力の比較器(2入力が同じなら1,異なる なら0を出力)の真理値表と論理式を書け 演習問題1 吸収則x・(x+y)=x, x+x・y=xを真理値表で確かめよ x y x+y x・(x+y) x・y x+x・y 0 0 1 1 0 1 0 1 0 1 1 1 0 0 1 1 0 0 0 1 0 0 1 1 演習問題2 2入力の比較器(2入力が同じなら1,異なるなら0 を出力)の真理値表と論理式を書け x y f 0 0 1 1 0 1 0 1 1 0 0 1 x・y f = x・y+ x・y x・y x y 0 0 1 1 0 1 0 1 x・y x・y x・y+ x・y 1 0 0 0 0 0 0 1 1 0 0 1 f 1 0 0 1
© Copyright 2024 ExpyDoc