| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 507 人关注过本帖
标题:小弟向各位求救!
只看楼主 加入收藏
hy1107648
Rank: 2
等 级:论坛游民
帖 子:80
专家分:40
注 册:2010-2-8
结帖率:37.5%
收藏
已结贴  问题点数:20 回复次数:3 
小弟向各位求救!
小弟想知道什么是原码以及怎样求一个数的原码?于是我上百度查了这方面的内容,看到如下解释:
原码(true form)是一种计算机中对数字的二进制定点表示方法。原码表示法在数值前面增加了一位符号位(即最高位为符号位),该位为0表示正数,该位为1表示负数,其余位表示数值的大小。
 ①小数原码的定义
  [X]原 =
  X 0≤X <1
  1- X -1 < X ≤ 0
  例如: X=+0.1011 , [X]原= 01011
  X=-0.1011 [X]原= 11011
  ②整数原码的定义
  [X]原 =
  X 0≤X <2n
  2n-X - 2n < X ≤ 0
请问:这里所指的X是十进制数吗?X=+0.1011 ,为什么[X]原= 01011?0≤X <2n和- 2n < X ≤ 0 中的n代表什么?请各位讲详细一些,谢谢啦!


2010-02-11 16:33
dydsdyds
Rank: 6Rank: 6
来 自:Java
等 级:侠之大者
帖 子:217
专家分:457
注 册:2010-2-14
收藏
得分:6 
我也不大明白,
我的理解是
为什么[X]原= 01011?
因为由X=+0.1011直接乘以10…………
仅供参考!!!!

c语言刚开一学期,就换开VB...
2010-02-17 22:00
doubleflygo
Rank: 2
等 级:论坛游民
帖 子:26
专家分:50
注 册:2010-1-22
收藏
得分:6 
按楼主的理解如果x是二进制的话,那么【x】原码就无需另外表示了,如果是十进制的话则肯定不会只用0和1表示;
而文字中给出的表示x=+0.1011只是根据十进制x=0.6875转化为二进制的一个中间过程吧,因为二进制的表示是为了让计算机识别的,因此根本不可能有小数点;而[x]原=x,如果这里x是十进制的话又不合理了,因此可以这样理解x只是一个数而已,具体它是用二进制还是用十进制表示的根据题意判断就行;而原码的定义只是用一种给定的二进制形式表示而已;
第二问中,n应该是2的幂指数,也就是2的多少次方,因为我们知道负整数的原码定义是它的绝对值的原码取反加1,而两者之和必然是2的多少次方的数;由于文本格式表示不出指数和底数的位置关系,因此只能这么表示而已;如果是word就可以了;
2010-02-18 10:00
cnfarer
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:179
帖 子:3330
专家分:21157
注 册:2010-1-19
收藏
得分:6 
这里所指的X是十进制数吗?X=+0.1011 ,为什么[X]原= 01011
1.应该是指二进制数,因为原码("[X]原= 01011"去掉符号位)与X的形式(小数部分)相同.否则需要将十进制数化为二进制数方可表示原码.
原码(true form)是一种计算机中对数字的二进制定点表示方法
2.上述X的原码实际隐含了小数位(第一位是符号位,其余部分是小数位)

★★★★★为人民服务★★★★★
2010-02-18 11:59
快速回复:小弟向各位求救!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012007 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved