汇编--指令系统 逻辑指令

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了汇编--指令系统 逻辑指令相关的知识,希望对你有一定的参考价值。

逻辑指令:  

逻辑运算指令 AND、OR、NOT、XOR、TEST

移位指令 SHL、SHR 、 SAL 、SAR、ROL、ROR、RCL、RCR

 

 逻辑非指令:NOT OPR    ;OPR 不能为立即数   不影响标志位 

 逻辑与指令:AND   DST ,  SRC    

 逻辑或指令:OR   DST ,  SRC

 异或指令:    XOR   DST ,  SRC

 测试指令:    TEST   OPR1 ,  OPR2

 SF ZF PF  根据运算结果设定

(1)移位指令

指令格式:  SHL  OPR,CNT 

(1)将一个寄存器或内存单元中的数据向左移位

(2)将最后移出的一位写入CF中

(3)最低位用0补充

如果移动位数大于1时,必须移动位数放在CL中。
1)SHL 逻辑左移指令 
2)SAL 算术左移指令 
3)SHR 逻辑右移指令 
4)SAR 算术右移指令 
逻辑移位,移出去的到了CF中。算术左移和逻辑左移是一样的。

(2)循环移位指令 

1)ROL 循环左移指令 
2)ROR 循环右移指令 
3)RCL 带进位循环左移指令 
4)RCR 带进位循环右移指令 
 
1)SHLD 双精度左移指令    SHLD  DST,REG,CNT
2)SHRD双精度右移指令
 
带进位的是把CF也连带上了。
每次最高位移入进位标志位CF
CF根据各指令规定设定,OF位只有当CNF=1时才是有效的,否则该位无定义。当CNT=1时,在移位时最高位发生变化,OF=1,否则为0.
算数移位指令适用于带符号数的运算,SAL乘以2 ,SAR除以2. 逻辑移位指令适用于不带符号数的运算。

 

以上是关于汇编--指令系统 逻辑指令的主要内容,如果未能解决你的问题,请参考以下文章

汇编语言学习笔记

汇编语言通用数据处理指令——位操作类指令

汇编--逻辑指令

汇编语言通用数据处理指令——位操作类指令

指令系统-第三节2345:常用的x86汇编指令选择和循环语句的机器级表示

疯狂补汇编1