在十进制中表示正负数会有专门的符号来区分,而在二进制中,怎样表示正负数呢???

在二进制中表示负数时,一般会把位权的最高位上的数字作为符号来使用,因此,位权的最高位也称为符号位
符号位为 0,表示正数;符号位为 1,表示负数

例:
我们都知道十进制数 1, 用二进制表示是:0000 0001,那么,-1用二进制怎么表示呢?
可能有人会说,把0000 0001的符号位变成1不就完了吗? 也就是表示成这样:1000 0001
真的是这样吗?
我们都知道:1 + (-1)= 0,那么我们将用二进制表示的1和-1相加,看看等不等于0:
0000 0001 + 1000 0001 = 1000 0010 (十进制表示是 -128)
那 -1用二进制表示是怎样的呢?
这里我们用到的方法叫做“二进制的补数”,补数就是用正数来表示负数。而求补数的方法叫做“取反加一”。
取反加一法可以分成两步来计算:第一步:取反。 在二进制数中,只有0和1;我们将0变成1,将1变成0,就叫取反。
第二步:加一。 将取反得到的数+1.
例如,要用八位二进制数表示 -1,就得先求得 1的二进制数,也就是0000 0001,然后用0000 0001的补数来表示 -1。 先取反:1111 1110,再加一:1111 1111。 验证:0000 0001 + 1111 1111 = 1 0000 0000 在这里,出现了最高位溢出的情况,也就是说在八位的范围内进行运算时,1 0000 0000中的 1 溢出,1 0000 0000就被计算机认为是0000 0000了
这里也请大家记住一个法则:将二进制的数取反加一后,与原来的值相加,结果为0

注:当运算结果为负数时,该结果为补数表示形式。例如:十进制运算 6 - 9 = -3,如果用二进制数进行运算的话,-3将会被补数形式表示。

二进制表示负数的方法:“ 补数 ”相关推荐

  1. 第三讲,我们来谈谈:“二进制的负数”

    首先,你要记住并且不要问为什么:"在计算机中,所有的数据,最终都是使用二进制数表达的." 还要记住并且不要问为什么:"在计算机中,正数是直接用原码来表示和存储的.&quo ...

  2. 十进制转化为二进制的几种方法

    /十进制转二进制的三种方法/ package 数据结构; import java.util.Scanner;; public class 十转二进制 { public static void main ...

  3. 计算机进制中负数对应的二进制,十进制负数转换为二进制、八进制、十六进制的知识分享...

    搜索热词 程序猿们或许对二进制都不陌生,二进制是计算技术中广泛采用的一种数制.二进制数据是用0和1两个数码来表示的数.但是很多人都会将二进制转换成整数,但是如何用二进制表示负数呢?有的人会说,在二进制 ...

  4. Python基础入门之二进制的负数

    刚刚介绍了位运算符,里面涉及到了二进制的运算,出现了a = 60,~a = 1100 0011 = -61的计算,所以这里记录一下二进制的负数表示和计算. 二进制是计算技术中广泛采用的一种数制.二进制 ...

  5. php处理二进制,PHP应用:PHP处理二进制数据的实现方法

    <PHP应用:PHP处理二进制数据的实现方法>要点: 本文介绍了PHP应用:PHP处理二进制数据的实现方法,希望对您有用.如果有疑问,可以联系我们. PHP处理二进制数据需要用到pack( ...

  6. 把十进制转化为二进制的一种方法

    把十进制转化为二进制的一种方法: void pb(int n){if(n != 0){pb(n/2);putchar('0'+n%2);} }int main(void){for(int i=10; ...

  7. java xml二进制流传输_XML中二进制数据的处理方法

    XML中二进制数据的处理方法 在xml中,所有的数据都是以文本的形式来显示,但是二进制数据不能直接以文本格式来表示,那xml又是怎么处理二进制数据的呢?下面就来探讨一下. 为了简单和通用性,xml被设 ...

  8. 二进制(二):十进制转二进制的两种方法

    前一篇已经简单介绍了二进制,现在来介绍如何把我们常用的十进制数字转换成二进制.十进制转二进制有两种方法: 一.连除法(把十进制数字除以2,得到商和余数,再把商除2,直到除到0为止,然后按倒序把余数排列 ...

  9. 二进制正负数的表示法

    数在数字电路中的二进制表示形式成为机器数,在通常的算术运算中,用"+"."-"表示正数和负数,而数字电路不识别"+","-&quo ...

最新文章

  1. 华大基因回复深交所:“14万中国人基因大数据”项目与外方机构无关
  2. Python面试题-朋友昨天去面试,这5个Python面试题都被考到了,太神奇了!
  3. iOS 设置系统音量和监听系统音量变化
  4. 基于visual Studio2013解决面试题之0307最后谁剩下
  5. 【2016年第2期】专题导读:大数据与社会治理
  6. Go 面试专题 | slice 扩容后的内存容量如何计算?
  7. oracle 01102 两实例,ORA 01102
  8. .net连接mysql中文乱码问题的解决
  9. bzoj1814: Ural 1519 Formula 1 动态规划 插头dp
  10. 计算机应用水平测试excel,职称计算机考试Excel操作题及答案
  11. 二叉树层序遍历算法实现
  12. 声反馈(啸叫)如何避免产生和解决
  13. 2022-2028年中国纳米钛酸钡行业市场调查研究及投资策略研究报告
  14. pyserial库是python语言用于,python的pyserial模块
  15. 不改变像素尺寸怎么压缩图片
  16. EM(expection maxium)算法
  17. 深信服 | 2021 校招 [一面.二面.HR面]
  18. 盘点“PayPal黑帮”成员的传奇创业故事
  19. Python安装和导入cv库
  20. find的用法(完整)

热门文章

  1. android中转换content://media/external/images/media/539163为/storage/emulated/0/DCIM/Camera/IMG_20160807_
  2. Python-pathlib 库的 Path 用法
  3. TCP/IP协议族 总结
  4. 织梦dedecms 忘记管理员后台密码的解决技巧
  5. STM32 的核心Cortex-M3 处理器
  6. 电子计算机的四个名称,文件夹,文件夹名称唯美四个
  7. 学会使用debug模式调试代码
  8. 深度学习还没入门?看看深度学习三巨头的Deep Learning综述(1)
  9. Windows XP Service Pack 3 (Windows XP SP3)简体中文版本正式发布(附下载地址)
  10. 写论文CAJ如何提取文字?