3.汇编-常用汇编指令

admin 2018年5月13日00:21:26评论509 views字数 1397阅读4分39秒阅读模式
摘要

含义:前者被后者赋值
exp:此时 EAX = 0xFFFFFFFF指令格式:r - 通用寄存器
m - 内存
imm - 立即数
r8 - 8位通用寄存器
m8 - 8位内存
imm8 - 8位立即数


1. MOV指令(赋值)

含义:前者被后者赋值
exp:

MOV EAX,0xFFFFFFFF

此时 EAX = 0xFFFFFFFF

指令格式:

  1. MOV r/m8,r8
  2. MOV r/m16,r16
  3. MOV r/m32,r32
  4. MOV r8,r/m8
  5. MOV r16,r/m16
  6. MOV r32,r/m/32
  7. MOV r8,imm8
  8. MOV r16,imm16
  9. MOV r32,imm32

r - 通用寄存器
m - 内存
imm - 立即数
r8 - 8位通用寄存器
m8 - 8位内存
imm8 - 8位立即数

2. ADD指令(加法)

含义:前者与后者相加,结果赋值给前者

MOV AL,00000000 ADD AL,00000001

此时 AL=00000001=0x01

指令格式:

  1. ADD r/m8,imm8
  2. ADD r/m16,imm16
  3. ADD r/m32,imm32
  4. ADD r/m16,imm8
  5. ADD r/m32,imm8
  6. ADD r/m8,r8
  7. ADD r/m16,r16
  8. ADD r/m32,r32
  9. ADD r8,r/m8
  10. ADD r16,r/m16
  11. ADD r32,r/m32

3.SUB指令(减法)

含义:前者减去后者,结果赋值给前者

MOV AL,00000002 SUB AL,00000001

此时 AL=00000001=0x01

指令格式:

  1. SUB r/m8 ,imm8
  2. SUB r/m16,imm16
  3. SUB r/m32,imm32
  4. SUB r/m16,imm8
  5. SUB r/m32,imm8
  6. SUB r/m8,r8
  7. SUB r/m16,r16
  8. SUB r/m32,r32
  9. SUB r8,r/m8
  10. SUB r16,r/m16
  11. SUB r32,r/m32

4.AND指令(与运算,两个都为1 结果为1,否则为0)

含义:前者与后者与运算,结果赋值给前者

MOV AL,00000000 AND AL,00000001

此时 AL=00000000=0x00

指令格式:

  1. AND r/m8 ,imm8
  2. AND r/m16,imm16
  3. AND r/m32,imm32
  4. AND r/m16,imm8
  5. AND r/m32,imm8
  6. AND r/m8,r8
  7. AND r/m16,r16
  8. AND r/m32,r32
  9. AND r8,r/m8
  10. AND r16,r/m16
  11. AND r32,r/m32

5.OR指令(或运算,两个都为0时结果为0 否则为1)

含义:前者与后者或运算,结果赋值给前者

MOV AL,00000000 OR AL,00000001

此时 AL=00000001=0x01

指令格式:

  1. OR r/m8 ,imm8
  2. OR r/m16,imm16
  3. OR r/m32,imm32
  4. OR r/m16,imm8
  5. OR r/m32,imm8
  6. OR r/m8,r8
  7. OR r/m16,r16
  8. OR r/m32,r32
  9. OR r8,r/m8
  10. OR r16,r/m16
  11. OR r32,r/m32

6.XOR指令(异或运算,两个相同时为0 否则为1)

含义:前者与后者进行异或运算,结果赋值给前者

MOV AL,00000000 XOR AL,00000001

此时 AL=00000001=0x01

指令格式:

  1. XOR r/m8 ,imm8
  2. XOR r/m16,imm16
  3. XOR r/m32,imm32
  4. XOR r/m16,imm8
  5. XOR r/m32,imm8
  6. XOR r/m8,r8
  7. XOR r/m16,r16
  8. XOR r/m32,r32
  9. XOR r8,r/m8
  10. XOR r16,r/m16
  11. XOR r32,r/m32

7.NOT指令(取反)

含义:

MOV AL,00000000 NOT AL

此时 AL=11111111=0xff

指令格式

  1. NOT r/m8
  2. NOT r/m16
  3. NOT r/m32

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2018年5月13日00:21:26
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   3.汇编-常用汇编指令https://cn-sec.com/archives/51417.html

发表评论

匿名网友 填写信息