百科问答小站 logo
百科问答小站 font logo



为何对于无符号数,右移必须是逻辑的? 第1页

  

user avatar   miloyip 网友的相关建议: 
      

原文是:

For unsigned data, on the other hand, right shifts must be logical.

或可译作:

另一方面,无符号数的右移运算必然是逻辑的。

有符号数需考虑正负数的情况,其算术右移需要在左端补充原来的符号位(最高位);无符号数没有符号位,其右移运算后总是在左端补零。所以无符号数没有所谓的「算术右移运算」,必然会使用左端补零的「逻辑右移运算」。




  

相关话题

  你有过哪些被 C++ 摧残的经历? 
  c++ 中明明有vector了为什么还要有stack? 
  当下软件开发语言腾出不穷,作为老牌c++GUI领域top1的QT未来会怎样? 
  如何理解编程语言中「流」(stream)的概念? 
  运算符+左右操作数地位相等吗? 
  虚函数一定是运行期才绑定么? 
  为什么学习编程第一课要学习输出"hello, world"?这是谁规定的? 
  C语言中for语句的赋初值用int i=1和i=1有什么区别? 
  大括号不换行的坏处有什么?为什么有人不换行? 
  C++ 对 c 兼容是什么意思? 

前一个讨论
如何看待「离职能直接影响中国登月的人才,只配待在国企底层」一文里所描述的国企技术人员现状?
下一个讨论
如何理性客观评价豆瓣的阿佳妮扒皮贴?





© 2025-02-27 - tinynew.org. All Rights Reserved.
© 2025-02-27 - tinynew.org. 保留所有权利