コンピュータアーキテクチャ 第 5 回.

Slides:



Advertisements
Similar presentations
1 B10 CPU を作る 1 日目 解説 TA 高田正法
Advertisements

第8回 今日の目標 §3.1 ソフトウェア 機械語と記憶装置の関係を示せる ソフトウェアの階層を示せる OSの役割を示せる
2006/10/26 山下 諒蔵 佐藤 春旗 前田 俊行 大山 恵弘 佐藤 秀明 住井 英二郎
基本情報技術概論(第10回) 埼玉大学 理工学研究科 堀山 貴史
Chapter11-4(前半) 加藤健.
記 憶 管 理(1) オペレーティングシステム 第9回.
計算機システムⅡ 主記憶装置とALU,レジスタの制御
情報システム基盤学基礎1 コンピュータアーキテクチャ編 第2回 命令
坂井 修一 東京大学 大学院 情報理工学系研究科 電子情報学専攻 東京大学 工学部 電気工学科
コンピュータ系実験Ⅲ 「ワンチップマイコンの応用」 第2週目
オリジナルなCPUの開発 指導教授:笠原 宏 05IE063 戸塚 雄太 05IE074 橋本 将平 05IE089 牧野 政道
App. A アセンブラ、リンカ、 SPIMシミュレータ
計算機システムⅡ 命令セットアーキテクチャ
計算機システム ハードウェア編(第3回) ~ ノイマン型コンピュータ ~.
第4回放送授業.
プログラムはなぜ動くのか.
計算機基礎Ⅱ,Ⅲ (指導書 pp. 76~94) 改訂:佐竹 純二 (作成:岡本 吉央).
第3回 CPUの管理と例外処理 OSによるハードウェアの管理 CPUの構成、動作 CPUの管理 例外処理、割り込み処理 コンテキストスイッチ
画像処理ボード上での 高速テンプレートマッチングの 実装と検証
デジタル回路(続き) コンピュータ(ハードウェアを中心に)
2016年度 プログラミングⅠ ~ 内部構造と動作の仕組み(1) ~.
基本情報技術概論(第8回) 埼玉大学 理工学研究科 堀山 貴史
「ソフトウェアのしくみ」.
専門演習Ⅰ 国際経済学部 国際産業情報学科 2年 石川 愛
第7回 2006/6/12.
計算機入門I ハードウェア(1) 計算機のハードウェア構成 ~計算機のハードウェアとは何か~
コンピュータの原理 1E17M053-9 奈良 皐佑 1E17M070-7 師尾 直希        1E17M078-6 渡邊 惇.
型付きアセンブリ言語を用いた安全なカーネル拡張
1.コンピュータと情報処理 p.18 第1章第1節 2.コンピュータの動作のしくみ CPUと論理回路
勉強会その3    2016/5/1 10 8分35秒 データの表現 演算.
情報リテラシー2014 part 5/5 (亀田担当分最終回)
コンピュータ系実験Ⅲ 「ワンチップマイコンの応用」 第1週目 アセンブリ言語講座
巡回冗長検査CRC32の ハード/ソフト最適分割の検討
プログラミング言語論 第五回 理工学部 情報システム工学科 新田直也.
コンピュータの基本構成について 1E16M001-1 秋田梨紗 1E16M010-2 梅山桃香 1E16M013-3 大津智紗子
ディジタル回路の設計と CADによるシステム設計
コンパイラ資料 実行時環境.
コンピュータアーキテクチャ 第 7 回.
コンピュータアーキテクチャ 第 7 回.
情報とコンピュータ 静岡大学工学部 安藤和敏
先週の復習: CPU が働く仕組み コンピュータの構造 pp 制御装置+演算装置+レジスタ 制御装置がなければ電卓と同様
コンピュータアーキテクチャ 第 11 回.
コンピュータアーキテクチャ 第 10 回.
オブジェクト指向言語論 第六回 知能情報学部 新田直也.
プログラミング言語論 第六回 理工学部 情報システム工学科 新田直也.
2010年度 情報科学序論 ~ 内部構造と動作の仕組み(2) ~.
坂井 修一 東京大学 大学院 情報理工学系研究科 電子情報学専攻 東京大学 工学部 電気工学科
Ibaraki Univ. Dept of Electrical & Electronic Eng.
コンピュータアーキテクチャ 第 9 回.
コンピュータアーキテクチャ 第 10 回.
コンピュータアーキテクチャ 第 2 回.
コンピュータアーキテクチャ 第 4 回.
計算機アーキテクチャ1 (計算機構成論(再)) 第一回 計算機の歴史、基本構成、動作原理
2013年度 プログラミングⅠ ~ 内部構造と動作の仕組み(2) ~.
2017年度 プログラミングⅠ ~ 内部構造と動作の仕組み(1) ~.
コンピュータアーキテクチャ 第 3 回.
コンピュータアーキテクチャ 第 2 回.
計算機アーキテクチャ1 (計算機構成論(再)) 第二回 命令の種類と形式
コンピュータアーキテクチャ 第 4 回.
第4回 CPUの役割と仕組み2 命令の解析と実行、クロック、レジスタ
オブジェクト指向言語論 第五回 知能情報学部 新田直也.
コンピュータアーキテクチャ 第 9 回.
コンピュータアーキテクチャ 第 3 回.
コンピュータアーキテクチャ 第 5 回.
プログラムの開発手順 1.プログラム設計(仕様の決定) 2.コーディング(ソースファイルの作成) 3.アセンブル(オブジェクトファイル
コンピュータアーキテクチャ 第 11 回.
2014年度 プログラミングⅠ ~ 内部構造と動作の仕組み(1) ~.
情報システム基盤学基礎1 コンピュータアーキテクチャ編
2008年度 情報科学序論 ~ 内部構造と動作の仕組み(2) ~.
6.5 最終コード生成 (1)コードの形式 ①絶対2進コード(AB : absolute binary) 命令後のオペランドが絶対番地指定。
Presentation transcript:

コンピュータアーキテクチャ 第 5 回

サブルーチン プログラムのある機能ブロックを分割統治する 利点 書式 必要に応じて呼び出す プログラムの 全体の 設計・検証・保守の容易化 同じプログラムブロックを何度も書かなくてすむ 書式 呼び出し側プログラムと同様 サブルーチン名:START 命令の前のラベル 設計・検証・保守の容易化 * プログラムサイズをコンパクト化 *

コール,リターン命令 CALL adr, x ・・・ (CALL subroutine) RET ・・・ (RETurn from subroutine) CALL 命令: プログラムレジスタ PR へ実効アドレス値を格納 実効アドレス ⇒ サブルーチンの先頭番地 サブルーチンの実行が終了したときの戻り番地を確保 RET 命令: PR へ戻り番地を格納 サブルーチンへ制御を移す * 呼び出しプログラムへ制御を戻す *

サブルーチン命令におけるスタック操作 呼び出しプログラムの戻り番地の記憶場所は? ⇒ スタックへプッシュダウン サブルーチンから別のサブルーチンが呼ばれたときの 戻り番地の記憶場所は? CALL 命令で呼び出しプログラムの戻り番地を自動格納 RET 命令で呼び出しプログラムの戻り番地を自動取出し SP (スタックポインタ)も自動更新 スタックへプッシュダウン * スタックへさらに積み上げ(プッシュダウン) *

ユークリッドの互除法 ~プログラム 11 のアルゴリズム~ *

メインプログラム GCD (CaslBuilder に対応して ラベル LOOP*, QUIT* を変更)

サブルーチン EUCLID, MOD (ラベル LOOP*, QUIT* を変更)

プログラム 11 の処理の流れ (a) * * *

プログラム 11 の処理の流れ (b) * * * *

プログラム 11 の処理の流れ (c) * * * *

プログラム 11 の処理の流れ (d) * * * *

演習問題 5.1 割り算 5÷2, 11÷3, 100÷7, 1000÷33, 20000÷100 を実行し,それぞれの商をラベル DIV ではじまるメモリ領域に,それぞれの余りをラベル MOD ではじまるメモリ領域に格納するプログラム DIVRPT を記述せよ.ただし,サブルーチン命令を使うこと.さらに,このプログラムをハンドアセンブルせよ. 演習問題 5.2 COMETⅡの38個の命令を,2ワード命令と1ワード命令,およびメモリ・レジスタ間命令とレジスタ間命令の視点から分類せよ.

アーキテクチャについての視点 2 章:機械語(アセンブリ)プログラマの視点 3 章/ 4 章:コンピュータ設計者の視点 COMETⅡの機械語とアセンブリ言語の仕様 想定されるハードウェアのモデル 汎用レジスタ メモリ プログラムレジスタ スタックポインタ フラグレジスタ 3 章/ 4 章:コンピュータ設計者の視点 機械語プログラマからは見えないハードウェアもあり それぞれの    * は何か? どのような * で動作するのか? どのように * するのか? 演算部と制御部に区分 機能 タイミング 実装

コンピュータ設計者が見るハードウェア 算術論理演算ユニット (ALU: arithmetic logic unit) ...算術演算,論理演算 シフタ (shifter) ...シフト演算 命令レジスタ (IR: instruction register) ... * を格納 命令解読装置(デコーダ) ...命令レジスタの命令を * 制御信号生成回路 ...演算部やメモリに * や動作の * をあたえる メモリアドレスレジスタ (MAR: memory address register) ...メモリの * を格納 メモリデータレジスタ (MDR: memory data register) ...メモリとのデータのやり取りのための * として機能 データ選択/転送回路 ...レジスタ選択回路や * など 機械語命令を表すビット列 解読 機能選択信号 タイミング アクセスアドレス バッファ(buffer) バス(bus)

コンピュータ設計者が見るハードウェア 命令の実行例: ADDA GR1,#1000 *

3 章/ 4 章の目的 3 章: 演算部の基本的な構成と動作原理および 設計の概要について知る. 4 章: 制御部の動作と設計の概要を知る. 演算部 = * ALU, シフタ, レジスタ, データ転送路からなる COMETⅡを想定 各部の実装方法 メモリへのアクセス方法 データの転送方式と制御 4 章: 制御部の動作と設計の概要を知る. 制御部 = * 命令デコーダ,制御信号生成回路からなる データパス(data path, データの通り路) コントローラ(controller)