DSP

常用助记符

2019-07-13 17:31发布

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
;-----------------------------------------------