資料集
ここはhideyosiの学習帳です。いろいろな資料を集めたり整理したりしています。オイラ用のノートなので間違っていたり未完成だったりしますので信用度は相当低いことをあらかじめご了承くださいませ。
1: 2007-12-06 (木) 12:07:55 ソース バックアップ No.1 を復元して編集
Line 1: Line 1:
 +[[FrontPage]]
 +* MOV [#s94119ca]
 +''転送命令''といわれる。
 +ある所からある所へ転送を行うが、どこでもなんでもというわけではない。
 +
 +-MOV命令は全て MOV ○○○ ← △△△  というように、右から左に向かって転送(代入)を行うパターンになる。
 +
 +
 +**できること [#n6e2d0b2]
 +   MOV    AL,0x02      ;ALレジスタに0x02を入れる
 +
 +   MOV    AX,DX        ;AXレジスタにDXレジスタの内容を入れる
 +
 +   MOV    EAX,LABEL    ;EAXレジスタにLABELというラベルの「番地」を入れる
 +
 +   MOV    EDX,[0X0200]  ;EDXレジスタに0x0200番地の「メモリの内容」を入れる
 +
 +   MOV    EBX,[EAX]    ;EBXに、EAXに入っている番地の「メモリの内容」を入れる
 +
 +
 +
 +*できないこと [#p3687ea3]
 +-大きさが異なるレジスタ間の転送はできない
 + 例:
 +       MOV    EBX,AL      ;EBXは32bit、ALは16bitで大きさが異なる
 +
 +-直接代入できないレジスタである
 + 例:
 +       MOV    ES,0x30    ; ESレジスタは即値を直接代入できない
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +-CPUの仕様?からか、直接代入できないレジスタがあるので注意。
 +
 +|~汎用レジスタ|~レジスタ代入|~即値代入|~備考|
 +|AX|○|○||
 +|BX|○|○|アドレス指定の使用に向いている|
 +|CX|○|○|ループ時のカウンタとして使用するのに向いている|
 +|DX|○|○||
 +|~インデックスレジスタ|~正式名称|~用途|~備考|
 +|SI|ソースインデックス|汎用|ストリング命令に使用すると便利?|
 +|DI|ディスティネーションインデックス|汎用|~|
 +|~特殊レジスタ|~正式名称|~用途|~備考|
 +|BP|ベースポインタ|||
 +|SP|スタックポインタ||スタックアドレスの''オフセット値''を示す|
 +|IP|インストラクションポインタ|×|次に実行すべき命令の番地の''オフセット値''を示す|
 +|~セグメントレジスタ|~正式名称|~用途|~備考|
 +|CS|○|×|次に実行すべき命令の番地の''セグメント値''を示す|
 +|DS|○|×||
 +|ES|○|×||
 +|SS|○||スタックアドレスの''セグメント値''を示す|
 +|~フラグレジスタ|~正式名称|~用途|~備考|


トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   ページ新規作成 全ページ一覧 単語検索 最新ページの一覧   ヘルプ   最新ページのRSS 1.0 最新ページのRSS 2.0 最新ページのRSS Atom
Counter: 3904, today: 1, yesterday: 1