命令セットアーキテクチャ II,III


3.2.1 算術論理演算命令の実行サイクル

 

3.2.2 データ移動命令

クイズ1 : 図3.6に示すように、メモリアドレスの計算に加算器が必要であるが、専用の加算器を設ける必要があるか?

 

3.2.3  分岐命令

 

クイズ2 : JAL では R31に(PC)+4の値を入れているが、なぜこのような値が必要か?

クイズ3 : Jでは、PC <- addr であるが、BEQでジャンプする場合は PC<- (PC)+4 +dplとなり、 (PC)+4が加えられているのは何故か?

 

3.3.1 アドレッシング

表3.6

3.3.2 バイトアドレッシングとエンディアン

ビッグエンディアン、リトルエンディアン

3.3.3 ゼロレジスタと定数の生成

 

3.4.1 サブルーチンの基本

3.4.2 サブルーチンの手順

3.4.3 スタックによるサブルーチンの実現

 

 


宿題4 学籍番号 名前 日付 を書いて 提出すること!

クイズ1) 図3.6に示すようにメモリアドレスの計算に加算器が必要であるが、専用の加算器を設ける必要はあるか?

クイズ2) MEM[2108]=MEM[2100]-MEM[2104]を計算するアセンブラプログラムとその命令に対するデータフロー図を描け

 

宿題5 学籍番号 名前 日付 を書いて 提出すること!

クイズ1) MAIN関数から関数Aを呼び出し、関数Aから関数Bを2重に呼び出すする場合には、教科書のままでは不具合が発生する。2重呼び出し時の表3F相当のプログラムを作成し、そのプログラムをどう修正すれば良いか?

クイズ2) CALLEE SAVEでの表3Fを作成せよ。CALLER SAVEとCALLEE SAVEのメリットデメリットを述べよ。

クイズ3) 3Dの@,Eの手順を短縮する方法を提案せよ。 

以上