「CPU/命令セット/ASL」の編集履歴(バックアップ)一覧はこちら
CPU/命令セット/ASL - (2017/02/20 (月) 17:51:22) の1つ前との変更点
追加された行は緑色になります。
削除された行は赤色になります。
***ASL (Arithmetic Shift Left) [#k00c3964]
[算術左シフト]
全てのビットを左に 1 ビットシフトし、
シフト前の最上位ビットをキャリーに入れる。
16 ビットアキュームレータモード (m=0) の時、
16 ビット全てが 1 ビット左にシフトされる。
''フラグ変化''
n-----zc
n : 結果の最上位ビットの値
z : 結果の値が 0 の時セット
c : シフトする前のメモリの値の、最上位ビット (7 ビット目 か 15 ビット目) の値
''コード一覧''
|アドレッシングモード|文法|オペコード|バイト数|命令サイクル|注|h
|[[Accumulator>CPU/アドレッシングモード/Accumulator]]|ASL a|0A|1|2 ||
|[[Absolute>CPU/アドレッシングモード/Absolute]]|ASL addr|0E|3|6 | 1|
|[[Direct Page>CPU/アドレッシングモード/Direct Page]]|ASL dp|06|2|5 | 1,2|
|[[Absolute Indexed,X>CPU/アドレッシングモード/Absolute Indexed,X]]|ASL addr,X|1E|3|7 | 1|
|[[Direct Page Indexed,X>CPU/アドレッシングモード/Direct Page Indexed,X]]|ASL dp,X|16|2|6 | 1,2|
1 : m=0 (16-bit メモリ/アキュームレータ) の時 2 サイクル増加
2 : ダイレクトページレジスタの下位バイトが 0 でない場合 1 サイクル増加
***ASL (Arithmetic Shift Left) [#k00c3964]
[算術左シフト]
全てのビットを左に 1 ビットシフトし、
シフト前の最上位ビットをキャリーに入れる。
16 ビットアキュームレータモード (m=0) の時、
16 ビット全てが 1 ビット左にシフトされる。
''フラグ変化''
n-----zc
n : 結果の最上位ビットの値
z : 結果の値が 0 の時セット
c : シフトする前のメモリの値の、最上位ビット (7 ビット目 か 15 ビット目) の値
''コード一覧''
|アドレッシングモード|文法|オペコード|バイト数|命令サイクル|注|h
|[[Accumulator>CPU/アドレッシングモード/Accumulator]]|ASL a|0A|1|2 ||
|[[Absolute>CPU/アドレッシングモード/Absolute]]|ASL addr|0E|3|6 | 1|
|[[Direct Page>CPU/アドレッシングモード/Direct Page]]|ASL dp|06|2|5 | 1,2|
|[[Absolute Indexed,X>CPU/アドレッシングモード/Absolute Indexed,X]]|ASL addr,X|1E|3|7 | 1|
|[[Direct Page Indexed,X>CPU/アドレッシングモード/Direct Page Indexed,X]]|ASL dp,X|16|2|6 | 1,2|
1 : m=0 (16-bit メモリ/アキュームレータ) の時 2 サイクル増加
2 : ダイレクトページレジスタの下位バイトが 0 でない場合 1 サイクル増加