从头认识C—算术移位和逻辑移位
来源:互联网 发布:dvr9000监控软件下载 编辑:程序博客网 时间:2024/06/05 10:07
逻辑移位(不管是左移位还是右移位) 都是空缺处补0
例如: mov ax , 1100_0111_0110_1000B
mov cl , 3
shl ax , cl ; 结果 ax = 0011_1011_0100_0000
mov ax , 1100_0111_0110_1000B
mov cl , 3
shr ax , cl ; 结果 ax = 0001_1000_1110_1101
算术移位要保证符号位的不改变(逻辑左移位补0, 逻辑右移位看符号位)
例如: mov ax , 1100_0111_0110_1000B
mov cl , 3
sal ax , cl ; 结果 ax = 0011_1011_0100_0000
mov ax , 1100_0111_0110_1000B
mov cl , 3
sar ax , cl ; 结果 ax = 1111_1000_1110_1101
mov ax , 0100_0111_0110_1000B
mov cl , 3
sar ax , cl ; 结果 ax = 0000_1000_1110_1101
可以总结如下:
算术左移同逻辑左移
算术右移移入的位用符号位填
逻辑右移移入的位用0填
- 从头认识C—算术移位和逻辑移位
- 算术移位和逻辑移位
- 逻辑移位和算术移位
- 算术移位和逻辑移位
- 逻辑移位和算术移位
- 算术移位和逻辑移位
- 【C语言/C++】算术移位和逻辑移位
- 逻辑移位 算术移位
- 什么叫逻辑移位和算术移位
- 算术移位和逻辑移位实现分析
- 算术移位和逻辑移位实现分析
- 逻辑移位与算术移位
- 算术移位与逻辑移位
- C语言中的运算符>>和<<是算术移位而非逻辑移位
- 算术与逻辑移位
- (ZT)算术移位和逻辑移位的区别
- 逻辑移位与算术移位的区别
- 逻辑移位与算术移位的区别
- UVA - 10673 - Play with Floor and Ceil (简单数学!)
- 详解MySQL中EXPLAIN解释命令
- IAR 扩展关键字
- poj 3663 指针移动(多少对儿数之和大于m)
- Bat命令学习
- 从头认识C—算术移位和逻辑移位
- 成悌元 東洲
- ac自动机 hdu 2222
- CSS样式(链接、列表、表格、轮廓)学习笔记
- onSaveInstanceState
- 无法正常建立AVD
- 【Spark亚太研究院系列丛书】Spark实战高手之路-第2章动手实战Scala第2小节:动手实战Scala面向对象编程(3)
- VS2010和选中代码相同的代码的颜色设置,修改高亮颜色
- Unity3D占用内存太大的解决方法