Python3 笔记:负数的二进制

Python3 笔记:二进制的转换-CSDN博客

负数的二进制怎么表示?

首先我们得知道三个码:原码,反码,补码。

原码:一个整数,按照绝对值大小转换成的二进制数。
反码:将二进制数按位取反,所得的新二进制数称为原二进制数的反码。
补码:反码加1称为补码。

以100为例:(十进制100——二进制1100100)

int 类型占4个字节,32位,我们写成:

原码:00000000 00000000 00000000 01100100
反码:11111111 11111111 11111111 10011011
补码:11111111 11111111 11111111 10011100

负数的二进制数就是其正数原码的补码。

负100的二进制数就是正100原码的补码,即:11111111 11111111 11111111 10011100。

print(bin(100))	# 运行结果:0b1100100
print(bin(-100))	# 运行结果:-0b1100100
print(bin(-100 & 0xffffffff))	# 运行结果:0b11111111111111111111111110011100

使用bin()函数查看二进制数时:当参数是正数时输出正数的原码,当参数是负数时,只能输出负号加对应正数的原码。

在二进制码中,采用最高位(最左边的)是符号位的方法来区分正负数,符号位为0表示正数,1表示负数。

正100的二进制数的最左边的符号位是 0,负100的二进制数的最左边的符号位是 1。

相关推荐

  1. Python3 笔记负数二进制

    2024-05-13 00:40:07       10 阅读
  2. Python3 笔记Python函数

    2024-05-13 00:40:07       10 阅读
  3. Python3 笔记:continue语句和break语句区别

    2024-05-13 00:40:07       8 阅读
  4. Python3 笔记:字符串 strip()、lstrip()、rstrip()

    2024-05-13 00:40:07       11 阅读
  5. Python3 笔记:字符串 startswith() 和 endswith()

    2024-05-13 00:40:07       9 阅读
  6. Python3 笔记:字符串 replace() 和 expandtabs()

    2024-05-13 00:40:07       7 阅读
  7. Python3 笔记:字符串 zfill() 和 rjust()

    2024-05-13 00:40:07       11 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-05-13 00:40:07       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-05-13 00:40:07       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-05-13 00:40:07       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-05-13 00:40:07       20 阅读

热门阅读

  1. redhat yum源配置

    2024-05-13 00:40:07       13 阅读
  2. Qt 实现TCP 协议的断开重连

    2024-05-13 00:40:07       14 阅读
  3. 【c++】std list和std queue的区别

    2024-05-13 00:40:07       13 阅读
  4. Puppeteer实践:复杂的问题简单化

    2024-05-13 00:40:07       14 阅读
  5. React 之 useCallback(缓存函数)(十八)

    2024-05-13 00:40:07       8 阅读
  6. 最小生成树刷题笔记

    2024-05-13 00:40:07       9 阅读