2013年度 プログラミングⅠ ~ 内部構造と動作の仕組み(2) ~.

Slides:



Advertisements
Similar presentations
基本情報技術概論(第10回) 埼玉大学 理工学研究科 堀山 貴史
Advertisements

計算機システムⅡ 主記憶装置とALU,レジスタの制御
情報塾( ) CPUとメモリがどんなふうに動くのだろう。 レジスタやI/O プログラムの実行、マシン語。
Ibaraki Univ. Dept of Electrical & Electronic Eng.
テープ(メモリ)と状態で何をするか決める
応用情報処理V 第1回 プログラミングとは何か 2004年9月27日.
情 報 技 術 基 礎 処理装置の構成と動作 D17kog706pr101 始.
CADの概要2 電子制御設計製図Ⅰ 2009年4月14日 Ⅲ限目.
オリジナルなCPUの開発 指導教授:笠原 宏 05IE063 戸塚 雄太 05IE074 橋本 将平 05IE089 牧野 政道
App. A アセンブラ、リンカ、 SPIMシミュレータ
計算機システムⅡ 命令セットアーキテクチャ
計算機システム ハードウェア編(第3回) ~ ノイマン型コンピュータ ~.
Ibaraki Univ. Dept of Electrical & Electronic Eng.
  【事例演習6】  数式インタプリタ      解 説     “インタプリタの基本的な仕組み”.
応用情報処理V 第1回 プログラミングとは何か 2003年9月29日.
プログラムはなぜ動くのか.
計算機基礎Ⅱ,Ⅲ (指導書 pp. 76~94) 改訂:佐竹 純二 (作成:岡本 吉央).
第5回 CPUの役割と仕組み3 割り込み、パイプライン、並列処理
2016年度 プログラミングⅠ ~ 内部構造と動作の仕組み(1) ~.
Ibaraki Univ. Dept of Electrical & Electronic Eng.
基本情報技術概論(第8回) 埼玉大学 理工学研究科 堀山 貴史
パソコンの歴史 ~1970年 1970年代 1980年代 1990年~ ▲1946 ENIAC(世界最初の計算機、1,900加算/秒, 18,000素子) ▲1947 UNIVACⅠ(最初の商用計算機) ▲1964 IBM System/360(5.1MHz, 1MB, 2億円) ▲1974 インテル8080(8.
「ソフトウェアのしくみ」.
専門演習Ⅰ 国際経済学部 国際産業情報学科 2年 石川 愛
計算機入門I ハードウェア(1) 計算機のハードウェア構成 ~計算機のハードウェアとは何か~
コンピュータの原理 1E17M053-9 奈良 皐佑 1E17M070-7 師尾 直希        1E17M078-6 渡邊 惇.
コンピュータを知る 1E16M009-1 梅津たくみ 1E16M017-8 小沢あきら 1E16M035-0 柴田かいと
1.コンピュータと情報処理 p.18 第1章第1節 2.コンピュータの動作のしくみ CPUと論理回路
勉強会その3    2016/5/1 10 8分35秒 データの表現 演算.
情報リテラシー2014 part 5/5 (亀田担当分最終回)
コンピュータ系実験Ⅲ 「ワンチップマイコンの応用」 第1週目 アセンブリ言語講座
第7回 授業計画の修正 中間テストの解説・復習 前回の補足(クロックアルゴリズム・PFF) 仮想記憶方式のまとめ 特別課題について
コンピュータの基本構成について 1E16M001-1 秋田梨紗 1E16M010-2 梅山桃香 1E16M013-3 大津智紗子
プログラミング基礎a 第1回 ハードウェアとソフトウェア プログラミング総論 ~プログラミング言語とは~
ディジタル回路の設計と CADによるシステム設計
プログラム言語 プログラム言語の体系を学ぶ.
プログラミング基礎a 第1回 ハードウェアとソフトウェア プログラミング総論 ~プログラミング言語とは~
情報とコンピュータ 静岡大学工学部 安藤和敏
先週の復習: CPU が働く仕組み コンピュータの構造 pp 制御装置+演算装置+レジスタ 制御装置がなければ電卓と同様
コンピュータの仕組み 〜ハードウェア〜 1E15M009-3 伊藤佳樹 1E15M035-2 柴田将馬 1E15M061-1 花岡沙紀
2010年度 情報科学序論 ~ 内部構造と動作の仕組み(2) ~.
第5回 メモリ管理(2) オーバレイ方式 論理アドレスとプログラムの再配置 静的再配置と動的再配置 仮想記憶とメモリ階層 セグメンテーション
坂井 修一 東京大学 大学院 情報理工学系研究科 電子情報学専攻 東京大学 工学部 電気工学科
明星大学 情報学科 2012年度前期     情報技術Ⅰ   第1回
2013年度 プログラミングⅠ ~ 授業紹介 ~.
2012年度 情報科学序論 ~ 授業紹介 ~.
Ibaraki Univ. Dept of Electrical & Electronic Eng.
コンピュータアーキテクチャ 第 9 回.
コンピュータアーキテクチャ 第 2 回.
コンピュータアーキテクチャ 第 4 回.
計算機アーキテクチャ1 (計算機構成論(再)) 第一回 計算機の歴史、基本構成、動作原理
2017年度 プログラミングⅠ ~ 内部構造と動作の仕組み(1) ~.
コンピュータアーキテクチャ 第 3 回.
コンピュータアーキテクチャ 第 2 回.
コンピュータアーキテクチャ 第 5 回.
計算機アーキテクチャ1 (計算機構成論(再)) 第二回 命令の種類と形式
コンピュータアーキテクチャ 第 4 回.
情報コミュニケーション入門e 第9回 Part2 ハードウェアとソフトウェア
第4回 CPUの役割と仕組み2 命令の解析と実行、クロック、レジスタ
情報コミュニケーション入門b 第2回 Part1 ハードウェアとソフトウェア
コンピュータアーキテクチャ 第 3 回.
コンピュータアーキテクチャ 第 5 回.
コンピュータの五大要素 入力装置 データ(プログラム)を取り込む 出力装置 処理結果のデータを外部に取り出す
情報コミュニケーション入門b 第2回 Part1 ハードウェアとソフトウェア
2014年度 プログラミングⅠ ~ 内部構造と動作の仕組み(1) ~.
情報コミュニケーション入門e 第9回 Part2 ハードウェアとソフトウェア
2008年度 情報科学序論 ~ 授業紹介 ~.
情報システム基盤学基礎1 コンピュータアーキテクチャ編
2008年度 情報科学序論 ~ 内部構造と動作の仕組み(2) ~.
明星大学 情報学科 2014年度前期     情報技術Ⅰ   第1回
Presentation transcript:

2013年度 プログラミングⅠ ~ 内部構造と動作の仕組み(2) ~

機械語とアセンブラ言語 高級言語 (ソフトウェア) C言語など 機械語 アセンブラ言語 (ソフトウェア) (ソフトウェア) 1対1 ・最終的には、機械語に変換される ・人間が扱いやすい 機械語 (ソフトウェア) アセンブラ言語 (ソフトウェア) 1対1 コンピュータ (ハードウェア) ・コンピュータの本質的命令 ・人間に比較的わかりやすい 2

COMETⅡとCASLⅡ COMETⅡ(コンピュータ) COMETⅡは、実在しないコンピュータだが、コンピュータとしての五大機能を備えた仮想のコンピュータである。 CASLⅡ(アセンブラ言語) CASLⅡは、COMETⅡ上で動作する機械語に対応するアセンブラ言語である。 注意:CASLⅡの仕様書は、情報処理技術者試験を実施いている情報処理推進機構から入手できるほか、情報処理技術者試験の「案内書・願書」の巻末に記載されている。 また、CASLⅡのプログラミングを体験できるシミュレータも提供されている。  その他、多くの有志によってCASLⅡを学習できる教材がインターネット上で提供されているので、必要に応じて学習してもらいたい。 3

COMETⅡの主な仕様 1語は16ビット 主記憶の容量は65536語で0~65535番地 逐次制御 汎用レジスタは8つ(GR0~GR7) その他のレジスタとして、スタックポインタ(SP)とプログラムレジスタ(PR) 演算結果により設定されるフラグレジスタ(FR) OF SF ZF 4

機械語の構造 OP r/r1 x/r2 adr OP(8ビット):命令コード(回路指定) r/r1(4ビット):レジスタ(出力&入力) 出力先(レジスタ) OP r/r1 x/r2 adr 回路指定 入力先(レジスタまたは実効アドレス) OP(8ビット):命令コード(回路指定) r/r1(4ビット):レジスタ(出力&入力) x/r2(4ビット):レジスタ(入力) 1語の場合:(r/r1)+(x/r2)(adrはなし;第2語はなし) 2語の場合:(x/r2)+(adr)の値(x/r2≧8⇒0+(adr)) adr(16ビット):主記憶の番地(入力) 5

アセンブラ言語(機械語命令)の例 ラベル 命令コード オペランド ADDA GR1,GR2 ADDA 1 2 ラベル 命令コード オペランド ■レジスタGR1の値にレジスタGR2の値を加える ラベル 命令コード オペランド ADDA GR1,GR2 ADDA 1 2 ■レジスタGR1の値に実効アドレス(DATA)の値(#01FA)を加える ラベル 命令コード オペランド ADDA GR1,DATA DATA DC #01FA ADDA 1 (8) 実効アドレス(DATA) 6

アセンブラ言語のプログラミングの例 ■1+2を計算する(実効アドレス(ANS)に答え3が記憶される) ラベル 命令コード オペランド EXAM START LD GR0,DATA1 ADDA GR0,DATA2 ST GR0,ANS RET DATA1 DC #0001 DATA2 #0002 ANS DS 1 END 命令領域 データ領域 7

プログラムの実行 アドレス 値 #0000 **** ~ #002D #002E PUSH * 0 #002F *(スタックへ積む) #0030 LD (8) #0031 #0100 #0032 ADDA #0033 #0101 #0034 ST #0035 #0102 #0036 POP #0037 アドレス 値 #0038 **** ~ #00FF #0100(DATA1) #0001 #0101(DATA2) #0002 #0102(ANS) ****(実行後、#0003が入る) #0103 #FFFF (1)まず、OSによってプログラムとデータがメモリ上に書き込まれる。 (2)通常、レジスタを使用する前はレジスタの内容を退避させる(黄色の部分)。 8

注意すべきこと ロードアドレス(LAD)、プッシュ(PUSH)、コール(CALL)だけは実行アドレスに格納されている値ではなく、実行アドレス(アドレス)そのものを演算することに注意する

コンピュータシステム[再掲] コンピュータ 外部 プログラム データ 結果 処理 10

5大機能(2)[再掲] 中央処理装置(CPU) 制御装置 演算装置 記憶装置 入力装置 出力装置 プログラム データ 制御 11

ノイマン型コンピュータ プログラム内蔵方式 逐次制御方式 12

コンピュータシステム(まとめ) ノイマン型コンピュータ 四則演算 論理演算 論理回路 2進数 ブール代数 半導体 プログラム内蔵方式 逐次制御方式 2進数(命令・データ) 四則演算 (足し算・補数表現・シフト演算) 論理演算 論理回路 2進数 ブール代数 半導体 13