基本情報技術概論 ( 第3回 )

29
1 演演 演 演演演演 演演演演演演演演 ( 演 ) 演演演演 演演演演演演 演演 演演

Upload: hue

Post on 05-Jan-2016

50 views

Category:

Documents


0 download

DESCRIPTION

演算 と 論理 回路. 基本情報技術概論 ( 第3回 ). 埼玉大学 理工学研究科 堀山 貴史. 前回の復習. 数値の表現方法. 文字の表現方法 ASC I I コード J I S コード、シフト JIS 、 EUC 、 Unicode. 演算 四則演算 ( + , - , ×, ÷) 10 進法での筆算と同じようにできる 2進数では、0 , 1 を操作すれば実現 できる. 1.   0100 + 0110. 0. 1. 1. 0. 論理演算. A f 0 1 1 0. 論理演算. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 基本情報技術概論  ( 第3回 )

1

演算 と 論理回路

基本情報技術概論 ( 第3回 )

埼玉大学 理工学研究科 堀山 貴史

Page 2: 基本情報技術概論  ( 第3回 )

2

数値の表現方法

前回の復習

文字の表現方法 ASC I I コード J I S コード、シフト

JIS 、 EUC 、 Unicode

演算 四則演算 ( + , - , ×, ÷)

10 進法での筆算と同じようにできる 2進数では、0 , 1 を操作すれば実現できる

  0100+ 0110

001

Page 3: 基本情報技術概論  ( 第3回 )

3

論理演算

Page 4: 基本情報技術概論  ( 第3回 )

4

論理演算

2進数の四則演算 (+ , - , ×, ÷ ) は、  0 , 1 を操作すれば実現できる

与えられた 0 , 1 (入力) から、  計算結果の 0 , 1 (出力) を得る仕組みを

作ろう!

例) NOT : 入力の否定 (0,1 を反転させ

る) A f

入力 出力

(真理値表)

A f0 11 0

Page 5: 基本情報技術概論  ( 第3回 )

5

論理演算 真理値表回路記号 論理式

A fA  f0  11  0

f = A

f = ¬ A

NOT(否定)

AB

A B  f0 0  00 1  11 0  11 1  0

f = A + B

XOR(排他的 論理和)

A B  f0 0  00 1  11 0  11 1  1

f = A + B

f = A ∨ B

AB

fOR(論理和)

f = A ・ B

f = A ∧ B

A B  f0 0  00 1  01 0  01 1  1

AB

fAND(論理積)

Page 6: 基本情報技術概論  ( 第3回 )

6

論理演算: NAND論理演算 真理値表回路記号 論理式

A fA  f0  11  0

f = A

f = ¬ A

NOT(否定)

f = A ・ B

f = A ∧ B

A B  f0 0  00 1  01 0  01 1  1

AB

fAND(論理積)

f = A ・ B

f = A ∧ B

A B  f0 0  10 1  11 0  11 1  0

NANDAB

Page 7: 基本情報技術概論  ( 第3回 )

7

f = A + B

f = A ∨ B

AB

論理演算: NOR論理演算 真理値表回路記号 論理式

A fA  f0  11  0

f = A

f = ¬ A

NOT(否定)

A B  f0 0  00 1  11 0  11 1  1

OR(論理和)

AB

ff = A + B

f = A ∨ B

A B  f0 0  10 1  01 0  01 1  0

NOR

Page 8: 基本情報技術概論  ( 第3回 )

8

AND

練習: ビット演算

各ビットごとに、指示された論理演算を行う

1 1 1 1

0 0 1 1

0 0 0 0

0 0 1 1

AND1 1 1 1

1 1 0 0

0 0 0 0

1 1 0 0

1 1 1 10 0 0 0AND

マスク演算 (この部分は演算結果が必ず 0 になる)

Page 9: 基本情報技術概論  ( 第3回 )

9

OR

練習: ビット演算

1 1 1 1

0 0 1 1

0 0 0 0

0 0 1 1

OR1 1 1 1

1 1 0 0

0 0 0 0

1 1 0 0

1 1 1 10 0 0 0OR

マスク演算 (この部分は演算結果が必ず 1 になる)

Page 10: 基本情報技術概論  ( 第3回 )

10

練習: ビット演算

0 0 1 1

0 0 1 1

0 0 1 1

0 0 1 1

XOR

1 1 1 10 0 0 0XOR

ビット反転 (この部分はビットが反転する)0クリア (同じものの XOR は、全ビット 0 になる)

XOR 1 1 1 1

1 1 0 0

0 0 0 0

1 1 0 0

Page 11: 基本情報技術概論  ( 第3回 )

11

論理回路

2進数の四則演算 (+ , - , ×, ÷ ) は、  0 , 1 を操作すれば実現できる

論理素子 (NOT, AND, OR, …) 0 , 1 の入力 から、0 , 1 の出力 を得る

仕組み

論理回路 論理素子を用いて、論理演算を実現する 組合せ回路と順序回路に分類できる

Page 12: 基本情報技術概論  ( 第3回 )

12

現在の入力のみから出力が決められる回路

  1  0 1+ 1 1    0

組合せ回路

入力 出力A B  C S

0 0  0 00 1  0 11 0  0 11 1  1 0

B S

AC

例) 半加算器 (half adder) … 入力 A , B を 加算 し、 その桁の和 (Sum) S と 桁上げ (Carry) C

を 出力

________________

________________

Page 13: 基本情報技術概論  ( 第3回 )

13

例 ) 全加算器 (full adder)

入力された A , B , C in を 加算し、

その桁の和 S と 桁上げ C out を 出力

A B C in

0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

入力 出力  S

0 00 10 11 00 11 01 01 1

C out

in

out

1 1  0 1+ 1 1  0 0

Page 14: 基本情報技術概論  ( 第3回 )

14

例) 加算器

半加算器

0

0

0

0

全加算器

1

1

1

1

全加算器

2

2

2

2

全加算器

3

3

3

3

1 1 1 1  0 1 0 1+ 1 1 1 1  0 1 0 0

Page 15: 基本情報技術概論  ( 第3回 )

15

論理回路 と 論理式

次の論理回路と論理式は等価?

真理値表で確かめる

X

Y

Z

C

S

S = X + Y + Z

C = X ・ Y + Y ・ Z + Z ・ X

X Y Z0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

C S0 00 10 11 00 11 01 01 1

X Y Z0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

C S0 00 10 11 00 11 01 01 1

Page 16: 基本情報技術概論  ( 第3回 )

16

参考: カルノー図

論理回路の設計に利用する

0 0 1 0

0 1 1 1

00 01 11 10

0

1

XYZ

X Y Z0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

C S0 00 10 11 00 11 01 01 1

C = X ・ Y + Y ・ Z + Z ・ X

カルノー図

真理値表

論理式

論理回路X

Y

Z

C

Page 17: 基本情報技術概論  ( 第3回 )

17

順序回路

記憶を保持することができる 記憶 (内部状態) と 現在の入力から 出力が決められる回路 論理素子がループしている部分がある

例) フリップフロップ ( S R フリップ フロップなど)

カウンタ

________________

________________

Page 18: 基本情報技術概論  ( 第3回 )

18

S R Q n-1

0 0 00 0 1

0 1 00 1 1

1 0 01 0 1

1 1 01 1 1

例) S R フリップ フロップ

SQ n

R Q n

入力 出力

01

00

11

--

Qn

内部状態

内部状態保持

リセット

セット

禁止入力

Page 19: 基本情報技術概論  ( 第3回 )

19

S R Q n-1

0 0 00 0 1

0 1 00 1 1

1 0 01 0 1

1 1 01 1 1

例) S R フリップ フロップ

SQ n

R Q n

入力 出力

01

00

11

--

Qn

内部状態

内部状態保持

リセット

セット

禁止入力

11 0

1 0

Page 20: 基本情報技術概論  ( 第3回 )

20

Page 21: 基本情報技術概論  ( 第3回 )

練習問題: 組合せ回路

X OR Y を、 NAND だけを使って表した論理式はどれか

ア. ((X NAND Y) NAND X) NAND Yイ. (X NAND X) NAND (Y NAND Y)ウ. (X NAND Y) NAND (X NAND Y)エ. X NAND (Y NAND (X NAND Y))

21

(H17 年度 秋 )

Page 22: 基本情報技術概論  ( 第3回 )

22

Page 23: 基本情報技術概論  ( 第3回 )

23

AND

練習: ビット演算

各ビットごとに、指示された論理演算を行う

1 1 1 1

0 0 1 1

0 0 0 0

0 0 1 1

AND

0 0 1 10 0 0 0

1 1 1 1

1 1 0 0

0 0 0 0

1 1 0 0

1 1 0 00 0 0 0

1 1 1 10 0 0 0AND

マスク演算 (この部分は演算結果が必ず 0 になる)

Page 24: 基本情報技術概論  ( 第3回 )

24

OR

練習: ビット演算

1 1 1 1

0 0 1 1

0 0 0 0

0 0 1 1

OR

1 1 1 10 0 1 1

1 1 1 1

1 1 0 0

0 0 0 0

1 1 0 0

1 1 1 11 1 0 0

1 1 1 10 0 0 0OR

マスク演算 (この部分は演算結果が必ず 1 になる)

Page 25: 基本情報技術概論  ( 第3回 )

25

練習: ビット演算

0 0 1 1

0 0 1 1

0 0 1 1

0 0 1 1

XOR

0 0 0 00 0 0 0

1 1 1 10 0 0 0XOR

ビット反転 (この部分はビットが反転する)0クリア (同じものの XOR は、全ビット 0 になる)

XOR 1 1 1 1

1 1 0 0

0 0 0 0

1 1 0 0

0 0 1 11 1 0 0

Page 26: 基本情報技術概論  ( 第3回 )

26

Page 27: 基本情報技術概論  ( 第3回 )

27

Page 28: 基本情報技術概論  ( 第3回 )

28

この教材のご利用について この教材は、以下に示す利用条件の下で、著作権者にわざわざ許

諾を求めることなく、無償で自由にご利用いただけます。講義、自主学習はもちろん、翻訳、改変、再配布等を含めて自由にご利用ください。

非商業利用に限定 この教材は、翻訳や改変等を加えたものも含めて、著作権者

の許諾を受けずに商業目的で利用することは、許可されていません。

著作権の帰属 この教材および教材中の図の著作権は、次ページ以降に示す

著作者に帰属します。この教材、または翻訳や改変等を加えたものを公開される場合には、「本教材 (or 本資料 ) は http://www.al.ics. saitama-u.ac.jp/horiyama/OCW/ の教材です (or 教材を改変したものです」 との旨の著作権表示を明確に実施してください。なお、この教材に改変等を加えたものの著作権は、次ページ以降に示す著作者および改変等を加えた方に帰属します。

同一条件での頒布・再頒布 この教材、または翻訳や改変等を加えたものを頒布・再頒布

する場合には、頒布・再頒布の形態を問わず、このページの利用条件に準拠して無償で自由に利用できるようにしてください。

この文面は、 TOKYO TECH OCW の利用条件を参考にしました

Page 29: 基本情報技術概論  ( 第3回 )

29

配布場所 http://www.al.ics.saitama-u.ac.jp/horiyama/OCW/

この powerpoint ファイルの著作者 堀山 貴史  2007-2009 [email protected]

u.ac.jp 改変等を加えられた場合は、お名前等を追加してください

図の著作者 p. 4, 8, 9, 10, 18, 19, 23, 24, 25

クリップアート : Microsoft Office Online / クリップアート

その他 堀山 貴史

この教材のご利用について