汇编语言中的移位指令具体的 *** 作是什么?

汇编语言中的移位指令具体的 *** 作是什么?,第1张

SHL/SAL一样:逻辑/算术左移,最高位进到CF,最低位补0;\x0d\x0aSHR:逻辑右移,最低位进到樱神灶CF,最高位补0;\x0d\x0aSAR:算术右移,最低位进到CF,最高位不变;\x0d\x0aROL:循环左移,最高位进到CF的同时补到最低位;瞎咐\x0d\x0aROR:循环右移,最低位进到CF的同时补到最高位;\x0d\x0aRCL:带进位循环左移,最高位进到CF的,同时CF值补到最低位;\x0d\x0aRCR:带进位循环右移,最低位进到CF的,同时CF值补到最高位;\x0d\x0aSHLD:双精度左移,脊扮第二个 *** 作数移位到第一个 *** 作数,第一 *** 作数进到CF,和逻辑左移类似,低位移到高位;\x0d\x0aSHRD:双精度左移,第二个 *** 作数移位到第一个 *** 作数,第一 *** 作数进到CF,和逻辑由移类似,高位移到低位;\x0d\x0a\x0d\x0a这样差不多可以了吧。

用移位的方法可以实现乘除高祥蠢2的戚陪整数次幂,左移是乘,右移是除;指宴键令有八个,SHL,SHR,SAL,SAR,ROL,ROR,RCL,RCR常用的是SHL,SHR

要注意的是移位时要么移1,要么是CL(必须是CL)中的数,所以一楼同学的那条指令是错的,可以是

MOV CL,3

SHR AL,CL

来实现AL除8(2的3次幂)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12490074.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存