当前位置:网站首页 > 技术博客 > 正文

移位指令的用途



大家好,又见面了,我是你们的朋友全栈君。

移位指令包括了 算术移位指令、逻辑移位指令、循环移位指令。

格式为: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的内容送入最高位.如图:

未完待续:后面在下会补充些案例。。现在就写写概念的东西。。图自己码的,有点糙。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/130404.html原文链接:https://javaforall.cn

版权声明


相关文章:

  • oracle rownum是什么类型2025-06-27 17:01:04
  • 数据库事务有什么功能2025-06-27 17:01:04
  • java单元测试框架都有哪些2025-06-27 17:01:04
  • vcap电容2025-06-27 17:01:04
  • 双硬盘双系统的设置方法2025-06-27 17:01:04
  • js・jc・ロリ2025-06-27 17:01:04
  • windows打开组策略编辑器2025-06-27 17:01:04
  • 域名解析@是什么2025-06-27 17:01:04
  • 异步fifo实现2025-06-27 17:01:04
  • linux性能指标2025-06-27 17:01:04