Upload
matty
View
87
Download
0
Embed Size (px)
DESCRIPTION
H2 :マイクロプロセッサ. 岡本 吉央. 日程. 第1回 イントロダクション マイクロ動作の理解. 第2回 基本プログラミング (2 バイト乗算 ). 第3回 応用プログラミング ( 図形描画 ). 第4回 応用プログラミング ( メロディー出力 ). コンピュータの利用. ユーザ. 入力. どのような仕組みで動いているのか ?. 出力. コンピュータ. コンピュータ・ハードウェア. 記憶装置. 入力装置. 処理装置. 出力装置. コンピュータ・ソフトウェア. 記憶装置. 入力装置. アプリケーションプログラム. - PowerPoint PPT Presentation
Citation preview
1
H2 :マイクロプロセッサ
岡本 吉央
2
日程
第1回
イントロダクションマイクロ動作の理解
第2回
基本プログラミング(2 バイト乗算 )
第3回
応用プログラミング( 図形描画 )
第4回
応用プログラミング( メロディー出力 )
3
コンピュータの利用
ユーザ
コンピュータ
入力
出力
どのような仕組みで動いているのか ?
4
コンピュータ・ハードウェア
入力装置
出力装置
記憶装置
処理装置
5
コンピュータ・ソフトウェア
入力装置
出力装置
記憶装置
処理装置
アプリケーションプログラム
システムプログラム
6
疑問
処理装置 (CPU) はプログラム (≒ ソフトウェア ) をどのように解釈しているのか ?
高級言語によるプログラム
機械語によるプログラム
7
( 今のところの ) 回答
コンパイラ,アセンブラと呼ばれるプログラムを変換するプログラムを使う
高級言語によるプログラム
機械語によるプログラム
アセンブリ言語によるプログラム
コンパイ
ラアセンブ
ラ
8
ことばの整理:機械語
CPU が直接理解し実行できる言語のこと
プログラムは 0 と 1 の列から構成される
CPU ごとに異なる
高級言語によるプログラム
機械語によるプログラム
アセンブリ言語によるプログラム
コンパイ
ラアセンブ
ラ
9
ことばの整理:高級言語
人間が使いやすいプログラミング言語C , C++ , Java , Perl などCPU ごとに異ならない
高級言語によるプログラム
機械語によるプログラム
アセンブリ言語によるプログラム
コンパイ
ラアセンブ
ラ
10
ことばの整理:アセンブリ言語
機械語を人間にわかりやすくした言語命令が機械語と ( ほぼ ) 1 対 1 に対応CPU ごとに異なる
高級言語によるプログラム
機械語によるプログラム
アセンブリ言語によるプログラム
コンパイ
ラアセンブ
ラ
11
ことばの整理:コンパイル
高級言語によるプログラムをアセンブリ言語によるプログラムに( または機械語によるプログラムに )
翻訳すること
高級言語によるプログラム
機械語によるプログラム
アセンブリ言語によるプログラム
コンパイ
ラアセンブ
ラ
12
ことばの整理:アセンブル
アセンブリ言語によるプログラムを機械語によるプログラムに翻訳すること
高級言語によるプログラム
機械語によるプログラム
アセンブリ言語によるプログラム
コンパイ
ラアセンブ
ラ
13
ことばの整理:逆アセンブル
機械語によるプログラムをアセンブリ言語によるプログラムに翻訳すること
高級言語によるプログラム
機械語によるプログラム
アセンブリ言語によるプログラム
コンパイ
ラ
逆アセンブル
14
この実験の流れ
1. アセンブリ言語によるプログラミング
2. 作成したプログラムのアセンブル( 手作業 )
3. 実行
15
コンピュータ・ソフトウェア
入力装置
出力装置
記憶装置
処理装置
アプリケーションプログラム
システムプログラム
16
この実験で用いるハードウェア
KUE-CHIP2教育用の 8 ビットマイクロプロセッサ
マイクロプロセッサ ≒ CPU
17
KUE-CHIP2 の構造 (p. 14 ,図 1)
18
KUE-CHIP2 の各部:バス
入力バス:入力部分と CPU 内部を結ぶ出力バス:出力部分と CPU 内部を結ぶ
19
KUE-CHIP2 の各部: ALU
Arithmetic and Logic Unit の略演算論理装置算術演算,論理演算,アドレスの計算を
行なう
20
KUE-CHIP2 の各部: ACC
アキュムレータ (accumulator) 演算に利用するレジスタ. 8 ビット演算対象,演算結果を保持
21
KUE-CHIP2 の各部: IX
インデックスレジスタ (index register) 演算に利用するレジスタ. 8 ビット演算対象,演算結果を保持修飾アドレス指定のときのアドレス修飾
にも使用
22
KUE-CHIP2 の各部: FLAG
フラグレジスタ (flag register) 演算・シフト結果により変化. 4 ビット
0 0 0 0 CF VF NF ZF
桁上がりフラグ桁あふれフラグ
負フラグゼロフラグ
23
KUE-CHIP2 の各部: PC
プログラムカウンタ (program counter)
次に実行する命令のメモリ上でのアドレスを保持. 8 ビット
24
KUE-CHIP2 の各部: MAR
メモリアドレスレジスタメモリ操作の対象とするアドレスを保持.
8 ビット
25
KUE-CHIP2 の各部: IR
命令レジスタメモリから読み出した命令を保持.
8 ビット
26
KUE-CHIP2 の各部:内部メモリ
512 バイト.バイト単位の番地指定プログラム領域: 0 ~ 255 番地
プログラムまたはデータの格納データ領域: 256 番地~ 511 番地
データの格納
27
KUE-CHIP2 でのプログラミング
独自のアセンブリ言語で行なうプログラムはメモリのプログラム領域に
置かれる ( プログラム内臓方式 )0 番地に置かれた命令から順番に
実行される
28
KUE-CHIP2 のアセンブリ言語
命令: 1 バイトか 2 バイト命令の種類: p16 ,表 1 を参照言語仕様:附録 A を参照
29
プログラム例 (p23 ,リスト 2)
02hBA001000000000001104:
ACCRLL0111010003:
OUT0---000102:
ACC, 01hLD00010000001-011000:
オペランド命令データアドレス
「 01 」という値を ACC に格納するACC の内容を出力バッファ (OBUF) に出力するACC の内容を論理左回転し, ACC に入れる常に 02 番地へ戻る アセンブリ言語によるプログラム
機械語によるプログラム
アセンブラ
30
アセンブルの方法 (1/4)
p29 , A.2 命令セットを参照「 LD ACC,01h 」のアセンブル
Rsm 0 1 0 0 A 1 s m × Rotate sm
LD 0 1 1 0 A B ○ LoaD
ST 0 1 1 1 A B ◎ STore
SBC 1 0 0 0 A B ○ SuB with Carry
10000000-1000110
A BA = 0:ACC
A = 1:IX
B = 000:ACC
B = 000:IX
B = 01-: 即値B = 100: 直接 (P)B = 101: 直接 (D)B = 110: 修飾 (P)B = 111: 修飾 (D)
31
アセンブルの方法 (2/4)
p29 , A.2 命令セットを参照「 OUT 」のアセンブル
0 1 0 1 - - - - ×
OUT 0 0 0 1 0 - - - × OUTput
IN 0 0 0 1 1 - - - × INput
RCF 0 0 1 0 0 - - - × Reset CF
---01000
32
アセンブルの方法 (3/4)
p29 , A.2 命令セットを参照「 RLL ACC 」のアセンブル
Rsm 0 1 0 0 A 1 s m × Rotate sm
LD 0 1 1 0 A B ○ LoaD
ST 0 1 1 1 A B ◎ STore
SBC 1 0 0 0 A B ○ SuB with Carry
11100010
A sA = 0:ACC
A = 1:IX
m
RA 0 0 Right Arithmetically
LA 0 1 Left Arithmetically
RL 1 0 Right Logically
LL 1 1 Left Logically
33
アセンブルの方法 (4/4)
p29 , A.2 命令セットを参照「 BA 02h 」のアセンブル
RCF 0 0 1 0 0 - - - × Reset CF
SCF 0 0 1 0 1 - - - × Set CF
Bcc 0 0 1 1 c c ◎ Branch cc
Ssm 0 1 0 0 A 0 s m × Shift sm
00001100
cc
01000000
A 0 0 0 0 Always
VF 1 0 0 0 on oVerFlow
NZ 0 0 0 1 on Not Zero
Z 1 0 0 1 on Zero
34
プログラム例 (p23 ,リスト 2)
02hBA001000000000001104:
ACCRLL0111010003:
OUT0---000102:
ACC, 01hLD00010000001-011000:
オペランド命令データアドレス
「 - 」は 0 か 1 で置き換える ( どちらでもよい )
35
プログラム例 (p23 ,リスト 3)
02hBA001000000000001104:
ACCRLL0111010003:
OUT0000000102:
ACC, 01hLD000100000010011000:
オペランド命令データアドレス
アセンブル完了
36
プログラムの実行
第 2.5 節に沿って行なう (p.21 ~ 25)
注意:実行前には RESET を押すこと
全員行なったら次の説明 ...
37
今日の実験内容
命令がどのように実行されているか理解する
フラグの働きを理解する
38
命令はどのように実行されるか ?
クロックに沿って実行 クロック 1周期分 → 1つの実行フェーズ
KUE-CHIP2 での命令の実行:各命令は 3 から 5 フェーズで実行P0 , P1 :各命令共通P2以降:各命令相違 p17 ,表 2 を参
照
39
各フェーズの動作: P0
メモリのプログラム領域から次に実行する命令を取り出す準備
次に実行する命令の場所はPC ( プログラムカウンタ ) が示す
実際の動作: (PC)→MAR PC の内容を MAR に転送
PC++ PC の内容を 1増やす
40
各フェーズの動作: P1
命令を読み込む実際の動作:
(Mem)→IR :MAR の内容を番地とするメモリの内容が命令レジスタに転送される
41
各フェーズの動作: P2
命令レジスタに読み込んだ命令を命令デコーダが解読し,命令に応じた処理を行なう
2 バイト命令であると分かった場合,命令の 2 バイト目を読む準備をする
p17 ,表 2 を参照
42
「 D1 」を見たら「 80h 」だと思う( 変数宣言,初期化のようなもの )メモリのプログラム領域 D1 番地の内容を ACC に格納する
実際に見てみる:リスト 1 (p 18)
アドレス データ ラベル 命令 オペランド
D1: EQU 80h
D2: EQU 81h
ANS: EQU 82h
00: 64 80 LD ACC,[D1]
02: B4 81 ADD ACC,[D2]
04: 74 82 ST ACC,[ANS]
06: 0F HLT
END
80: 03
81: FD
メモリのプログラム領域 D2 番地の内容と ACC の内容を加算するメモリのプログラム領域 ANS 番地にACC の内容を格納するプログラムの実行を停止するメモリ 80 番地の内容を 03 とし,
メモリ 81 番地の内容を FD とするアセンブル結果の 16進表示
43
実行のトレースLD ACC,[D1]
P0 P1 P2 P3 P4
LD
ACC
IX(PC)→MAR
PC++(Mem)→IR
(A)→B
d(PC)→MAR
PC++
(Mem)→A
[d]
(d)(Mem)→MAR (Mem)→A
B の部分
A Bp17 ,表 2 を参照
44
実行のトレース
00
00
00
000000
000: 64001: 80002: B4...080: 03081: FD
LD ACC,[D1]
45
実行のトレース
00
00
00
000000
000: 64001: 80002: B4...080: 03081: FD
LD ACC,[D1] P0: (PC)→MAR, PC++
01
46
00
実行のトレース
01
00
64
000000
000: 64001: 80002: B4...080: 03081: FD
LD ACC,[D1] P1: (Mem)→IR
47
02
実行のトレース
01
00
64
000000
000: 64001: 80002: B4...080: 03081: FD
LD ACC,[D1] P2: (PC)→MAR, PC++
01
48
80
02
実行のトレース
01
64
000000
000: 64001: 80002: B4...080: 03081: FD
LD ACC,[D1] P3: (Mem)→MAR
49
80
02
実行のトレース
64
000000
000: 64001: 80002: B4...080: 03081: FD
LD ACC,[D1] P4: (Mem)→A
03
50
今日の実験の内容 (1)
フェーズごとの動作 ( マイクロ動作 ) を実際に追跡 ( トレース ) する
リスト 1 を使用
51
今日の実験内容 (2)
フラグレジスタの働きを理解する桁上がりフラグ (Carry Flag, CF)
演算結果に桁上がりが生じると 1桁あふれフラグ (Overflow Flag, VF)
演算結果に桁あふれが生じると 1負フラグ (Negative Flag, NF)
演算結果が負になると 1ゼロフラグ (Zero Flag, ZF)
演算結果がゼロになると 1
52
実験課題 3.1 その1
リスト 1 のプログラムをフェーズ単位で実行 ( シングルフェーズモードを利用 )
(1) 2 + 3 = ?実行開始から実行終了まで,観測可能なレジスタ,バスをトレース
( 記録用紙は配布 )
53
実験課題 3.1 その2
リスト 1 のプログラムをフェーズ単位で実行 ( シングルフェーズモードを利用 )
(2) ~ (6)ADD開始前から ADD終了後まで,
フラグレジスタのみをトレース負の数は「 2 の補数」によって表現
54
実験課題 3.1 その3
リスト 1 のプログラムのADD 命令を ADC 命令に変更
指導書にない課題(2) ~ (6)ADC開始前から ADC終了後まで,
フラグレジスタのみをトレース
55
実験課題 3.1 注意
「 6 」と「 b 」の読み間違いに注意
負の数には「 2 の補数表現」を用いる
「 64 」は何と読む?
56
実験課題 3.1
(1)実行開始から実行終了まで,観測可能なレジスタ,バスをトレース
(2) ~ (6)ADD開始前から ADD終了後まで,
フラグレジスタのみをトレースADD 命令を ADC 命令に変更して,ADC開始前から ADC終了後まで,フラグレジスタのみをトレース
57
2 の補数表現 ( 負の数の表現法 )
8 ビットで数を表現する場合
-45 は ?
実際足すと ?
0 0 1 0 1 1 0 145
1 1 0 1 0 0 1 1-45
1 0 0 0 0 0 0 0 0
-45 の 8 ビットにおける 2 の補数表現
58
第 1 回のまとめ
59
ADD 命令と ADC 命令の違い
ADD 命令:加算命令. CF を考慮しない
ADC 命令:加算命令. CF を考慮する
「 CF を考慮する」とは…演算結果によって, CF を変更するCF が 1 であるとき,加算結果に 1 を足
す
60
レポートでの必須検討事項 (p. 26 参照 )
(1) について各命令の各フェーズでの動作を
指導書 p. 16 ~ 20 に倣って図とことばの両方を使ってまとめること
(2) ~ (6) について実験結果から,フラグレジスタの働き,
および, ADD 命令と ADC 命令の違いをまとめること
61
レポートの作成補助
(1) についてp19, 20 のような図のファイルを
以下の手段で入手可能インターネット経由:
http://www.algo.ics.tut.ac.jp/~okamotoy/lect/H2/大学ページ→教員紹介→情報工学系→岡本吉央→研究室 Web→Teaching→Micro-Processors
メモリスティックで直に
62
次回
実験課題 3.2 乗算プログラムの作成符号無し 2 バイト精度の 2数の積格納する番地は指導書の指示通りで
なくても可演算結果は 2 バイトに収まると仮定
必須の予習:プログラムの作成と アセンブル
63
符号無し2バイトどうしの乗算
1 0 1 0 1 0 1 10 0 0 0 0 0 1 1
0 0 1 0 0 1 0 10 0 0 0 0 0 0 0×
1 0 1 1 0 1 1 11 0 0 0 0 1 1 1
1 バイト = 8 ビット
64
第2回
実験課題 3.2 乗算プログラムの作成符号無し 2 バイト精度の 2数の積格納する番地は指導書の指示通りで
なくてもよい演算結果は 2 バイトに収まると仮定する
必須の予習:プログラムの作成と アセンブル
65
補足:アドレシング・モード
アドレシング:オペランドの表現KUE-CHIP2 のアドレシング・モード
(p. 27 ~ 29 参照 )ACC,IX : ACC,IX の内容がデータ即値:オペランドそのものがデータ直接:オペランドがメモリのアドレス
そのアドレス上の内容がデータ修飾:「オペランド+ IX の内容」が
メモリのアドレス そのアドレス上の内容がデータ
66
第 2 回
実験課題 3.2 乗算プログラムの作成符号無し 2 バイト精度の 2数の積格納する番地は指導書の指示通りで
なくても可演算結果は 2 バイトに収まると仮定
必須の予習:プログラムの作成と アセンブル
67
進め方
最低,グループで 1つは以下を行なう作成したプログラムの入力プログラムを確認するためホワイトボードの (1) ~ (4) を計算
それらが正しく計算できたら(A) と (B) を計算.実行時間を計測
ホワイトボードに実行時間とプログラムのメモリ消費量 ( 単位:バイト ) を記入
68
終わり方
16:00 になったら「今日のまとめ」と「次回の説明」を
終わったグループはこれで終了終わっていないグループは続行
69
第 2 回のまとめ
70
第 2 回の必須検討事項 (p. 26 参照 )
今日用いたプログラムのリストとフローチャートを載せてプログラムの説明
他のグループのプログラムと比較論点1:実行時間論点2:プログラムのメモリ消費量
注意:他グループのプログラムは掲載不要だが, 簡単な説明は記述
71
第 2 回の必須検討事項 (続 )
プログラムの実行時間の算定p. 17 表 2 から 各命令のフェーズ数特定1 フェーズ = 1 クロック周期クロック周波数 = 100 Hz∴ プログラム実行時間を理論的に算出可能(1) 実行時間を決めるパラメータを特定(2) 実行時間を与える公式を導出(3) 公式から A,B の実行時間理論値を算出(4) 理論値と観測値の比較
72
第 3 回の説明:内容 (p. 25)
3.3 オシロスコープへの文字の出力必須の予習:プログラムの作成と アセンブル
3.4(1) メロディーの出力予習:軽く目を通してくる(細かい説明は次回)推奨:電卓持参
73
オシロスコープへの文字の出力
出力バッファに DA コンバータを付けて出力信号をオシロスコープへ
DA コンバータ:ディジタル信号をアナログ信号に変換する回路
1101
DA コンバータ 13
74
取り付ける DA コンバータの機能
出力バッファの 8 ビットの中の上位 4 ビットを x 座標下位 4 ビットを y 座標 とする
x 座標の取れる範囲は 0h ~ Fhy 座標の取れる範囲は 0h ~ Fh
75
オシロスコープへの出力
LD ACC, 6BhOUT
0 F0
F
6
B
76
オシロスコープへの出力
LD ACC, 6BhOUT
点を 1つずつ表示続けて表示すれば全てが同時に表示されるように見える
0 F0
F
6
B
77
注意点
1. 1つの点は「・」として表示され「■」として表示されないので注意
2. ずっと表示されるようにすること( プログラムの図形表示部分は 停止しないループ内に来る )
3. オシロスコープの残像に注意
78
表示する文字・図形について
「A」以外の文字でもよい図形でもよい
注意:適度に複雑なものを選ぶこと
79
余力がある場合
文字・図形を動かしてみる (右から左に )
80
メロディーの出力 (1)
予習:付録 B.1 (p. 30) を軽く読む
推奨:電卓持参
81
第3回
3.3 オシロスコープへの文字の出力必須の予習:プログラムの作成と アセンブル
3.4(1) メロディーの出力予習:軽く目を通してくる(細かい説明は後ほど)推奨:電卓持参
82
注意
使用する DA コンバータはとても壊れやすいので,大事に扱うこと( むやみに触らない )
特に,取り付け部分周辺の配線に注意
取り付けも取り外しも教員・ TA が行ないます
83
進め方
14:30終了を目処にグループで最低 1つは実行オシロスコープのチャンネル 1 → 赤チャンネル 2 → 青グラウンド → 黒 と接続
14:30頃に次の説明を
84
メロディーの出力
KUE-CHIP2 から波を出力しスピーカから音を出す
今日:音を出す仕組みの基礎次回:メロディー出力プログラムの実行
85
音とは??
音は空気の振動 (波 )音の三要素
大きさ高さ音色
←波の振幅の大きさ←波の周波数の高さ←波の形
86
音を出す原理
KUE-CHIP2→DA コンバータ→スピーカ
スピーカ:電気信号を音 (空気振動 ) に変換する装置
87
作る波
方形波 (矩形波 ) :長方形の波
T = Ta + Tb
波の周期 T (秒 )
Ta (秒 )Tb (秒 )
On
Off
88
音を出すプログラム ( リスト 4 p. 31)
アドレス ラベル 命令 オペランド クロック数
00: L0: LD ACC, 0xFF 4
02: OUT 4
03: LD ACC, a 4
05: L1: SUB ACC, 0x01 4
07: BNZ L1 4
09: LD ACC, 0x00 4
0B: OUT 4
0C: LD ACC, b 4
0E: L2: SUB ACC, 0x01 4
10:
12:
BNZ
BA
L2
L0
4
4
波の On 部を作る
波の Off 部を作る
自分で決める
89
作る波:長さ
方形波 (矩形波 ) :長方形の波
Ta = (12+8a)T0 , Tb = (16+8b)T0
( ただし, T0 = クロック周期
波の周期 T (秒 )
Ta (秒 )Tb (秒 )
On
Off
90
実験内容 3.4(1) p. 26
(a) オシロスコープによるクロック周期 の確認スイッチ CLK を中立にダイヤル CLKFRQ の「 0 」~「 8 」の周波数を測定
信号はコネクタ JP3 より出力
91
実験内容 3.4(1) p. 26
(b) リスト 4 の a , b を設定出力する音の周波数: 440Hz ( ラ )最適な
クロック周期 T0 , a , b を定める ( 計算 )
92
実験内容 3.4(1) p. 26
(c) 440Hz の音の出力リスト 4 の入力CLKFRQ の設定DA コンバータを通してスピーカから出力
出力音が 440Hz (誤差±1%) であることを確認
93
第 3 回のまとめ
94
第 3 回の必須検討事項 (p. 26 参照 )
(3) オシロスコープによる文字の出力プログラムのリストを載せて,
プログラムの特徴を説明
注:「他のグループとの美しさの比較」 は不要
95
第 3 回の必須検討事項 (p. 26 参照 )
(4) メロディーの出力(a) 誤差 ±1% の確認どのように最適な a, b を計算したか?
計算過程も記述することどのように確認を行なったか?
実際に誤差を計算すること他の方法も考えられるか
96
第 3 回の必須検討事項 (p. 26 参照 )
(4) メロディーの出力(b) 精度を上げるための対策KUE-CHIP2だけで対処する 場合
( ソフトウェア上,プログラム上の工夫 )
そうでなくてもよい場合( ハードウェア上の工夫 )
97
次回の説明
3.4(2) メロディーの出力簡単なメロディーを出力させる必須の予習:プログラムの作成と
アセンブル参考:付録 B.2 とリスト 5 (p. 31 ~
32)注意:リスト 5 は内容を理解してから
参考にすること
98
諸注意
メロディーの出力は無限に繰り返すことp. 32 表 4 「音階の周波数」を参考に
1 オクターブ違う音 → 周波数が 2 倍違う「休符」はどのように?
( 音を出すのは簡単.出さないのは? )同じ音が続くと 1 つの長い音に聞こえる
→対策が必要
99
第4回
3.4(2) メロディーの出力簡単なメロディーを出力させる必須の予習:プログラムの作成と
アセンブル参考:付録 B.2 とリスト 5 (p. 31 ~
32)注意:リスト 5 は内容を理解してから
参考にすること
100
進め方
グループで最低 1つは実行DA コンバータの取扱いに注意できたグループから終了
101
まとめ 必須検討事項 (p. 26)
(4)(c) 各自のデータ表現の特徴プログラムのリストを載せて,説明データ表現:CPU が理解できる表現01 の列としての表現
例えば,「楽譜」は人間に理解できるようにメロディーを表現している
102
まとめ 必須検討事項 (p. 26)
(4)(d) 作成したメロディー出力法は 他の CPU にも流用できるか?
他の CPU の例を 1つ挙げて考察挙げた CPU の実行命令フェーズを調べ,それを踏まえて考察
(4)(e) 省略 ( 必須ではない )
103
まとめ 必須検討事項 (p. 26)
(5) 自分が最もよく使用している CPU ( または,有名な CPU) について そのアーキテクチャを調べてまとめる
以下は ( この課題での ) 重要項目レジスタ,命令セット,メモリ空間の特徴
は何か?乗算命令はどのように実行されているか?
104
全体のまとめ
105
人間と機械の橋渡し
橋渡し = インタフェース
高級言語によるプログラム
機械語によるプログラム
アセンブリ言語によるプログラム
コンパイ
ラアセンブ
ラ
106
さらに勉強するために
実験 3 学期コンパイラの作成CPU の論理設計講義計算機構成論 I (3年 1学期 )システム・プログラム論 (3年 3学期 )言語処理 系論 (3年 3学期 )計算機構成論 II (4年 1学期 )
•これらは直接関係 するもの•間接的な関係にも 気を配って
107
H2 :マイクロプロセッサ
岡本 吉央