mov 移动
mov ax,bx ;
;---------------------------------------
movzx 低位移动到高位 只适合无符号整数
100010
|
[000000]100010
movzx r32,r16
movzx r32,r8
movzx r16,r8
movzx eax,bx 将 16位 移动到32位
movzx eax,bh 将8位移动到32位
movzx bx,ch 将8 位移动到16位
;----------------------------------------
movsx 低位移动到高位 只适合有符号整数
100010
|
[1111111]100010
movsx r32,r16
movsx r32,r8
movsx r16,r8
movzx eax,bx 将 16位 移动到32位
movzx eax,bh 将8位移动到32位
movzx bx,ch 将8 位移动到16位
;--------------------------------------
lahf 将目前状态 移动到 ah 中 ;load ah flag
包括 : 符号标志,零标志,辅助进位标志,奇偶标志,进位标志
sahf 将ah中内容 移动到状态寄存器中 ; save ah flag
;--------------------------------------
xchg 交换两个内容
xchg ax,bx
mov ax,100h
mov bx,200h
xchg ax,bx
ax=200h
bx=100h
;-------------------------------------
add 加法
add 目标,源
ax = 100h
add ax,200h; ax = 300h
;--------------------------------------
sub 减法
sub 目标,源
ax = 100h
sub ax,50h ; ax=50
;--------------------------------------
neg 取反
ax = -30h
neg ax; +30h
;-------------------------------------
inc 可以理解为
i++
;------------------------------------------
dec 可以理解为
i--
;------------------------------------------
label 定义尺寸
val1 label word ; 将 val1 定义尺寸为word的大小
;------------------------------------------
assume cs:code,es:code
指定段寄存器
;----------------------------------------
short 短跳指令 只能 在 -128 --- 127
jmp short
;-----------------------------------------------