`>>`(有符号右移) 和 `>>>`(无符号右移)的区别
JavaScript >>
(有符号右移) 和 >>>
(无符号右移)的区别
之所以以 JS 为例,是因为Java中不支持无符号操作
直接看MDN英文吧:
>> (有符号右移)
sign-propagating(符号位-传播)右移
我们知道,计算机中以二进制存储数字,二进制中最左边的第一位,叫符号位,所以这就很明显了,右移2位后,最左边缺少2位数字,那就应该填充数字,那填充什么呢?符号位是什么,我就填什么,所以 -9 >> 2
中最左边2位和符号位一样,都是1。
>>> (无符号右移)
zero-fill(零-填充)
这个就更明显了,直接就说了,用0填充,所以右移后空位不管你符号位是啥,我都只填0。
总结
因此,我们所说的 有符号、无符号 看的就是二进制的符号位
- 无符号:就是不管符号位,右移只填充0;
- 有符号:就是符号位是啥,我就填充啥。Java中也是同理。
`>>`(有符号右移) 和 `>>>`(无符号右移)的区别相关推荐
- 分析轮子(二)- ,, (左移、右移、无符号右移)
前言:写 分析轮子(一)-ArrayList.java 的时候看到源码中有 int newCapacity = oldCapacity + (oldCapacity >> 1); 这样的代 ...
- 通过原码、反码、补码彻底搞清左移、右移、无符号右移
文章目录 原码.反码.补码 有符号右移>> 无符号右移>>> 有符号左移<< 总结有无符号 原码.反码.补码 正数 正数的原码.反码.补码都是该数字的二进制表 ...
- Java负整数的左移、右移、无符号右移
Java负整数的左移.右移.无符号右移.正数的位移没有涉及到符号,而且正数的原码.反码.补码都是一样的,所以相对简单,但是对于负整数的位移,往往容易混淆. Java的<< >> ...
- [转载]C++ 中有符号类型到无符号类型的转换(C和C++程序员面试秘笈P9面试题6)...
本文复制自https://blog.csdn.net/abnerwang2014/article/details/20656423,是为了自己以后查看方便才复制过来的,谢谢原博主. 为了更好地解释下面 ...
- 负数时的有符号整型和无符号整型的转换
目录 一.补码 二.负数时的有符号整型和无符号整型的转换 三.关于无符号的笔试题 一.补码 有符号数在计算机中存储,用数的最高位存放符号, 正数为0, 负数为1 例如:有符号数 1000 0011,其 ...
- 有符号拓展:signed-extending无符号拓展:unsigned-extending
符号拓展 拓展意义 举个栗子 有符号拓展:signed-extending&无符号拓展:unsigned-extending 拓展意义 符号拓展的意义是产生位数拓展,数值不变的的结果.常见于不 ...
- C语言 有符号类型转换为无符号类型
C语言中变量的类型变换比较多,有些地方需要时刻注意,不然很可能写出带有bug的代码并深埋入系统,难以察觉. 例如 有符号类型和无符号类型运算,有符号类型转换为无符号类型. 需要注意的有两种情况: 1. ...
- C语言中无符号整型变量赋值负数,负数时的有符号整型和无符号整型的转换
目录 一.补码 二.负数时的有符号整型和无符号整型的转换 三.关于无符号的笔试题 一.补码 有符号数在计算机中存储,用数的最高位存放符号, 正数为0, 负数为1 例如:有符号数 1000 0011,其 ...
- 【汇编优化系列】关于符号扩展和无符号扩展(包括mips msa实现)
DATE: 2021.11.26 文章目录 前言 1.参考 2.符号扩展和无符号扩展 含义 3.举例说明 4.mips msa相关指令 前言 在mips msa intrinsic工程优化过程中,遇到 ...
- C++有符号整型和无符号整型的区别
C++有符号整型和无符号整型的区别 C++中的整型分为有符号类型整型和无符号类型整型,区别如下. 在有符号类型中:最左边的位是符号位,余下的位是数值位.符号位为1,代表负数:符号位为0,则为正数.例如 ...
最新文章
- ef core中如何实现多对多的表映射关系
- 3 二分频verilog与Systemverilog编码
- layui table动态选中_微信炫酷炸啦!超视觉动态壁纸来了,还自带音效!
- DVWA 黑客攻防演练(十二) DOM型 XSS 攻击 DOM Based Cross Site Scripting
- 8款超级好用的3D建模软件上下篇
- 题目 1040: 实数的打印
- EasyExcel(一)导入excel的分析监听器
- 博弈论:帕累托最优与纳什均衡的联系和区别
- html class生效顺序,HTML5 CSS3小猪日历(动物挂历)
- Python|制作汉堡的解题方法
- java架构师全套图解,使用/教程/实例
- 电子血压仪器小程序开发制作
- Beosin(成都链安)预警:黑客攻击EOS竞猜类游戏 已获利数百EOS
- 2021-10-27 求方向盘转角
- 【微服务】如何实现微服务集群的高可靠?
- Java在线考试系统(含源码)
- Android System Server大纲之VibratorService
- foobar2000 1.1.10 用苹果新近开源的ALAC编码器很方便将APE、FLAC、WAV转无损m4a
- 限定学校|在站博士后省公派新加坡国立大学从事博后研究
- 如何设置设备ip,以及设置局域网