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



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

  

user avatar   miloyip 网友的相关建议: 
      

原文是:

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

或可译作:

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

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




  

相关话题

  C++在面向对象编程中,非虚继承和非虚析构函数的存在是为了解决什么问题? 能否都用虚继承和虚析构函数? 
  教授说没有写过一千行以上代码的程序就别想上大公司,这种说法对吗? 
  Matlab/NumPy/C++Eigen 速度差距为什么很大? 
  C++ 学到什么程度才能叫精通? 
  怎样理解C++中“如果属性有在堆区开辟的,一定要自己提供拷贝构造函数,防止浅拷贝带来的问题”? 
  为什么这么使用 C 语言 fgetc() 函数会出现乱码? 
  i=1,为什么 (++i)+(++i)=6? 
  C 语言和 C++、C# 的区别在什么地方? 
  有 C 语言基础,选择 C#、C++、Java、Swift 中的哪一个进一步学习更合适? 
  既然引用计数在做 GC 时有性能问题,为什么智能指针会广泛应用它? 

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





© 2025-04-15 - tinynew.org. All Rights Reserved.
© 2025-04-15 - tinynew.org. 保留所有权利