有符号右移和无符号右移

您所在的位置:网站首页 10100110的十进制 有符号右移和无符号右移

有符号右移和无符号右移

2024-01-18 08:49| 来源: 网络整理| 查看: 265

正数 例如:8 >> 2 偶数情况 8的二进制为 0000 0000 0000 0000 0000 0000 0000 1000 右移两位后 0000 0000 0000 0000 0000 0000 0000 0010 结果为2,右移n位8/(2^n)

如果是奇数呢 9的二进制为 0000 0000 0000 0000 0000 0000 0000 1001 右移两位后 0000 0000 0000 0000 0000 0000 0000 0010 结果为2,右移n位近似等于9/(2^n)

负数 -8的二进制为 1000 0000 0000 0000 0000 0000 0000 1000(原码) 然后写出补码 1111 1111 1111 1111 1111 1111 1111 1000(补码) 计算补码的方式为反码+1,用一句话概括就是:保证符号位不变,其余位置取反加1(从右往左遇到第一个1,然后剩下的全部取反就是了) 右移两位后 1111 1111 1111 1111 1111 1111 1111 1110(补码) 1111 1111 1111 1111 1111 1111 1111 1111(补码+1) 1000 0000 0000 0000 0000 0000 0000 0000(补码+1取反) 根据补码写出原码才是我们所求的结果, 保留符号位,然后按位取反再加上1 1000 0000 0000 0000 0000 0000 0000 0010(补码的补码,即原码) 结果为:-2



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3