汇编语言ror al,cl什么意义

汇编语言ror al,cl什么意义,第1张

1

ror

是循环右移指令,被移出的位,补回到最左端。

2

ror

al,cl

就是将al的内容,向右循环移位cl指定的位数。如cl=3,就表示移位3次。

3

假设al=12

(00001100

=

0x0c)

cl=2

第一次移位后al内容=0000

0110

第二次移位后al内容=0000

0011

ror

al,cl

的结果

al=3

第三次移位后al内容=1000

0001

;最右边那个1回到了最左边

就是向左移动一位,并将移出的那位补到最右边那位上。

计算器一般由运算器、控制器、存储器、键盘、显示器、电源和一些可选外围设备及电子配件,通过人工或机器设备组成。低档计算器的运算器、控制器由数字逻辑电路实现简单的串行运算,其随机存储器只有一、二个单元,供累加存储用。高档计算器由微处理器和只读存储器实现各种复杂的运算程序,有较多的随机存储单元以存放输入程序和数据。

ROR: 循环右移操作

RRX:扩展的循环右移操作

说到用处,我自己感觉并不是很大,因为我们一般用LSR(逻辑右移)和ASR(算术右移),这两种右移方式只是ARM汇编的扩展功能,在实际应用中,好像很少用。

集体使用方法你可以参考杜春雷的介绍ARM的书《ARM体系结构与编程》,我有电子版,你可以给我邮箱,我发给你,这本书18M,百度文库中上传不了。

可以将这几个指令分为移位指令和循环移位指令,其中位移指令为:SHL、SAL、SHR、SAR,循环位移指令为:ROL、RCL、RCR、RCL,他们的具体用法如下:

一、位移指令

具体含义:SHL: 逻辑左移;SAL: 算术左移;SHR: 逻辑右移;SAR: 算术右移

具体用法:SHR:每位右移, 低位进 CF, 高位补 0;SAR:每位右移, 低位进 CF, 高位不变,它们的结果影响 OF、SF、ZF、PF、

二、循环移位指令

具体含义:ROL:循环左移;ROR:循环右移;RCL: 带进位循环左移;RCR: 带进位循环右移。

具体用法:ROL: 循环左移, 高位到低位并送 CF;ROR: 循环右移, 低位到高位并送 CF;RCL: 循环左移, 进位值到低位, 高位进 CF;RCR: 循环右移, 进位值到高位, 低位进 CF。

扩展资料:

双精度移位指令:386及其后继机型可使用本组指令,SHLD双精度左移和SHRD双精度右移,格式:SHLD,DST,REG,CNT。

这组指令可以取两个字作移位操作而得到一个字的结果,也可以取两个双字作移位操作而得到一个双字的结果。

在移位中,作为源操作数的寄存器提供移位值,以补目的操作数因移位引起的空缺,而指令执行完成后,只取目的操作数作为移位的结果,源操作数寄存器则保持指令执行前的值不变。

逻辑运算指令

───────────────────────────────────────

AND 与运算

or 或运算

XOR 异或运算

NOT 取反

TEST 测试(两操作数作与运算,仅修改标志位,不回送结果)

SHL (SHift logical Letf)逻辑左移

SAL 算术左移(=SHL)

SHR (SHift logical Right)逻辑右移

SAR 算术右移(=SHR)

ROL (Rotate Left )循环左移

ROR (Rotate Right)循环右移

RCL (Rotate Left through Carry)通过进位的循环左移

RCR (Rotate Right through Carry)通过进位的循环右移

以上八种移位指令,其移位次数可达255次

移位一次时, 可直接用操作码 如 SHL AX,1

移位>1次时, 则由寄存器CL给出移位次数

如 MOV CL,04

SHL AX,CL

以上就是关于汇编语言ror al,cl什么意义全部的内容,包括:汇编语言ror al,cl什么意义、计算器ror是什么意思、lsr lsl,ror,rrx与乘除法有什么关系等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:聚客百科

原文地址: http://juke.outofmemory.cn/life/3744948.html

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

发表评论

登录后才能评论

评论列表(0条)

保存