CPU > 命令セット

※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

命令セット

ニーモニック 内容
ADC キャリー付き加算
AND アキュームレータとメモリの論理積
ASL 算術左シフト
BCC キャリークリア時分岐
BCS キャリーセット時分岐
BEQ 等しい時分岐
BGE BCS のエイリアス
BIT メモリビットのテスト
BLT BCC のエイリアス
BMI マイナス時分岐
BNE 等しくない時分岐
BPL プラス時分岐
BRA 常に分岐
BRK ソフトウェアBreak
BRL 常に分岐ロング
BVC オーバーフロークリア時分岐
BVS オーバーフローセット時分岐
CLC キャリーフラグクリア
CLD デシマルフラグクリア
CLI 割り込みフラグクリア
CLV オーバーフローフラグクリア
CMP アキュームレータとメモリ比較
COP コプロセッサ呼び出し
CPX Xレジスタとメモリ比較
CPY Yレジスタとメモリ比較
DEA DEC A のエイリアス
DEC デクリメント
DEX Xレジスタデクリメント
DEY Yレジスタデクリメント
EOR アキュームレータとメモリの排他的論理和
INA INC A のエイリアス
INC インクリメント
INX Xレジスタインクリメント
INY Yレジスタインクリメント
JML JMP long のエイリアス
JMP ジャンプ
JSL サブルーチンへジャンプ
JSR サブルーチンへジャンプ
LDA アキュームレータに値をロード
LDX Xレジスタに値をロード
LDY Yレジスタに値をロード
LSR 論理右シフト
MVP プラス方向へブロック移動
MVN マイナス方向へブロック移動
NOP 何も実行しない
ORA アキュームレータとメモリの論理和
PEA 絶対アドレスの内容をプッシュ
PEI 間接アドレスの内容をプッシュ
PER PC相対間接アドレスの内容をプッシュ
PHA アキュームレータの内容をプッシュ
PHB データバンクレジスタの内容をプッシュ
PHD ダイレクトページレジスタの内容をプッシュ
PHK プログラムバンクレジスタの内容をプッシュ
PHP ステータスレジスタの内容をプッシュ
PHX Xレジスタの内容をプッシュ
PHY Yレジスタの内容をプッシュ
PLA アキュームレータへポップ
PLB データバンクレジスタへポップ
PLD ダイレクトページレジスタへポップ
PLP ステータスレジスタへポップ
PLX Xレジスタへポップ
PLY Yレジスタへポップ
REP ステータスビットのリセット
ROL 左回転シフト
ROR 右回転シフト
RTI 割り込みから戻る
RTL サブルーチンから戻る(ロング)
RTS サブルーチンから戻る
SBC アキュームレータから減算
SEC キャリーフラグセット
SED デシマルフラグセット
SEI 割り込みフラグセット
SEP ステータスビットのセット
STA アキュームレータの内容をメモリにストア
STP プロセッサのストップ
STX Xレジスタの内容をメモリにストア
STY Yレジスタの内容をメモリにストア
STZ ゼロバイトをメモリにストア
SWA XBAのエイリアス
TAD TCDのエイリアス
TAS TCSのエイリアス
TAX アキュームレータからXレジスタへ転送
TAY アキュームレータからYレジスタへ転送
TCD アキュームレータからダイレクトページレジスタへ転送
TCS アキュームレータからスタックポインタへ転送
TDA TDCのエイリアス
TDC ダイレクトページレジスタからアキュームレータへ転送
TRB メモリビットのテストとリセット
TSA TSCのエイリアス
TSB メモリビットのテストとセット
TSC スタックポインタからアキュームレータへ転送
TSX スタックポインタからXレジスタへ転送
TXA Xレジスタからアキュームレータへ転送
TXS Xレジスタからスタックポインタへ転送
TXY XレジスタからYレジスタへ転送
TYA Yレジスタからアキュームレータへ転送
TYX YレジスタからXレジスタへ転送
WAI 割り込みを待つ
WDM 将来のための予約
XBA アキュームレータのAとBを交換
XCE キャリーフラグとエミュレーションフラグを交換

本文中の記号について

  • addr 2 バイトのアドレス
  • addr/const 2 バイトの値 (アドレスまたは定数)
  • const 1 ~ 2 バイトの定数
  • destbk 64KB バンク中で、どちらの向きに String が進むか
  • dp 1 バイトのダイレクトページオフセット (6502 のゼロページ)
  • label コードのラベル (同じ 64KB バンク内のもの)
  • long 3 バイトのアドレス (バンクバイトを含む)
  • nearlabel 1 バイトの符号付きオフセットで届く範囲のコードラベル
  • sr 1 バイトのスタック相対オフセット
  • srcebk 64KB バンク中で、どちらの向きに String が進むか
  • フラグ
    7 6 5 4 3 2 1 0
    n v m x d i z c
    e
    N : ネガティブフラグ (1 = Negative) V : オーバーフローフラグ (1 = Overflow) M : メモリ/アキュームレータ選択フラグ (1 = 8-bit, 0 = 16 bit) X : インデックスレジスタ選択フラグ (1 = 8-bit, 0 = 16-bit) D : 10進モードフラグ (1 = Decimal, 0 = Binary) I : IRQ 禁止フラグ (1 = Disabled) Z : ゼロフラグ (1 = Result Zero) C : キャリーフラグ (1 = Carry) E : エミュレーションフラグ (0 = Native Mode)