网页
资讯
视频
图片
知道
文库
贴吧
地图
采购
进入贴吧
全吧搜索
吧内搜索
搜贴
搜人
进吧
搜标签
日
一
二
三
四
五
六
签到排名:今日本吧第
个签到,
本吧因你更精彩,明天继续来努力!
本吧签到人数:0
一键签到
可签
7
级以上的吧
50
个
一键签到
本月漏签
0
次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行
补签
。
连续签到:
天 累计签到:
天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
10月09日
漏签
0
天
c新手吧
关注:
8,604
贴子:
48,111
看贴
图片
吧主推荐
游戏
1
2
下一页
尾页
55
回复贴,共
2
页
,跳到
页
确定
<返回c新手吧
>0< 加载中...
计算机原码,反码,补码详解
只看楼主
收藏
回复
一杯清酒空对月
C专家
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
大家好 《C 和指针》一书中,C 语言中仅有四种数据类型,分别为整型、浮点型、指针型和聚合类型(包含数组和结构体),剩下的类型都是从这四种类型派生或组合而来的。
送TA礼物
IP属地:江苏
来自
Android客户端
1楼
2015-01-23 15:55
回复
一杯清酒空对月
C专家
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
例如字符型char 其实就是一个短整型,而字符串是用字符数组来保存和模拟的。我主要说说整型和浮点型的相关问题。字符串、指针、数组和结构等。整型家族还分为有符号(signed)和无符号(unsigned)两种。整型数无论是否有符号,在计算机内部都是用补码来表示的。理解补码的表示方式有助于我们对整型数溢出的理解,
IP属地:江苏
来自
Android客户端
3楼
2015-01-23 16:02
回复
收起回复
一杯清酒空对月
C专家
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
申明一下。本人也不算高手。只是多看了几本书。我尽量以我理解最简单的方式介绍给大家。我不能理解的就只能一书本的介绍了哦
IP属地:江苏
来自
Android客户端
4楼
2015-01-23 16:05
回复(1)
收起回复
一杯清酒空对月
C专家
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
大家都知道计算机内部是二进制的。为什么是二进制呢。因为电路上只有开与关二种状态。也可以理解有电和没电!分别代表1与0。那大于1怎么办。机智的科学家就接了2根线。再大于呢。就继续接线。现在理解了集成电路了把!好了,物理介绍就到此为止了!(这是抽象的理解。真正的计算机可比这个难多了)下面去正题
IP属地:江苏
来自
Android客户端
5楼
2015-01-23 16:28
回复
收起回复
一杯清酒空对月
C专家
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
理解了计算机内部使用的二进制,就来来看看原码、反码和补码的官方定义。
• 原码:原码是一种计算机中对数字的二进制表示方法,数码序列中最高位为符号位,符号位为0 表示正数,符号位为1表示负数;其余有效值部分用二进制的 绝对值表示。
IP属地:江苏
来自
Android客户端
6楼
2015-01-23 16:31
回复
收起回复
一杯清酒空对月
C专家
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
上面好像有点懂。别急。还有。
• 反码:如果机器数是正数,则该机器数的反码与原码一样;如果机器数是负数,则该机器数的反码是对它的原码(符号位除外)各位取反而得到的。• 补码:如果机器数是正数,则该机器数的补码与原码一样;如果机器数是负数,则该机器数的补码是对它的原码(除符号位外)各位取反,并在末位加1。
IP属地:江苏
来自
Android客户端
7楼
2015-01-23 16:32
回复(3)
收起回复
一颗柠檬
C伪神
13
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
mark
这是第几章?
IP属地:湖北
来自
Android客户端
8楼
2015-01-23 19:12
回复(3)
收起回复
一杯清酒空对月
C专家
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
感谢吧主留名,好的我们继续哦.
听过官方定义的原码,反码,补码.后一般人都是糊里糊涂的.其实吧.我个人觉得这个不要了解.毕竟计算机是实用为主的.主要的是理解.等我说完后.你就知道为什么C语言里面有那么多数据类型了。
IP属地:江苏
9楼
2015-01-23 19:29
回复
收起回复
一杯清酒空对月
C专家
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
不了解怎么办呢。其实我们可以通过画几个图把概念简单地阐述清楚。为了方便说明问题,我就用用4 位二进制数表示一个整数。(其实一般32位的电脑32位编译器用32位表示一个整数。同样64位的编译器就是64位表示一个数哦。至于为什么使用4位。因为再大一点我就不算不出来呢
)
IP属地:江苏
10楼
2015-01-23 19:41
回复(1)
收起回复
一杯清酒空对月
C专家
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
无符号数的原码表示方法就是这个图。其中内圈的数字为二进制数,外圈的数。为内圈二进制数所对应的十进制数 。
ps:世界上有10种人.一种懂二进制.一种不懂二进制.希望你懂二进制.还知道它与十进制之间如何装换.
IP属地:江苏
11楼
2015-01-23 19:48
回复(2)
收起回复
一杯清酒空对月
C专家
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
好的.顾名思义,无符号数不能表示负数。为了解决这个问题,我们的计算机发明者们把一个数最高位定义为符号位。如果最高位为1 就代表是一个负数,如果是0就是正数.其于位表示对应的十进制数。这就是有符号数的原码表示。 (你可以这样理解为什么1开头是负数呢.你把1横过来就明白了吧
我猜的)
这也有图哦(
我不是发图水经验.我只是试试)
IP属地:江苏
12楼
2015-01-23 19:55
回复
收起回复
一杯清酒空对月
C专家
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
好.说了这么多.问题来了哦.当然不是挖掘机哪家强呢.不过问下也没事.
结合楼上的图.用原码来表示一个有符号数会带来两个问题。第一个问题就是正负相加不等于零。1+(-1),就是0001+1001=1010,按照原码表示等于-2。第二个问题就是有两个零存在,分别为0000 和1000。可见,原码不适合用来表示有符号数!(我不会告诉你其实这就是整型)
IP属地:江苏
13楼
2015-01-23 19:59
回复
收起回复
一杯清酒空对月
C专家
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
好像现在崩溃了.但是为了保证正负相加等于零,我们的计算机的创造者的想象力是丧心病狂的。
发明了反码了。为什么叫反码。或许正的不行我们就用反的吧。
如果把二进制数1000 想象成12 点,把二进制数0000 想象成6 点,原码就是从12 点开始顺时针排列-1到-7,而反码就是从6 点开始逆时针排列-1到-7。这样做的好处就在于现在正负数相加等于零了。例如,1+(-1),就是0001+1110=1111,用反码表示的话就是(-0)了。 (我的想象力匮乏。只能想到时钟)
来水经验了。不对。是发详细解释发图。
IP属地:江苏
14楼
2015-01-23 20:09
回复
收起回复
一杯清酒空对月
C专家
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
反码表示法规定:正数的反码与其原码相同;负数的反码是对其原码逐位取反,但符号位除外。
反码威武啊。为我们解决了就是正负相加不等于零
可能大家还是不怎么理解哦。我来解释下哦.
1100110011 原
1011001100 反 除符号位,按位取反。明白了吧。
正数的原反是一样的。
IP属地:江苏
15楼
2015-01-23 20:14
回复
收起回复
一杯清酒空对月
C专家
11
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
虽然那么反码那么牛逼。但是还是有两个零存在,看14楼图。那就是分别为0000 和1111。说明反码还是有局限性的
(反码表示:追我的时候还叫我小甜甜。现在有了新欢就把我忘记了啊)
胡扯。补码才不是新欢呢。是我正室。计算机说到。。。太乱了。我写不下去了
。
在计算机中,数据是以补码的形式存储的(为什么呢。因为人家的计算机的正室
)
况且。补码还真有两把刷子。人家就能把2个零的问题给解决掉(难怪叫补码。原来把一个洞给补了啊
)
IP属地:江苏
16楼
2015-01-23 20:28
回复
收起回复
登录百度账号
扫二维码下载贴吧客户端
下载贴吧APP
看高清直播、视频!
贴吧热议榜
1
孙颖莎1比3金琴英
1908548
2
国乒女团3比1战胜朝鲜
1757812
3
崩铁2.7星期日立绘首爆
1316871
4
乒乓亚锦赛中国男团进4强
971750
5
王楚钦不敌14岁对手丢首盘
965350
6
BLG疑似轮换打野
687600
7
A股三大指数低开
549677
8
以色列一日内遭三方导弹袭击
508904
9
诺贝尔物理学奖授予AI领域
498141
10
里内特因内涵武汉在武网被嘘
349780
贴吧页面意见反馈
违规贴吧举报反馈通道
贴吧违规信息处理公示