请问Holtek MCU使用汇编语言中的RR和RL操作与使用C语言中的位移运算符>>和<<操作的
结果是否相同?
两种操作的结果是不同的。使用汇编语言中的RR和RL指令,会将相应的数据存储器右移一
位,结果放回数据存储器中,不影响C标(进位标志位)。而使用C语言中的位移运算符>>
和<<会对运算符左边的操作数执行向右或向左的位移运动,移动的位数由运算符右边的操
作数决定,如果进行右移操作则左边高位会补0,反之进行左移操作则右边低位会补0,同
时需要注意右移或左移时的移出数据会进入标志位C,从而改变C标的原值 。
________________________________________
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) | Powered by Discuz! 7.0.0 |