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


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