15
13

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

アセンブラAdvent Calendar 2019

Day 2

x86 命令セット

Last updated at Posted at 2019-12-03

#フラグ

フラグの種類 呼び名
O オーバーフロー
D ディレクション
I インタラプトイネーブル
T トラップ
S サイン
Z ゼロ
A 補助キャリー
P パリティ
C キャリー

#命令セットのニーモニック

|命令の種類| ニーモニック| ニーモニックの意味 命令の意味|
|:--|:--|:--|:--|
|転送| mov| コピー|
|転送|mov| ロード(メモリ等からレジスタへコピー)|
|転送|mov| ストア(レジスタからメモリ等へコピー)|
|転送| xchg| 入れ替え|
|算術|adc, add| 加算|
|算術|sbb, sub| 減算|
|算術|mul| 乗算|
|算術|div| 除算|
|算術|inc, dec| 1足す,1引く|
|論理演算・ビット操作|and, or, xor| 論理積・論理和・排他的論理和|
|論理演算・ビット操作|neg, not, test| 符号反転・反転・テスト|
|シフト|sal| 論理左シフト|
|シフト|sar| 論理右シフト|
|シフト|shl| 算術左シフト|
|シフト|shr| 算術右シフト(キャリーを含めてシフト)|
|ローテート|rol |左ローテート|
|ローテート|ror |右ローテート|
|ローテート|rcl |キャリーを含めて左ローテート|
|ローテート|rcr |キャリーを含めて右ローテー|
|条件分岐|JE |前の結果が0なら分岐.ゼロフラグ=1なら分岐.|
|条件分岐|JNE |前の結果が1ならば分岐.ゼロフラグ=0なら分岐.|
|条件分岐|JL |前の結果が0より小さければ分岐|
|条件分岐|JG |前の結果が0より大きければ分岐|
|条件分岐|JLE |前の結果が0以下なら分岐|
|条件分岐|JGE |前の結果が0以上なら分岐|
|条件分岐|jmp |分岐,ジャンプ|
|条件分岐|JG |前の結果が0より大きければ分岐|
|条件分岐|JLE |前の結果が0以下なら分岐|
|条件分岐|JGE |前の結果が0以上なら分岐|
|コール|call |サブルーチンへ分岐|
|コール|ret |サブルーチンから復帰|
|スタック|push |スタックに積む|
|スタック|pop |スタックから復帰|
|その他| NOP |何もしない|

ニーモニックの前後に付く文字の意味

接尾辞の種類 接尾辞の文字の意味 意味 命令の例
...B byte 1バイト MOVB, ADDB, BRAB
...W word 2バイト MOVW, ADDW, BRAW
...L long 4バイト MOVL, DIVL, JMPL, PUSHL, JL, COMPL
...I,I... integer 整数 DIVSI, IMUL
...S singed 符号付 ADDSL, MULSI, SUBS
...C with carry キャリーやボローを考慮 ADDC, SUBC

#レジスタ名の表記

レジスタ名の前に%を付ける

|表記 |ビット数| 役割|
|:--|:--|:--|:--|
|eax,ecx,edx,ebx,esp,ebp,esi,edi| 32bit |汎用レジスタ|
|AX, BX, CX, DX | 16bit |汎用レジスタ(EAX, EBX, ..)の下位16bit|
|AH, AL | 8bit |AXの上位8bit, 下位8bit|
|cs,ds,es,fs,gs,ss | 16bit |セグメントレジスタ|
|SP | CPUのビット数| スタックポインタ|
|PC | CPUのビット数| プログラムカウンタ|

#アドレッシングモードの表記

数値の前に$を付ける
レジスタ間接アドレッシングは、(%esi)です。

以上。

15
13
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
15
13

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?