• 検索結果がありません。

一般電気工学第二

N/A
N/A
Protected

Academic year: 2021

シェア "一般電気工学第二"

Copied!
31
0
0

読み込み中.... (全文を見る)

全文

(1)

電子情報工学基礎

第1回

コンピュータの歴史と

アーキテクチャの基礎

(2)

コンピュータとは

Compute: 計算する

Computer:電子計算機 (元々は計算をする人を指す)

紀元前3000年頃 古代バビロニアで数字が誕生,

(3)

計算する機械

• 算盤,Abacus

• 1617 年にネピアによる

対数の理論,計算尺の

原型の発明

• 歯車式のパスカリーヌ計算機

• ライプニッツの横型ドラム方式の回転計算機

(4)

パスカリーヌ計算機

パスカル(B.Pascal)が製作した現存するものとしては世界最古の計算機械。 数字の書かれたダイヤルを回すことによって、中のピン歯車が回転し加算す る。歯止め機構をうまく使い桁繰り上げを行う。引き算は補数を使うことによ り加算と同じ手順で行えるように工夫されている。

(5)

ライプニッツの計算機械

ライプニッツの計算機では足し算はピン歯車を利用し,かけ算は桁くり上 げを助ける動く台を使う.装置下部の円筒には1から9までの数字に該当 する長さのちがう歯形がきざまれている.円筒をクランクで回すと円筒の 上の小さな歯車が回り,足し算が行われる.

(6)

ライプニッツ

1646~1716年 ドイツ 哲学・数学・科学者

微積分の研究者としてよく知られているが, 元々は法理学の専門家

(7)

コンピュータを生み出した概念・理論

• バベッジ:「コンピュータの父」

– コンピュータの原形となった階差機関,解析機関を発明. その処理装置や記憶装置といった概念を提言した. – 現在のコンピュータの基本構造を予言. ・

ブール:「ブール代数学」

– 論理学と代数学の結合

• チューリング:「仮想論理機械(チューリングマシン) 」

– 現在の計算機の理論的な原型

• ノイマン:「ノイマン型コンピュータ」

– プログラム内蔵方式(ストアド・プログラム方式)

(8)

階差機関とは

当時の計算に数表は不可欠 正確な数表を作りたい Xの自乗数列(X2の解) 1 4 9 16 25 36 49 の差を考えると、 3 5 7 9 11 13 ← 1次階差 さらにこの差(2次階差)を考えて見ると、 2 2 2 2 2 階差機関 対数や三角関数の数表の作製に使用された.

(9)

解析機関とは

解析機関 バベッジ自身が組み立てた解析機関の一部の 試作品。サイエンスミュージアム(ロンドン) 未完成に終わったが,現在のコンピュータの基本構成となった. 解析機関の記憶装置

(10)

ブール代数

• 0を偽(false), 1を真(true)と定義

する

• 論理和(OR, 又は)

0+0=0, 1+0=1

• 論理積 (AND, 且つ)

1・1=1, 1・0=0

• 否定(NOT)

• 真理値表

A

B

A+B

A・B

0

0

?

?

0

1

?

?

1

0

?

?

1

1

?

?

A

B

A+B

A・B

0

0

0

0

0

1

1

0

1

0

1

0

1

1

1

1

(11)

チューリングマシン

• 1937年チューリングによる仮想論理機械(チューリングマシン) • 構成:マス目で分割された一本のテープと,テープにデータを 書き込み・読み出しする一個のヘッドから成る. (あくまで仮想機械) • あらかじめ設定された幾つかの「状態」を持っており,その「状 態」とヘッドから読み出したデータの組み合わせによって, 「ヘッドをテープ上で一マス移動させる」「テープのヘッドのある マスにデータを書き込む」「状態」を変更する」のいずれかの動 作を行なう. • 決まった一定の手順によって常に同一の結果をもたらすこと, 普遍的な問題に使えること,データとプログラムには本質的な 差がないことを証明.

(12)
(13)

ストアドプログラム方式

プログラム内蔵方式・ノイマン型コンピュータ

1. プログラムをデータとして記憶して

2. これを逐次読み出して実行する

特徴

プログラムとデータに原理的に区別がない

柔軟なソフトウェアという概念の誕生

(14)

汎用電子計算機の誕生へ

• シャノン

– 電気リレーを用いたブール代数操作についての考案

• 電子汎用計算機ENIAC

(Electronic Numerical Integrator and Calculator)

– 十進法・歯車計算機の電子化・最初の電子計算機

• EDVACプロジェクト

(Electronic Discrete Variable Arithmetic Computer)

– 2 進数・逐次実行・メモリ内蔵方式 – 現在のコンピュータの原型

• EDSAC

(Electronic Delay Storage Automatic Calculator)

(15)

ENIAC

(Electronic Numerical Integrator and Calculator)

• 真空管による電子計算機 • 1946 年にペンシルバニア大学, エッカートとモークリ • 弾道計算用 • 真空管数約18000 本、重量30 トン、 • 消費電力100-170kW • ワイヤー式プログラム (ノイマン型ではない) http://lawton.com/galleries/computers/eniac/eniac01.html

(16)

コンピュータのアーキテクチャ

アーキテクチャ:

 コンピュータの設計思想や設計概念  ハードウェアとソフトウェア比率 

ハードウェア(Hardware)

 物質的な機構を有する。  実機として動作するために必要 

ソフトウェア(Software)

 ストアドプログラム方式による比率の増大  ハードウェアの変更なしに動作を変えることができる

(17)

トレードオフ点

• ハードウェア・ソフトウェア両者の境界をどこに置

くか?

– 電卓に例えると….. • + -キーしかない電卓 • 関数キーがある電卓 電 子 回 路 計 算 式 SOFTWARE HARDWARE 計 算 手 順 四 則 演 算 加 減 算 加 算 計 算 問 題 二 進 数 関 数 演 算 SOFTWARE HARDWARE トレードオフ点 トレードオフ点

(18)

アーキテクチャの

トレードオフ問題

• トレードオフ点をどこに置くか?

• ソフトウェアを大きく

- 効率的な計算プログラム(無駄な計算をしない)

• ハードウェアを大きく

– 一般に高速になる(初期のコンピュータ高速化) – ソフトウェア開発の簡略化

(19)

あらゆる機器開発において

ソフトウェア

設計・動作シミュレーション

ハードウェア

試作・製品作製

⇒ コンピュータの発展やソフトウェアの

発展(回路シミュレータなど)で

トレードオフ点はソフトウェア側に

(20)

セマンティックギャップ

1. 問題のアルゴリズム化

2. アルゴリズムのプログラム

による実現

3. プログラムの機械コード化

4. ハードウェアによる機械コー

ドの実行

•広義のセマンティックギャップ

•狭義のセマンティックギャップ

広 義 の セ マ ン テ ィ ッ ク ギ ャ ッ プ 高度で複雑 単純化された プログラマが解決 ソフトウェアが解決 コンピュータアーキ テクチャが解決 コンピュータで問題を解決する場合の手続き 狭義のセマンティック ギャップ

(21)

ビット・バイト

• 電圧の高低、電荷の有無などで0、1を示す。

• ビット (bit)

– 一つの0, 1の組み合わせで表されるデータ量

• バイト(byte), ワード(word)

– 1byte=8bit (28=256通り), 1word=2byte – 1024byte=1kB, 10242byte=1MB

• 1bitを一桁で表す2進数(binary)

– 1byte = 00000000b~11111111b

• 4bitを一桁で示す16進数(hexadecimal)

– 0h~Fh – 1byteは 00hからFFh

• 3bitを一桁で示す8進数表記(octal)

(22)

2 進数とビットパターン

B

7

B

6

B

5

B

4

B

3

B

2

B

1

B

0 LSB MSB

7 0

2

i i i

B

A

1バイトで0~255の 正数Aを記憶してい るとすると、 (10進数に変換)

B0 :最小桁ビット(LSB least significant bit ) B7 :最上位ビット(MSB most significant bit)

(23)

10進数・2進数変換

• 2進数から10進数に

i i i

b

d

2

181 1 4 16 32 128 2 1 2 0 2 1 2 0 2 1 2 1 2 0 2 1 10110101 0 1 2 3 4 5 6 7                       b

• 10進数から2進数に

181= 2で割ると90 余り・・・・ 1 90 2で割ると45 余り・・・・ 0 45 2で割ると22 余り・・・・ 1 22 2で割ると11 余り・・・・ 0 11 2で割ると5 余り・・・・ 1 5 2で割ると2 余り・・・・ 1 2 2で割ると1 余り・・・・ 0 1 2で割ると0 余り・・・・ 1 10110101b

(24)

16進数

0000b 0001b 0010b 0011b 0100b 0101b 0110b 0111b

0h

1h

2h

3h

4h

5h

6h

7h

0

1

2

3

4

5

6

7

1000b 1001b 1010b 1011b 1100b 1101b 1110b 1111b

8h

9h

Ah

Bh

Ch

Dh

Eh

Fh

8

9

10

11

12

13

14

15

4ビット 2進数 16進数 bをつける hをつける(0x)の場合もある。 10進数

(25)

8進数

000b 001b 010b 011b 100b 101b 110b 111b

0h

1h

2h

3h

4h

5h

6h

7h

&O0 &O1 &O2 &O3 &O4 &O5 &O6 &O7

&Oをつける 場合が多い 8進数

(26)

2 進数表記とデジタル演算

• 10 進数の数値計算を手動で行なう場合に

用いる手順(アルゴリズム)は

n

進数におい

ても使える。

• 数値の二進化→論理演算処理で計算が

可能となる。

• 組み合わせ論理回路

• 順序回路

(27)

半加算器 HA(Half Adder)

半加算器: ・1ビットと1ビットの加算を行う回路 ・入力は2つ、出力はそのビット出力 (Sum)と桁上り(Carry)の2つ ・下の桁の桁上がりは考慮していない ・ 1桁目は1個の半加算器だけでもよい 回路図 XOR:排他的論理和 (2つの入 力が異なる時出力が1になる)

x

i

y

i

s

i

c

i+1

0

0

?

?

0

1

?

?

1

0

?

?

1

1

?

?

y

i

x

i

s

i

c

i+1

x

i

y

i +

s

i

c

i+1

x

i

y

i

s

i

c

i+1

0

0

0

0

0

1

1

0

1

0

1

0

1

1

0

1

y

i

x

i

s

i

c

i+1 HA = AND

(28)

全加算器 FA(

Full

Adder)

全加算器=2つの半加算器+1つのOR回路 xi yi c si ci+1 si ci+1 xi yi ci HA HA xi yi ci si ci+1 FA OR

(29)

全加算器 FA

ci xi yi si ci+1 0 0 0 ? ? 0 0 1 ? ? 0 1 0 ? ? 0 1 1 ? ? 1 0 0 ? ? 1 0 1 ? ? 1 1 0 ? ? 1 1 1 ? ? 下の桁からの桁上 がりがない場合 下の桁からの桁上 がりがある場合 ci xi yi si ci+1 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1 si ci+1 xi yi ci HA HA

(30)

まとめ

• コンピュータの歴史

• コンピュータのアーキテクチャ

(設計思想や設計概念)

• ビットとバイト

• 2進数、10進数、16進数、8進数

• デジタル演算(半加算器、全加算器)

(31)

演習

① 10進数19を2進数で表せ.

② 2進数1101bを10進数で表せ.

③ 10進数1000を16進数で表せ.

参照

関連したドキュメント

これらの実証試験等の結果を踏まえて改良を重ね、安全性評価の結果も考慮し、図 4.13 に示すプロ トタイプ タイプ B

印刷物をみた。右側を開けるのか,左側を開け

最近の電装工事における作業環境は、電気機器及び電線布設量の増加により複雑化して

当所6号機は、平成 24 年2月に電気事業法にもとづき「保安規程 *1 電気事業用 電気工作物(原子力発電工作物) 」の第

遮音壁の色については工夫する余地 があると思うが、一般的な工業製品

モノづくり,特に機械を設計して製作するためには時

金属プレス加工 電子機器組立て 溶接 工場板金 電気機器組立て 工業包装 めっき プリント配線版製造.

電気第一グループ 電気第二グループ 電気第三グループ 電気第四グループ 計装第一グループ 計装第二グループ 情報システムグループ ※3