社区
C++ 语言
帖子详情
不用补码为什么就不能保证0的表示唯一性了?
wwllyl
2004-11-22 03:01:33
不用补码0不也是表示成00000000吗?
还有哪个能表示0?
...全文
297
1
打赏
收藏
不用补码为什么就不能保证0的表示唯一性了?
不用补码0不也是表示成00000000吗? 还有哪个能表示0?
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
jp1984
2004-11-22
打赏
举报
回复
源码+0 ,-0是不同的这你知道八?
+0 = 0000 ,-0 = 1000
反码+0 = 0000,-0 = 1111
只有补吗+0 = 0000,-0 = 0000
晓得了伐?
计算机中为什么要用
补码
表示
负数,为什么
补码
一定是反码+1呢?
本文要讨论的话题是:
补码
。 在介绍
补码
前,先介绍一下,什么是原码,什么是反码。 在计算机里,是用二进制来保存整数的,假设我们用1个字节(1字节=8bit)来
表示
整数(实际在多数编程语言里都是4个字节),规定最高位为符号位,其余位为数值位。 正整数10的二进制为00001010,这个就是原码。 数值位取反后得到的二进制,就是反码,取反就是将0变成1,1变成0。 有基础的同学肯定知道,计算机是用
补码
表示
负数的,
补码
=反码+1,举个例子,-10的原码为10001010,-10的反码为11110101,-10的
补码
补码
的
表示
以及+-0的问题
正数的
补码
是其本身,也就是原码. 负数的
补码
是各位取反后加1.也就是其反码加1. +0的
补码
就是其原码,也就是说是0000 0000而已(对于8位来说) -0的
补码
是其反码加1,其反码是1111 1111,当然,其反码加1后就是溢出一个进位后,仍然是0000 0000. 问题出现在(+0)和(-0)上,在人们的计算概念中零是没有正负之分的。 于是就引入了
补码
概念。负数的
补码
就是对反码加一,而正数不...
负数
补码
表示
范围以及规格化数
原码形式下
补码
形式下 负数
补码
规格化取值范围
为什么
补码
可以
表示
负数?
最近整理一些html资料,有篇关于二进制
补码
的,看了还是比较模糊,索性不如自己试验下,负数,
补码
,反码究竟是啥关系?! 计算机中加减的运算都通过加来求值,减去一个数等于加上这个数的负值,这是可以理解的。 负数的
表示
是在最高位置1来区分,这还不够,严格的说是通过
面试官:为什么 0.1 + 0.2 == 0.300000004 ?
我们在 JavaScript 里执行 0.1 + 0.2,会得到下面这个结果: 那今天,我们来思考几个问题: 为什么负数要用
补码
表示
? 十进制小数怎么转成二进制? 计算机是怎么存小数的? 0.1 + 0.2 == 0.3 吗? … 别看这些问题都看似简单,但是其实还是有点东西的这些问题。 为什么负数要用
补码
表示
? 十进制转换二进制的方法相信大家都熟能生巧了,如果你说你还不知道,我觉得你还是太谦虚,可能你只是忘记了,即使你真的忘记了,不怕,贴心的小林在和你一起回忆一下。 十进制数转二进制采用的是除 2
C++ 语言
65,214
社区成员
250,514
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章