コンピュータの仕組み(1)ハードウェア
|
|
|
- かつかげ よどぎみ
- 6 years ago
- Views:
Transcription
1 Copyright 守屋悦朗 2005 コンピュータの仕組み (1) ハードウェア 2.1 CPU の基本原理 2 つの整数の和を出力するプログラムを考えよう main() { int a, b, c; /* 変数 a,b が整数値をとる変数であることを宣言する */ a = 1; /* a に 1 を代入する */ b = 2; /* b に 2 を代入する */ c = a+b; /* a と b の和を c に代入する */ cout << c; /* c の値を出力する */ } コンピュータは このプログラムをそのまますぐに実行できるわけではない このプログラムは人間にとって理解し易い汎用高級言語 ( この例ではC++ 言語 ) で書かれたものであり コンピュータが直接認識して実行することはできない そのため コンパイラ (compiler) と呼ばれるプログラムによって コンピュータが直接理解して実行できる形の命令 ( 機械語命令 (machine instruction) と呼ばれ 対応するハードウェア的機構ないしはそれに近いものが存在するもの ) の列に翻訳する 1つの機械語命令は 命令の種類とその作業対象となるデータの入っている場所 ( アドレス ) などを 0,1 で表現したものであり このような機械語命令の列を機械語プログラムという 機械語 (machine language) は単に 0,1 の列であるが より人間に分かりやすいように記号化したものをアセンブリ言語 (assembly language) という X と Y の和を Z に代入するプログラム 機械語 (8080A) アセンブリ言語 (8080A) 汎用高級言語 LDA X Z=X+Y (FORTRAN) LXI H,X COMPUTE Z=X+Y. (COBOL) ADD M z:=x+y; (PASCAL) STA Z Z X+Y (APL) (SETQ Z (+ X Y)) (LISP) Z=X+Y; (PL/I)
2 ADD M _z is _x+_y (Prolog) STA Z z=x+y; (C) 高級言語と違い 機械語の仕様はCPU( すなわち 機種 ) ごとに異なっている 上の例に用いたのは インテル社製の 8080A と呼ばれるMPUの機械語である (8080A はマイコンが出現した当初の 8 ビットマシン MPU=micro processor unit=マイコンのcpu) 通常 機械語命令の種類 ( 命令セット ) は 100 個から 200 個くらいあり ( 命令の種類が複雑で多種な CISC 型コンピュータ (complex instruction set computer) と 命令を単純にして実行効率を向上させた方式の RISC 型コンピュータ (ristricted instruction set computer) とでは命令の数がかなり異なる ) 1つの命令は次のような構造をしている ( 命令によって 長さや形式がかなり異なる ): 命令コード補助情報命令の対象となるアドレスあるいはデータ 1の 命令コード はその命令の名前を 2 進数で表したものであり 3の アドレス部 にはその命令の操作対象となるデータが入っているメモリ ( 主記憶装置 ) のアドレス あるいは使われるデータ自身が入れられる 2( 修飾部 ) には レジスタ番号その他の補助情報が入れられる ( レジスタ (register) とは 演算に使われる少数個の高速メモリのこと ) 参考サイト MIPSの仕様 情報処理技術者試験アセンブリ言語 CASLの仕様 ( 情報処理技術者試験センター ) さて 機械語に翻訳されたプログラムが行うことは次のようになる : 1 int a,b,c; によって主記憶装置上に int( 整数 ) 型変数 a,b,c それぞれのための領 域が確保される
3 2 a = 1; によって確保された変数 a に int 型の値 1が格納される ( 値 1は 機械語命令自身内に作られ その命令が実行されるか あるいは 主記憶装置内のデータ用領域に作られ それが演算装置を経由して変数に格納される ) 3 b = 2; についても2と同様 4 c = a+b; によって変数 a と b の値は " ロード命令 "( 機械語の命令 ) によって演算装置に渡され " 加算命令 " を使って和がとられ その演算結果が再び " ストア命令 " によって変数 c に格納される 5 cout << c; によって変数 c の値は出力装置 ( 例えば ディスプレイ ) に出力される 例えば 4 を行うためには次の 5 つの機械語命令が実行される : アセンブリ言語による記述 mov dword ptr [a (00428bf4)],1 mov dword ptr [b (00428bf8)],2 mov eax,[a (00428bf4)] add eax,dword ptr [b (00428bf8)] mov [c (00428bfc)],eax 定数 1 を a( アト レス 00428bf4) に格納せよ定数 2 を b( アト レス 00428bf8) に格納せよ a の値を演算装置にロート せよ同上演算装置に b の値を加算せよ同上演算装置の値を c( アト レス 00428bc) に格納せよ 対応する機械語命令の列 この機械語 1つ1つが何であるかを解読して 対応する処理を実行するために CPU は 各機械語命令を 命令の読み込み 命令の解読 命令の実行 結果の出力 というステップに分解して実行するというステップを繰り返す ( 下図参照 ) もう少し 細かく言うと 1 命令の読込み ( フェッチ ): プログラムカウンタ ( プログラム内のいくつめの命令を解読実行中であるかを記憶しておくためのメモリ ) が示すアドレスに従い主記憶装置から命令を読み出し 命令レジスタ (1つの命令を格納しておくためのレジスタ レジスタ (register) とは読み書きが高速にできるメモリのこと ) に格納する 次に実行すべき命令を示すようにプログラムカウンタの値を更新する ( 普通は現在実行中の命令の直後の命令
4 を実行するので 1 を足す ジャンプ命令の場合は 飛び先の命令の番号を入れる ) 2 命令の解読 ( デコード ): 命令レジスタの命令 ( 命令部とアドレス部と修飾部に分けられる ) のうち 命令部をデコーダー (decoder) に渡す デコーダーは渡されたものがどのような命令であるかを解読し 命令を実行するための制御信号を生成し 命令が主記憶装置上のデータを必要とするならば そのアドレスをアドレスレジスタに転送する 3 以下 命令の実行 : アドレスレジスタは インデックスレジスタやベースレジスタ ( これらのレジスタは アドレスを表すためのもので 実際のアドレスは ベースアドレスにインデックスレジスタの値を足したものになる ( アドレスの決め方は方式によって異なり もっと複雑な方式によっている場合もある ) の修飾をうけて 有効アドレスを割り出す 4 有効アドレスの該当アドレスに記憶されているデータをデータバス上に読み出す 5 メモリレジスタ ( メモリからのデータを記憶しておくためのレジスタ ) は データバス上のデータを受け取って記憶する 6 演算が必要なときは演算装置のアキュムレータ ( 演算器 accumulator) に渡す 7 アキュムレータは演算回路を使って演算を行う 8 以下 結果の格納 : アキュムレータは演算回路から演算結果を受け取る 主記憶 装置に格納する場合はいったんメモリレジスタに戻す 9 指定されたアドレスに演算結果を格納する 1 に戻る コンピュータの動作速度 コンピュータ内部のあらゆる処理は 一定の時間幅で同期をとって行われる この同期の幅 ( で時間を割ったもの=クロック ) が動作周波数である 例えば 1クロックが1 秒間に 1000 個であれば 1KHz( キロヘルツ ) 100 万個あれば 1MHz( メガヘルツ ) 10 億個あれば 1GHz( ギガヘルツ ) である このため 動作周波数が大きいほど処理速度が速い パソコンの場合 動作周波数はマザーボード上にある水晶発振器で作り出されるクロック信号をもとに 部品ごとに調整して用いられる CPU 内部での処理は動作周波数に合わせて 1クロックで1つの処理を行う すなわち 1クロック目に命令を読み込み 2 クロック目にそれを解読し 3クロック目に実行を行い 4クロック目に結果の書き込みを行う しかし これらの処理はそれぞれ CPU 内の別々の部分で行われるので 2 クロック目に 1 つ前の命令を解読すると同時に次の命令を読み込むことができ 2 クロック目には 2 つ前の命令を実行すると同時に 1 つ前の命令を解読し次の
5 命令も読み込むことができ というように同時に4つの処理を並行して行うことができる このような処理方法をパイプライン (pipelining) という ( 下図参照 ) 最近では CPU の内部処理を 4 ステップではなく 8 ステップあるいはそれ以上にしたり ( スーパーパイプライン : superpipelining) フェッチやデコードを複数同時に行い 演算器の数も増やして一度に複数の命令を処理できるようにしたり ( スーパースカラー : susperscalor) して 処理速度を上げることさえ行われている 動作周波数 1Hz 1 クロック =1 秒 1MHz 1 クロック =100 万分の 1 秒 命令処理の基本 1 クロック フデ実書 フ デ 実 書 フ デ 実 命令 4
6 パイプライン処理 1 クロック 命令 4 フェッチ デコード 実行 フェッチ デコード スーパースカラー処理 (2 命令並列の場合 ) 1 クロック 命令 4 参考ウェブサイト (CPU の動作原理 ) ht tp://sociolab.tamacc.chuo-u.ac.jp/~saizehp/2000zemi/line-p/0515/page4.html
7 CPU メモリ ( 主記憶装置 ) 命令 i 1 命令 フ ロク ラム データ i やテ ータの 読み込み 計算 2 計算 結果 データ 1 テ ータ領域 3 計算結果 の書き込み データ 2 上図 (CPU における命令の解読 実行サイクル ) の流れについては を実行し てみよ 参考書 : 浦昭二 市川照久 情報処理システム入門 ( 第 2 版 ) 第 2 章 サイエンス社 田辺皓正 8086マイクロコンピュータ 丸善 小黒正樹 マイコン入門講座 廣済堂 1980.
計算機アーキテクチャ
計算機アーキテクチャ 第 11 回命令実行の流れ 2014 年 6 月 20 日 電気情報工学科 田島孝治 1 授業スケジュール ( 前期 ) 2 回日付タイトル 1 4/7 コンピュータ技術の歴史と コンピュータアーキテクチャ 2 4/14 ノイマン型コンピュータ 3 4/21 コンピュータのハードウェア 4 4/28 数と文字の表現 5 5/12 固定小数点数と浮動小数点表現 6 5/19 計算アーキテクチャ
コンピュータ工学Ⅰ
コンピュータ工学 Ⅰ 中央処理装置 Rev. 2019.01.16 コンピュータの基本構成と CPU 内容 ➊ CPUの構成要素 ➋ 命令サイクル ➌ アセンブリ言語 ➍ アドレッシング方式 ➎ CPUの高速化 ➏ CPUの性能評価 コンピュータの構成装置 中央処理装置 (CPU) 主記憶装置から命令を読み込み 実行を行う 主記憶装置 CPU で実行するプログラム ( 命令の集合 ) やデータを記憶する
PowerPoint プレゼンテーション
コンピュータアーキテクチャ 第 13 週 割込みアーキテクチャ 2013 年 12 月 18 日 金岡晃 授業計画 第 1 週 (9/25) 第 2 週 (10/2) 第 3 週 (10/9) 第 4 週 (10/16) 第 5 週 (10/23) 第 6 週 (10/30) 第 7 週 (11/6) 授業概要 2 進数表現 論理回路の復習 2 進演算 ( 数の表現 ) 演算アーキテクチャ ( 演算アルゴリズムと回路
COMET II のプログラミング ここでは機械語レベルプログラミングを学びます 1
COMET II のプログラミング ここでは機械語レベルプログラミングを学びます 1 ここでは機械命令レベルプログラミングを学びます 機械命令の形式は学びましたね機械命令を並べたプログラムを作ります 2 その前に プログラミング言語について 4 プログラミング言語について 高級言語 (Java とか C とか ) と機械命令レベルの言語 ( アセンブリ言語 ) があります 5 プログラミング言語について
主記憶の使われ方 システム領域 SP スタックポインタ システム用 スタック用 プログラム起動時に OS によって確 保される (SP が決められる ) プログラム用 メインルーチン プログラム領域 命令コードの列定数 変数用領域サブルーチン命令コードの列 先頭番地は リンク時に OS によって決め
Copyright 守屋悦朗 2005 コンピュータの仕組み (2) ソフトウェア 3.3 アセンブラプログラミング (CASLⅡ) 情報処理技術者試験基本情報技術者試験 (http://www.jitec.jp/index.html) では 仮想コンピュータ (16ビットのワードマシン 主記憶容量 64KW)COMETⅡを定義し COMETⅡ のためのアセンブリ言語 CASLⅡを定めている COMETⅡとCASLⅡの仕様は情報処理技術者試験センターのウェブサイト
-2 外からみたプロセッサ GND VCC CLK A0 A1 A2 A3 A4 A A6 A7 A8 A9 A10 A11 A12 A13 A14 A1 A16 A17 A18 A19 D0 D1 D2 D3 D4 D D6 D7 D8 D9 D10 D11 D12 D13 D14 D1 MEMR
第 回マイクロプロセッサのしくみ マイクロプロセッサの基本的なしくみについて解説する. -1 マイクロプロセッサと周辺回路の接続 制御バス プロセッサ データ バス アドレス バス メモリ 周辺インタフェース バスの基本構成 Fig.-1 バスによる相互接続は, 現在のコンピュータシステムのハードウェアを特徴づけている. バス (Bus): 複数のユニットで共有される信号線システム内の データの通り道
PowerPoint プレゼンテーション
コンピュータアーキテクチャ 第 7 週命令セットアーキテクチャ ( 命令の表現 命令の実行の仕組 ) 2013 年 11 月 6 日 金岡晃 授業計画 第 1 週 (9/25) 第 2 週 (10/2) 第 3 週 (10/9) 第 4 週 (10/16) 第 5 週 (10/23) 第 6 週 (10/30) 第 7 週 (11/6) 授業概要 2 進数表現 論理回路の復習 2 進演算 ( 数の表現
Microsoft PowerPoint - Chap4 [Compatibility Mode]
計算機構成論 (Chap. ) @C01 http://www.ngc.is.ritsumei.ac.jp/~ger/lectures/comparch2012/index.html (user=ganbare, passwd = 初回の講義で言いました ) 講義に出るなら 分からないなら質問しよう 単位を取りたいなら 章末問題は自分で全部といておこう ( レポートと考えればいいんです!) ご意見
ガイダンス 2
データ構造とアルゴリズム (a) 科目区分 : 専門科目電子物性工学コース ( 自由選択 ) 電気通信システム工学コース ( 自由選択 ) 時間割番号 :G2209 ソフトウェア工学 旧課程 科目区分 : 専門科目電子物性 エネルギー工学コース ( 選択 ) システム制御 通信工学コース ( 限選 ) 時間割番号 :33310 ( 第 1 週 ) ガイダンス ソフトウェアの基本概念とプログラミング言語
UNIX 初級講習会 (第一日目)
情報処理概論 工学部物質科学工学科応用化学コース機能物質化学クラス 第 3 回 2005 年 4 月 28 日 計算機に関する基礎知識 Fortranプログラムの基本構造 文字や数値を画面に表示する コンパイル時のエラーへの対処 ハードウェアとソフトウェア ハードウェア 計算, 記憶等を行う機械 ソフトウェア ハードウェアに対する命令 データ ソフトウェア ( 命令 ) がないとハードウェアは動かない
情報科学概論
情報科学概論 映像 1 年前期 選択 担当 : 浦谷則好 http://uratani-n.com/info-science/ [email protected] 前回の課題 コンピュータの歴史について学んだことをできるだけ記せ 将来の PC に備えて欲しい機能, あるいはアプリケーションについて記せ クラウド上に自分の記憶の保存または他の人の記憶のインストール 人間が見た映像や聴いた音を記録し
ソフトウェア基礎技術研修
算術論理演算ユニットの設計 ( 教科書 4.5 節 ) yi = fi (x, x2, x3,..., xm) (for i n) 基本的な組合せ論理回路 : インバータ,AND ゲート,OR ゲート, y n 組合せ論理回路 ( 復習 ) 組合せ論理回路 : 出力値が入力値のみの関数となっている論理回路. 論理関数 f: {, } m {, } n を実現.( フィードバック ループや記憶回路を含まない
PowerPoint プレゼンテーション
電気 電子計測 第 3 回 第 8 章ディジタル計測制御システムの基礎 http://cobayasi.com/keisoku/3th/3th.pdf 今日の学習の要点 ( テキスト P85~P94). 計算機の基本的なしくみを学ぼう 2. 外部機器とのデータのやりとりについて知ろう 3. 計算機によるディジタル計測制御システムの構成法 物理量. 計算機の基本的なしくみを学ぼう ディジタル計測制御システムセンサから得た情報を
2ALU 以下はデータ幅 4ビットの ALU の例 加算, 減算,AND,OR の4つの演算を実行する 実際のプロセッサの ALU は, もっと多種類の演算が可能 リスト 7-2 ALU の VHDL 記述 M use IEEE.STD_LOGIC_1164.ALL; 00 : 加算 use IEE
差し替え版 第 7 回マイクロプロセッサの VHDL 記述 マイクロプロセッサ全体および主要な内部ユニットの,VHDL 記述の例を示す. 1)MPU(Micro Processor Uit) Module 1MPU のエンティティ記述とコントローラの例以下は, 簡単な MPU の VHDL 記述の例である ただし, アーキテクチャ部分は, 命令読み込みと実行の状態遷移のみを実現したステートマシンである
命令セットの構成例 a) 算術 演算命令 例 )ADD dest, source : dest dest + source SUB dest, source : dest dest - source AND dest, source : dest dest AND source SHR reg, c
第 11 回機械語とアーキテクチャ コンピュータは, 記号で組み立てられ, 記号で動く機械 : ソフトウェアソフトウェア としても理解されなければならない ソフトウェアの最も下位レベルのしくみが ( 命令セット ) アーキテクチャ である 講義では命令符号 ( 機械語 ) の構成と種類についてまとめる また, 機械語を効率良く実行するために採用されている技術について紹介する 機械語とアセンブリ言語
PowerPoint プレゼンテーション
コンピュータアーキテクチャ 第 11 週 制御アーキテクチャ メモリの仕組 2013 年 12 月 4 日 金岡晃 授業計画 第 1 週 (9/25) 第 2 週 (10/2) 第 3 週 (10/9) 第 4 週 (10/16) 第 5 週 (10/23) 第 6 週 (10/30) 第 7 週 (11/6) 授業概要 2 進数表現 論理回路の復習 2 進演算 ( 数の表現 ) 演算アーキテクチャ
Microsoft PowerPoint - Sol7 [Compatibility Mode]
ミニクイズ 4 E ハザード ( つ前の命令の結果を必要とする状況 ) が発生する条件を つ挙げよ. また それぞれの時に 制御線 ForwardA, ForwardB はどのように設定すれば良いか? ( 回答 ) E/.RegWrite= かつ E/.RegisterRd = ID/.RegisterRs この時,ForwardA = と制御すれば良い. E/.RegWrite= かつ E/.RegisterRd
Microsoft PowerPoint - 3.3タイミング制御.pptx
3.3 タイミング制御 ハザードの回避 同期式回路と非同期式回路 1. 同期式回路 : 回路全体で共通なクロックに合わせてデータの受け渡しをする 通信における例 :I 2 C(1 対 N 通信 ) 2. 非同期式回路 : 同一のクロックを使用せず データを受け渡す回路間の制御信号を用いてデータの受け渡しをす 通信における例 :UART(1 対 1 通信 ) 2 3.3.1 ハザード 3 1 出力回路のハザード
Microsoft PowerPoint ppt
仮想マシン () 仮想マシン 復習 仮想マシンの概要 hsm 仮想マシン プログラム言語の処理系 ( コンパイラ ) 原始プログラム (Source program) コンパイラ (Compiler) 目的プログラム (Object code) 原始言語 (Source language) 解析 合成 目的言語 (Object Language) コンパイルする / 翻訳する (to compile
RX ファミリ用 C/C++ コンパイラ V.1.00 Release 02 ご使用上のお願い RX ファミリ用 C/C++ コンパイラの使用上の注意事項 4 件を連絡します #pragma option 使用時の 1 または 2 バイトの整数型の関数戻り値に関する注意事項 (RXC#012) 共用
RX ファミリ用 C/C++ コンパイラ V.1.00 Release 02 ご使用上のお願い RX ファミリ用 C/C++ コンパイラの使用上の注意事項 4 件を連絡します #pragma option 使用時の 1 または 2 バイトの整数型の関数戻り値に関する注意事項 (RXC#012) 共用体型のローカル変数を文字列操作関数で操作する場合の注意事項 (RXC#013) 配列型構造体または共用体の配列型メンバから読み出した値を動的初期化に用いる場合の注意事項
プログラミング基礎
C プログラミング Ⅰ 授業ガイダンス C 言語の概要プログラム作成 実行方法 授業内容について 授業目的 C 言語によるプログラミングの基礎を学ぶこと 学習内容 C 言語の基礎的な文法 入出力, 変数, 演算, 条件分岐, 繰り返し, 配列,( 関数 ) C 言語による簡単な計算処理プログラムの開発 到達目標 C 言語の基礎的な文法を理解する 簡単な計算処理プログラムを作成できるようにする 授業ガイダンス
PowerPoint プレゼンテーション
コンピュータアーキテクチャ 第 6 週演算アーキテクチャ ( 続き ) ノイマン型コンピュータ 命令とは 命令の使い方 2013 年 10 月 30 日 金岡晃 授業計画 第 1 週 (9/25) 第 2 週 (10/2) 第 3 週 (10/9) 第 4 週 (10/16) 第 5 週 (10/23) 第 6 週 (10/30) 第 7 週 (11/6) 授業概要 2 進数表現 論理回路の復習 2
書式に示すように表示したい文字列をダブルクォーテーション (") の間に書けば良い ダブルクォーテーションで囲まれた文字列は 文字列リテラル と呼ばれる プログラム中では以下のように用いる プログラム例 1 printf(" 情報処理基礎 "); printf("c 言語の練習 "); printf
情報処理基礎 C 言語についてプログラミング言語は 1950 年以前の機械語 アセンブリ言語 ( アセンブラ ) の開発を始めとして 現在までに非常に多くの言語が開発 発表された 情報処理基礎で習う C 言語は 1972 年にアメリカの AT&T ベル研究所でオペレーションシステムである UNIX を作成するために開発された C 言語は現在使われている多数のプログラミング言語に大きな影響を与えている
020105.メモリの高機能化
速化記憶階層の活用 5. メモリの高機能化 メモリインタリーブ メモリインタリーブとは 0 2 3 5 バンク番号 0 2 3 5 8 9 0 2 3 5 8 9 20 並列アクセス 主記憶装置をいくつかのバンクに分割し 各バンク毎にアクセスパスを設定する あるバンクの情報に対するアクセスがある時は それに続く全てのバンクの情報を同時にそれぞれのアクセスパスを経由して読み出す バンク数をウェイといい
PowerPoint Presentation
工学部 6 7 8 9 10 組 ( 奇数学籍番号 ) 担当 : 長谷川英之 情報処理演習 第 7 回 2010 年 11 月 18 日 1 今回のテーマ 1: ポインタ 変数に値を代入 = 記憶プログラムの記憶領域として使用されるものがメモリ ( パソコンの仕様書における 512 MB RAM などの記述はこのメモリの量 ) RAM は多数のコンデンサの集合体 : 電荷がたまっている (1)/ いない
ソフトウェア基礎技術研修
マルチサイクルを用いた実現方式 ( 教科書 5. 節 ) マルチサイクル方式 () 2 つのデータパス実現方式 単一クロックサイクル : 命令を クロックサイクルで処理 マルチクロックサイクル : 命令を複数クロックサイクルで処理 単一クロックサイクル方式は処理効率が悪い. CLK 処理時間 命令命令命令命令命令 時間のかかる命令にクロック サイクル時間をあわさなければならない. 余り時間の発生 クロック
コンピュータ工学講義プリント (7 月 17 日 ) 今回の講義では フローチャートについて学ぶ フローチャートとはフローチャートは コンピュータプログラムの処理の流れを視覚的に表し 処理の全体像を把握しやすくするために書く図である 日本語では流れ図という 図 1 は ユーザーに 0 以上の整数 n
コンピュータ工学講義プリント (7 月 17 日 ) 今回の講義では フローチャートについて学ぶ フローチャートとはフローチャートは コンピュータプログラムの処理の流れを視覚的に表し 処理の全体像を把握しやすくするために書く図である 日本語では流れ図という 図 1 は ユーザーに 0 以上の整数 n を入力してもらい その後 1 から n までの全ての整数の合計 sum を計算し 最後にその sum
計算機アーキテクチャ
計算機アーキテクチャ 第 18 回ハザードとその解決法 2014 年 10 月 17 日 電気情報工学科 田島孝治 1 授業スケジュール ( 後期 ) 2 回 日付 タイトル 17 10/7 パイプライン処理 18 10/17 ハザードの解決法 19 10/21 並列処理 20 11/11 マルチプロセッサ 21 11/18 入出力装置の分類と特徴 22 11/25 割り込み 23 12/2 ネットワークアーキテクチャ
ex05_2012.pptx
2012 年度計算機システム演習第 5 回 2012.05.25 高水準言語 (C 言語 ) アセンブリ言語 (MIPS) 機械語 (MIPS) コンパイラ アセンブラ 今日の内容 サブルーチンの実装 Outline } ジャンプ 分岐命令 } j, jr, jal } レジスタ衝突 回避 } caller-save } callee-save 分岐命令 ( 復習 ) } j label } Jump
スライド 1
RL78/G13 周辺機能紹介安全機能 ルネサスエレクトロニクス株式会社 ルネサス半導体トレーニングセンター 2013/08/02 Rev. 0.00 00000-A コンテンツ 安全機能の概要 フラッシュ メモリ CRC 演算機能 RAM パリティ エラー検出機能 データの保護機能 RAM ガード機能 SFR ガード機能 不正メモリ アクセス機能 周辺機能を使用した安全機能 周波数検出機能 A/D
Microsoft PowerPoint - ProcML-12-3.ppt
プロセッサと 年次前次前期 ( 第 回 ) 進数の加減算 (overflow( overflow) 演習 次の ビット演算の結果は overflow か? () + + () + + 答 答 中島克人 情報メディア学科 [email protected] () - = + + 答 進数の加減算 (overflow( overflow) 演習 次の ビット演算の結果は overflow
Microsoft PowerPoint - NxLecture ppt [互換モード]
011-05-19 011 年前学期 TOKYO TECH 命令処理のための基本的な 5 つのステップ 計算機アーキテクチャ第一 (E) 5. プロセッサの動作原理と議論 吉瀬謙二計算工学専攻 kise_at_cs.titech.ac.jp W61 講義室木曜日 13:0-1:50 IF(Instruction Fetch) メモリから命令をフェッチする. ID(Instruction Decode)
ソフトウェア基礎技術研修
命令と命令表現 ( 教科書 3.1 節 ~3.4 節 ) プロセッサの命令と命令セット 命令 : プロセッサへの指示 ( プロセッサが実行可能な処理 ) 加算命令 減算命令 論理演算命令 分岐命令 命令セット : プロセッサが実行可能な命令の集合 ( プログラマから見えるプロセッサの論理仕様 ) プロセッサ A 加算命令分岐命令 プロセッサ B 加算命令減算命令 命令セットに含まれない命令は直接実行できない!
ディジタル回路 第1回 ガイダンス、CMOSの基本回路
1 前回教育用の RISC POCO を導入しました 今日はその Verilog 記述を紹介します まず この復習をやっておきましょう 2 最も重要な点は メモリの読み書きで レジスタ間接指定の理解です これはポインタと一緒なので 間違えないように修得してください 3 RISC なので 基本の演算はレジスタ同士でしかできません MV はレジスタ間のデータ移動なので気をつけてください 4 イミーディエイト命令は
arduino プログラミング課題集 ( Ver /06/01 ) arduino と各種ボードを組み合わせ 制御するためのプログラミングを学 ぼう! 1 入出力ポートの設定と利用方法 (1) 制御( コントロール ) する とは 外部装置( ペリフェラル ) が必要とする信号をマイ
arduino プログラミング課題集 ( Ver.5.0 2017/06/01 ) arduino と各種ボードを組み合わせ 制御するためのプログラミングを学 ぼう! 1 入出力ポートの設定と利用方法 (1) 制御( コントロール ) する とは 外部装置( ペリフェラル ) が必要とする信号をマイコンから伝える 外部装置の状態をマイコンで確認する 信号の授受は 入出力ポート 経由で行う (2) 入出力ポートとは?
VelilogHDL 回路を「言語」で記述する
2. ソースを書く 数値表現 数値表現形式 : ss'fnn...n ss は, 定数のビット幅を 10 進数で表します f は, 基数を表します b が 2 進,o が 8 進,d が 10 進,h が 16 進 nn...n は, 定数値を表します 各基数で許される値を書くこ Verilog ビット幅 基数 2 進表現 1'b0 1 2 進 0 4'b0100 4 2 進 0100 4'd4 4
Microsoft PowerPoint - OS07.pptx
この資料は 情報工学レクチャーシリーズ松尾啓志著 ( 森北出版株式会社 ) を用いて授業を行うために 名古屋工業大学松尾啓志 津邑公暁が作成しました 主記憶管理 主記憶管理基礎 パワーポイント 27 で最終版として保存しているため 変更はできませんが 授業でお使いなる場合は松尾 ([email protected]) まで連絡いただければ 編集可能なバージョンをお渡しする事も可能です 復習 OS
スライド タイトルなし
2019. 7.18 Ibaraki Univ. Dept of Electrical & Electronic Eng. Keiichi MIYAJIMA 今後の予定 7 月 18 日メモリアーキテクチャ1 7 月 22 日メモリアーキテクチャ2 7 月 29 日まとめと 期末テストについて 8 月 5 日期末試験 メモリアーキテクチャ - メモリ装置とメモリアーキテクチャ - メモリアーキテクチャメモリ装置とは?
Microsoft PowerPoint - NxLec-2010-11-01.ppt
2010 年 後 学 期 レポート 問 題 計 算 機 アーキテクチャ 第 二 (O) 4. シングルサイクルプロセッサの 実 装 とパイプライン 処 理 大 学 院 情 報 理 工 学 研 究 科 計 算 工 学 専 攻 吉 瀬 謙 二 kise _at_ cs.titech.ac.jp S321 講 義 室 月 曜 日 5,6 時 限 13:20-14:50 1 1. 1から100までの 加 算
Microsoft PowerPoint - Chap3 [Compatibility Mode]
計算機構成論 (Chap. 3) @C4 http://www.ngc.is.ritsumei.ac.jp/~ger/lectures/comparch22/index.html (user=ganbare, passwd = 初回の講義で言いました ) 講義に出るなら 分からないなら質問しよう 単位を取りたいなら 章末問題は自分で全部といておこう ( レポートと考えればいいんです!) ご意見 ご要望
MIPSのマイクロアーキテクチャ
今回はパイプラインの動作を妨げるハザードとその対処法をやります 1 前回紹介した構造ハザードは 資源の競合により起こるハザードで回避は簡単 ( というか複製しか手がない ) でした 今回はハザードの中のハザード データハザードを紹介します 2 パイプライン処理では 直前の命令の結果がレジスタファイルに書き込まれないうちに 後続の命令が読み出しを行うため この命令間にデータの依存性があると 誤って更新前の値を読み出してしまいます
目次 1 I2Cとは 13 結線写真 2 センサの多くがI2Cに対応 14 WHO_AM_I 3 マイコンでのI2C通信例 15 I2C読込みプログラム 4 とは 16 I2C読込みスクリプト概要① 5 タイミングパラメータ 17 I2C読込みスクリプト概要② 6 書込み 18 センサ読込みプログラ
第5回 Arduino入門 I2C通信編 プレゼン by いっちー 目次 1 I2Cとは 13 結線写真 2 センサの多くがI2Cに対応 14 WHO_AM_I 3 マイコンでのI2C通信例 15 I2C読込みプログラム 4 とは 16 I2C読込みスクリプト概要① 5 タイミングパラメータ 17 I2C読込みスクリプト概要② 6 書込み 18 センサ読込みプログラム 7 読込み 19 センサ読込み概要①
スライド 1
2. 転送命令を学ぼう 2004 年 8 月に本講義ノートを Web にアップして以来, とても多くの方の訪問を受けてきました. 内容が一部古くなっていたので,2012 年 5 月時点の情報に書き改めました. 主な変更点は以下の通りです. 第 0 章に本講座の準備のための章を設け, 以下の更新をしました. 1. プログラム開発環境 (MPLAB IDE) を v8.84 に更新しました. 2012
回路 7 レジスタ ( 同期イネーブル及び非同期リセット付 ) 入力データを保持するのに用いる記憶素子 使用用途として, マイクロプロセッサ内部で演算や実行状態の保持に用いられる Fig4-2 のレジスタは, クロック信号の立ち上がり時かつ 信号が 1 のときに外部からの 1 ビットデータ R をレ
第 4 回 VHDL 演習 2 プロセス文とステートマシン プロセス文を用いるステートマシンの記述について学ぶ 回路 6 バイナリカウンタ (Fig.4-1) バイナリカウンタを設計し, クロック信号に同期して動作する同期式回路の動作を学ぶ ⅰ) リスト 4-1 のコードを理解してから, コンパイル, ダウンロードする ⅱ) 実験基板上のディップスイッチを用いて, 発生するクロック周波数を 1Hz
プログラミング実習I
プログラミング実習 I 03 変数と式 人間システム工学科井村誠孝 [email protected] 3.1 変数と型 変数とは p.60 C 言語のプログラム中で, 入力あるいは計算された数や文字を保持するには, 変数を使用する. 名前がついていて値を入れられる箱, というイメージ. 変数定義 : 変数は変数定義 ( 宣言 ) してからでないと使うことはできない. 代入 : 変数には値を代入できる.
バイオプログラミング第 1 榊原康文 佐藤健吾 慶應義塾大学理工学部生命情報学科
バイオプログラミング第 1 榊原康文 佐藤健吾 慶應義塾大学理工学部生命情報学科 ポインタ変数の扱い方 1 ポインタ変数の宣言 int *p; double *q; 2 ポインタ変数へのアドレスの代入 int *p; と宣言した時,p がポインタ変数 int x; と普通に宣言した変数に対して, p = &x; は x のアドレスのポインタ変数 p への代入 ポインタ変数の扱い方 3 間接参照 (
