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



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

  

user avatar   miloyip 网友的相关建议: 
      

原文是:

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

或可译作:

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

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




  

相关话题

  求十亿内所有质数的和,怎么做最快? 
  编译器在遇到指向基类的指针时都会进行动态联编吗? 
  LeetCode上 C++ 官方题解为什么有很多没有写delete,不会内存泄漏么?面试时也可以么? 
  Rust有可能在嵌入式领域取代C的位置吗? 
  对于学习代码困难的人来说,应该如何学习代码比较合适? 
  假如用汇编语言重制某游戏或者软件能否降低 CPU 性能损耗? 
  C 语言用 换行后就无法再回到上一行了吗? 
  为什么1ULL << 64得到的结果是1? 
  C++中 std::string 应该声明在循环内部还是外部? 
  在不使用奇淫怪技的情况下, 如何写出比 STL 快的 vector? 

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





© 2024-11-08 - tinynew.org. All Rights Reserved.
© 2024-11-08 - tinynew.org. 保留所有权利