大家好,又见面了,我是你们的朋友全栈君。
移位指令包括了 算术移位指令、逻辑移位指令、循环移位指令。
格式为:xxx oper1,CL/1 ;移位次数只能是1或者存放在CL里面。
一、算术移位指令
1、算术左移指令SAL
功能:左移一次,最低位补0,最高位送入CF标志位,如图:
意义:左移n次,等于x2的n次幂。所以可用于有符号操作数做x2的n次幂运算。
2、算术右移指令SAR
功能:右移一次,最高位保持不变,最低位送入CF标志位,如图:
意义:右移n次,等于/2的n次幂。所以可用于有符号操作数做/2的n次幂运算。
二、逻辑移位指令
1、逻辑左移SHL
功能:同SAL,如图:
意义:同SAL
2.逻辑右移SHR
功能:右移一次,最高位补0.区别!最低位送入CF标志位。如图:
意义:用于实现无符号数/2的n次幂操作。
三.循环移位指令
1.循环左移指令ROL
功能:左移一次,左移前的最高位送入最低位以及CF.如图:
2.循环右移指令ROR
功能:右移一次,右移前的最低位送入最高位以及CF.如图:
3、带进位的循环左移RCL
功能:左移一次,左移前的最高位送入CF,CF的内容送入最低位.如图:
4.带进位的循环右移RCR
功能:右移一次,右移前的最低位送入CF,CF的内容送入最高位.如图:
未完待续:后面在下会补充些案例。。现在就写写概念的东西。。图自己码的,有点糙。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/130404.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...