2.ロード・ストア命令

  

CASLのようなアセンブラ言語はメモリーからレジスタという記憶装置へまずデータを読み込んでから計算をしたりします。

ここではメモリー−レジスタ間のデータのやり取りを行う命令を説明します。

 

(1)LD命令 メモリーからレジスタへデータを読み込む命令

記述方法

ラベル

LD

GRx,アドレス[,GRx]

アドレス番地の内容をGRxに格納します。
アドレスの後ろに記述するレジスタは指標レジスタを指定します。(省略可)
指標レジスタを使うことによりアドレスの相対的な位置指定ができます。
指標アドレス指定については省略します。

プログラムでデータを処理しようとするときには必ずLD命令を使うことになります。

プログラム例.

PROG_LD

START

GO ;ラベルGOから処理開始

ADR

DC

10 ;定数10を定義

GO

LD

GR0,ADR ;GR0に10が格納される

 

END

 

  メニューへ戻る

 

(2)ST命令 レジスタ内のデータをメモリーへ書き込む命令

記述方法

ラベル

ST

GRx,アドレス[,GRx]

レジスタ内のデータをメモリーへ書き込む命令です。

プログラム例.

PROG_ST

START

GO

ANS

DS

1     ;データを格納する領域を1語長確保します

GO

ST

GR1,ANS      ;ANSの中にGR1の中身が入る

 

END

 

  メニューへ戻る

 

(3)LAD命令 直接アドレスを格納する命令

記述方法

ラベル

LAD

GRx,アドレス[,GRx]

レジスタへアドレスを格納します。

LD命令との違い
 LD命令は指定したアドレスの中身を読み込みます。
 LAD命令は指定したアドレスを読み込みます。

プログラム例.

PROG_LAD

START

GO

ADR

DC

1

GO

LAD

GR2,ADR ;GR2に1ではなくADRの番地が入る

 

END

 

  メニューへ戻る

 

---

トップページWhatsNewCASL2000CASL入門コーナーメール