0
A
回答
1
把它们想象成“向上”或“向下”位移动的箭头。
的<<
操作者将通过推动比特向上朝着一个字节中的更高的值槽增加的数量的大小,例如:
128 64 32 16 8 4 2 1
-------------------------------
0 0 0 0 0 1 0 0 before push (value = 4)
0 0 0 0 1 0 0 0 after << push (value = 8)
的>>
操作者将通过推动比特减少的数量的大小下来,对一个字节中的较低值插槽,例如:
128 64 32 16 8 4 2 1
-------------------------------
0 0 0 0 0 1 0 0 before push (value = 4)
0 0 0 0 0 0 1 0 after >> push (value = 2)
+0
您也应该包括操作说明。我的意思是,人们很容易在2 << 4 and 4 >> 2之间感到困惑。不是吗? – Prasanth
0
在二进制中的位移与十进制中的方向相同。左移(1,10,100,...)使数字变大。向右移动使得数字变小。
0
< <是左移运算符。例如0b10 < < 2 = 0b1000(构成0b语法)。 >>是右移操作符,它恰恰相反。 0b10 >> 1 = 0b1。符号不会因签名数字右移而改变。对于左手签名,您必须了解2's complement以了解发生了什么。
0
<< --- it tells going left direction and this means left side decreasing.
>> --- it tells going right direction and this means right side decreasing.
1
你真的不能认为它们是使数更大或更小。取决于输入,这两种移位都可以使数字变大或变小。
- 左移位(无符号的解释):0位可以脱落的左侧,使得数更大,或1位即可脱落左侧,使得数量少。
- 左移(有符号解释):0位可以移入先前为0的符号,使数字变大;一个0位可以移入先前为1的符号,使得数字更大; 1位可以移入先前为1的符号,使得数字更小;一个1位可以移入先前为0的符号,使得数字更小。
- 无符号右移:好的这个很简单,数字变小了。
- 签名右移:负数变大,正数变小。
我为左移而不是右移写“解释”的原因是只有一种左移,但取决于您是否将结果解释为有符号或无符号,它具有“不同的“结果(当然这些位是相同的)。但是实际上有两种不同的右移,一种是保持符号,而右无符号右移只是0位(也有一个有符号的解释,但通常并不重要)。
相关问题
- 1. 困惑的序列图,包括<<METACLASS>>
- 2. inoremap <Tab><Esc> and <C-I><Tab>
- 3. 新到Android - <integer>语法困惑
- 4. vector <string *>让我困惑
- 5. 替换&amp;&,<lt < and > gt gt to gt在javascript中
- 6. 运营商<< and >>重载
- 7. 逃生 “<" and ">” 在XSL <input/>
- 8. XSLand <node></node> diff
- 9. C++ Template >> and << Overloading trouble
- 10. 的Javascript运营商<< and >>
- 11. tag =“value”and <tag> value</tag>
- 12. Grails <r:use> and <r:require>
- 13. wp_editor总是转换<br>到<p> </p>
- 14. 这是什么意思(计算中的<< and > >>)?
- 15. \ < and \>在sed
- 16. PHP:[[:<:]] and [[:>:]]锚
- 17. 关于可空的<T>约束的困惑
- 18. Sortable BindingList <T>:关于RemoveSortCore的困惑
- 19. nHibernate未来<T>,关于加载顺序的困惑
- 20. 困惑于Html.AttributesFor(m => m.Name))
- 21. “<<" and ">>”是什么意思在c + +的cout/cin?
- 22. 用strip_tags是不允许<< and >>在PHP
- 23. groovy <<令人困惑
- 24. JavaFX分页,加入<< and > >>选项
- 25. 删除最后</p> <pre><code>- > - > - > - > - </code></pre> <p>但是由于某种原因,我有一个:元素
- 26. 浮动元素<br /><br /><br /><br /><br /\><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
- 27. 的preg_match为<?PHP,<?, and/or ?>
- 28. 使用>>,>,> |,||,| <,<,<<,<<
- 29. CAML <AND>导致ServerException
- 30. C++运算符“<" and ">”
有人可能会指出,在这种情况下,排序是否重要?我的意思是,“LittleEndian <<等于'BigEndian >>'? MiddleEndian呢? – elmigranto