English
  ![]() ★HARDWARE Manual
★SCUユーザーズマニュアル
★HARDWARE Manual
★SCUユーザーズマニュアル
▲戻る|
     進む▼
SCUユーザーズマニュアル/第4章 DSP制御
■4.2 命令一覧
 下記に、SCU-DSPで使用される命令の一覧を示します。
		
- ◆演算命令
		- 
		-   NOP
		
- 何もしません。  
		
-   AND
		  
- [ACL]と[PL]との論理積をとります。  
		
-   OR
		  
- [ACL]と[PL]との論理和をとります。  
		
-   XOR
		  
- [ACL]と[PL]との排他的論理和をとります。  
		
-   ADD
		  
- [ACL]と[PL]を加算します。  
		
-   SUB
		  
- [ACL]から[PL]を減算します。  
		
-   AD2
		  
- [ACH][ACL]と[PH][PL]を加算します。  
		
-   SR
		  
- [ACL]を1ビット右シフトし、LSBをキャリーフラグに格納します。  
		
-   RR
		  
- [ACL]を1ビット右ローテートし、LSBをキャリーフラグに格納します。  
		
-   SL
		  
- [ACL]を1ビット左シフトし、0を[ACL]のLSBに、MSBをキャリーフラグに格納します。
		
-   RL
		  
- [ACL]を1ビット左ローテートし、MSBをキャリーフラグに格納します。  
		
-   RL8
		  
- [ACL]を8ビット左ローテーし、b24をキャリーフラグに格納します。  
		 
- 
		-   NOP
		  
- 何もしません。  
		
-   MOV [s],X
		  
- データRAMから[RX]へデータを転送します。  
		
-   MOV MUL,P
		  
- [MULTIPLIER]のデータを[PH][PL]に転送します。  
		
-   MOV [s],P
		  
- データRAMから[PL]へデータを転送します。  
		 
- 
		-   NOP
		  
- 何もしません。  
		
-   MOV [s],Y
		  
- データRAMから[RY]へデータを転送します。  
		
-   CLR A
		  
- [ACH]と[ACL]を0クリアします。  
		
-   MOV ALU,A
		  
- [ALU]のデータを[ACH][ACL]に転送します。  
		
-   MOV [s],A
		  
- データRAMから[ACL]へデータを転送します。  
		 
- 
		-   NOP
		  
- 何もしません。  
		
-   MOV SImm,[d]
		  
- SImm(ショートイミディエート)のデータを[d]で指定されるデータRAMあるいはレジスタに格納します。  
		
-   MOV [s],[d]
		  
- [s]で指定されるデータRAMあるいはレジスタから[d]で指定されるデータRAMあるい はレジスタへデータを転送します。  
		 
- 
		-   MVI Imm,[d]
		  
- Imm(イミディエート)のデータを[d]で指定されたデータRAMあるいはレジスタに 格納します。  
		
-   MVI Imm,[d],Z
		  
- プログラム制御ポートのZ(ゼロフラグ)が1のときに限り、Imm(イミディエート) のデータを[d]で指定されたデータRAMあるいはレジスタに格納します。  
		
-   MVI Imm,[d],NZ
		  
- プログラム制御ポートのZ(ゼロフラグ)が0のときに限り、Imm(イミディエート) のデータを[d]で指定されたデータRAMあるいはレジスタに格納します。 
		
-   MVI Imm,[d],S
		  
- プログラム制御ポートのS(サインフラグ)が1のときに限り、Imm(イミディエート)の データを[d]で指定されたデータRAMあるいはレジスタに格納します。  
		
-   MVI Imm,[d],NS
		  
- プログラム制御ポートのS(サインフラグ)が0のときに限り、Imm(イミディエート)の データを[d]で指定されたデータRAMあるいはレジスタに格納します。  
		
-   MVI Imm,[d],C
		  
- プログラム制御ポートのC(キャリーフラグ)が1のときに限り、Imm(イミディエート) のデータを[d]で指定されたデータRAMあるいはレジスタに格納します。  
		
-   MVI Imm,[d],NC
		  
- プログラム制御ポートのC(キャリーフラグ)が0のときに限り、Imm(イミディエート) のデータを[d]で指定されたデータRAMあるいはレジスタに格納します。  
		
-   MVI Imm,[d],TO
		  
- プログラム制御ポートのTO(D0バスDMA実行中フラグ)が1のときに限り、Imm(イミディ エート)のデータを[d]で指定されたデータRAMあるいはレジスタに格納します。  
		
-   MVI Imm,[d],NTO
		  
- プログラム制御ポートのTO(D0バスDMA実行中フラグ)が0のときに限り、Imm(イミディ エート)のデータを[d]で指定されたデータRAMあるいはレジスタに格納します。  
		
-   MVI Imm,[d],ZS
		  
- プログラム制御ポートのZ(ゼロフラグ)またはS(サインフラグ)のいずれかが1のとき に限り、Imm(イミディエート)のデータを[d]で指定されたデータRAMあるいはレジスタに 格納します。  
		
-   MVI Imm,[d],NZS
		  
- プログラム制御ポートのZ(ゼロフラグ)とS(サインフラグ)がともに0のときに限り、 Imm(イミディエート)のデータを[d]で指定されたデータRAMあるいはレジスタに格納し ます。  
		 
- 
		-   DMA D0,[RAM],SImm
		  
- SImm(ショートイミディエート)のデータを転送カウンタとして転送ワード数カウンタ([TN0])にセットし、D0バスを使用して外部から、[RAM]で指定されたRAMエリアにデー タを転送します。
転送開始アドレス([RA0])と転送ワード数カウンタ([TN0])は、転送終了したときの値に更新されます。  
		
-   DMA [RAM],D0,SImm
		  
- SImm(ショートイミディエート)のデータを転送カウンタとして転送ワード数カウンタ([TN0])にセットし、D0バスを使用して[RAM]で指定されたRAMエリアから、外部にデータを転送します。
転送開始アドレス([WA0])と転送ワード数カウンタ([TN0])は、転送終了したときの値に更新されます。 
		
-   DMA D0,[RAM],[s]
		  
- [s]で指定されたデータRAM内のデータを転送カウンタとして転送ワード数カウンタ([TN0])にセットし、D0バスを使用して外部から、[RAM]で指定されたRAMエリアにデータを転送します。
転送開始アドレス([RA0])と転送ワード数カウンタ([TN0])は、転送終了したときの値に更新されます。
		
-   DMA [RAM],D0,[s]
		  
- [s]で指定されたデータRAM内のデータを転送カウンタとして転送ワード数カウンタ([TN0])にセットし、D0バスを使用して[RAM]で指定されたRAMエリアから、外部にデータを転送します。
転送開始アドレス([WA0])と転送ワード数カウンタ([TN0])は、転送終了したときの値に更新されます。
		
-   DMAH D0,[RAM],SImm
		  
- SImm(ショートイミディエート)のデータを転送カウンタとして転送ワード数カウンタ([TN0])にセットし、D0バスを使用して外部から、[RAM]で指定されたRAMエリアにデータを転送します。
転送開始アドレス([RA0])と転送ワード数カウンタ([TN0])は、転送を開始したときの値を保持します。
		
-   DMAH [RAM],D0,SImm
		  
- SImm(ショートイミディエート)のデータを転送カウンタとして転送ワード数カウンタ([TN0])にセットし、D0バスを使用して[RAM]で指定されたRAMエリアから、外部にデータを転送します。
転送開始アドレス([WA0])と転送ワード数カウンタ([TN0])は、転送を開始したときの値を保持します。  
		
-   DMAH D0,[RAM],[s]
		  
- [s]で指定されたデータRAM内のデータを転送カウンタとして転送ワード数カウンタ([TN0])にセットし、D0バスを使用して外部から、[RAM]で指定されたRAMエリアにデータを転送します。
転送開始アドレス([RA0])と転送ワード数カウンタ([TN0])は、転送を開始したときの値を保持します。
		
-   DMAH [RAM],D0,[s]
		  
- [s]で指定されたデータRAM内のデータを転送カウンタとして転送ワード数カウンタ([TN0])にセットし、D0バスを使用して[RAM]で指定されたRAMエリアから、外部にデータを転送します。
転送開始アドレス([WA0])と転送ワード数カウンタ([TN0])は、転送を開始したときの値を保持します。
		 
- 
		-   JMP Imm
		  
- Imm(イミディエート)で示された番地へ移動します。  
		
-   JMP Z,Imm
		  
- プログラム制御ポートのZ(ゼロフラグ)が1のとき、Imm(イミディエート)で示された番地へ移動します。  
		
-   JMP NZ,Imm
		  
- プログラム制御ポートのZ(ゼロフラグ)が0のとき、Imm(イミディエート)で示された番地へ移動します。 
		
-   JMP S,Imm
		  
- プログラム制御ポートのS(サインフラグ)が1のとき、Imm(イミディエート)で示された番地へ移動します。  
		
-   JMP NS,Imm
		  
- プログラム制御ポートのS(サインフラグ)が0のとき、Imm(イミディエート)で示された番地へ移動します。  
		
-   JMP C,Imm
		  
- プログラム制御ポートのC(キャリーフラグ)が1のとき、Imm(イミディエート)で示された番地へ移動します。  
		
-   JMP NC,Imm
		  
- プログラム制御ポートのC(キャリーフラグ)が0のとき、Imm(イミディエート)で示された番地へ移動します。  
		
-   JMP TO,Imm
		  
- プログラム制御ポートのTO(D0バスDMA実行中フラグ)が1のとき、Imm(イミディエート)で示された番地へ移動します。  
		
-   JMP NTO,Imm
		  
- プログラム制御ポートのTO(D0バスDMA実行中フラグ)が0のとき、Imm(イミディエート)で示された番地へ移動します。  
		
-   JMP ZS,Imm
		  
- プログラム制御ポートのZ(ゼロフラグ)またはS(サインフラグ)のいずれかが1のとき、Imm(イミディエート)で示された番地へ移動します。  
		
-   JMP NZS,Imm
		  
- プログラム制御ポートのZ(ゼロフラグ)とS(サインフラグ)がともに0のとき、Imm(イミディエート)で示された番地へ移動します。  
		 
- 
		-   BTM
		  
- ループカウンタ([LOP])が0以外のとき、トップアドレスレジスタ([TOP])をプログラムカウンタに格納し、ループカウンタ([LOP])をデクリメントします。0のときは何もしません。  
		
-   LPS
		  
- ループカウンタ([LOP])が0以外のとき、プログラムカウンタを止めて、次命令を実行しループカウンタ([LOP])をデクリメントし、ループカウンタが0になるまで繰り返します。  
		 
- 
		-   END
		  
- プログラムを止めて、プログラム制御ポートのEX(プログラム実行制御フラグ)をリセットします。  
		
-   ENDI
		  
- プログラムを止めて、プログラム制御ポートのEX(プログラム実行制御フラグ)をリセットし、E(プログラム終了割り込みフラグ)をセットします。 
		 
- ●DSPプログラムの記述
-  定数またはアセンブラの記述については、付録の
「SCU DSPアランブラ使用説明書」を参照してください。
▲戻る|
     進む▼
  ![]() ★HARDWARE Manual
★SCUユーザーズマニュアル
★HARDWARE Manual
★SCUユーザーズマニュアル
Copyright SEGA ENTERPRISES, LTD., 1997