美文网首页
数据表示和位运算

数据表示和位运算

作者: 冷月成双 | 来源:发表于2019-12-03 21:14 被阅读0次

原码 :

原码表示法中,最高位为符号位,0表示正号,1表示负号,其余的 n-1 位表示数值的绝对值.

# 机器字长为8
#0的原码有两种表现形式.
+0(原) = 0 0000000
-0(原) = 1 0000000

+1(原) = 0 0000001
-1(原) = 1 0000001

反码 :

反码表示法中,最高位为符号位,0表示正号,1表示负号,正数的反码与原码相同,负数的反码则是其绝对值按位求反.

# 机器字长为8
#0的反码有两种表现形式.
+0(反) = 0 0000000
-0(反) = 1 1111111

+1(反) = 0 0000001
-1(反) = 1 1111110

补码 :

补码表示法中,最高位为符号位,0表示正号,1表示负号,正数的补码与其原码和反码相同,负数的补码则等于其反码末位加1

# 机器字长为8
#0的补码只有1种表现形式.
+0(补) = 0 0000000
-0(补) = 0 0000000

+1(补) = 0 0000001
-1(补) = 1 1111111

位移运算

左移运算 : <<

8 << 2 = 32
0000 0000 00000 0000 0000 0000 0000 1000
向左移2位后
00 0000 00000 0000 0000 0000 0000 1000 00
对比上面,去掉最高的2位,在最低位后面补上2个0 得到 32 

可以看到
32 = 8 * 2^{2}

右移运算 : >>

-8 >> 2 = -2

  1. 原码 : 1000 0000 0000 0000 0000 0000 0000 1000

    反码 : 1111 1111 1111 1111 1111 1111 1111 0111

    补码 : 1111 1111 1111 1111 1111 1111 1111 1000

  2. 补码向右位移2位,高位补1,低位舍掉

    补码 : 11 1111 1111 1111 1111 1111 1111 1111 10

  3. 补码还原到原码

    保留符号位然后取反,然后加1就得到原码

    10 0000 0000 00000 0000 0000 0000 0000 10

  4. 所以-8 >> 2 相当于
    -8/(2^2) = -2

位运算

运算符 含义 功能
& 按位与 两个为1,结果为1;否则为0。
| 按位或 两个只要有一个为1,结果为1。
按位异或 两个同号结果为0(假)异号则结果为1(真)
取反 按位取反,即将0变1,将1变0。

相关文章

  • 数据表示和位运算

    原码 : 原码表示法中,最高位为符号位,0表示正号,1表示负号,其余的 n-1 位表示数值的绝对值. 反码 : 反...

  • Python基础入门:从变量到异常处理(1天)--阿里云天池

    变量、运算符与数据类型和位运算 2 变量、运算符与数据类型 2.1注释 1.在python中,#表示注释,作用于整...

  • 如何用二进制表示整数与位运算

    续上期《如何操作数据》本文和大家一起学习如何使用二进制表示整数与位运算 整数的二进制表示与位运算 在《如何操作数据...

  • 问题精选-Java

    一、&和&&的区别 &是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(and) 二、Collection...

  • 阿里总结:java面试题基础

    4、&和&&的区别 答:&是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(and) 5、Collecti...

  • LeetCode191——位1的个数(位运算)

    位运算基础 位运算基于整数的二进制表示进行运算。由于计算机内部就是以二进制来存储数据,因此位运算会很快。基本的位运...

  • 第三节课

    第二章 运算方法和运算器 2.1 数据与文字的表示方法 2.1.1 数据格式 定点数的表示    符号   ...

  • java基础面试题

    int 有几个字节 4个字节 2、&和&&的区别 &是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(an...

  • 17.位运算基础及实战要点

    17.位运算基础及实战要点 位运算符 算数移位与逻辑移位 位运算的应用 为什么需要位运算 机器里的数字表示方式和存...

  • Java 运算符和运算符优先级

    ⭕️ 运算符是一种特殊的符号,用以表示数据的运算、赋值和比较等。 → 算术运算符 → 赋值运算符 → ...

网友评论

      本文标题:数据表示和位运算

      本文链接:https://www.haomeiwen.com/subject/ddmhgctx.html