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



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

  

user avatar   miloyip 网友的相关建议: 
      

原文是:

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

或可译作:

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

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




  

相关话题

  C语言中for语句的赋初值用int i=1和i=1有什么区别? 
  C#委托的性能开销具体在哪里,有哪些使用指导? 
  是 C++ 的发展进入了邪路,还是我写代码的姿势不正确? 
  C语言中后缀自加i++表达式的值到底是谁的值? 
  Mac 下顺手的 C/C++ 开发 IDE 是哪个? 
  C语言中,为什么指向指针的指针的类型是int **?类型的话直接int*不就行了? 
  C语言编写时,将参数传递跨越多个函数的方式是否是妥当的? 
  为什么要有指针? 
  VScode为什么把*.C当成C而不是C++?怎么改? 
  为什么这个程序电脑运行的结果和手机运行的不一样?数值小的时候一样? 

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





© 2025-03-28 - tinynew.org. All Rights Reserved.
© 2025-03-28 - tinynew.org. 保留所有权利