小数和分数的原码&补码怎么做啊?

大哥大姐,帮帮忙吧:37/64,-51/128,0.375,0.5625这4个的原码和补码怎么表示?PS.西安电子科技大学出版社的《PC汇编语言程序设计》的答案哪里有啊?... 大哥大姐,帮帮忙吧:37/64,-51/128,0.375,0.5625 这4个的原码和补码怎么表示?
PS. 西安电子科技大学出版社的《PC汇编语言程序设计》的答案哪里有啊?十万火急啊!~~~~~~~~~~~
上面这本书的答案哪里有下载啊?
展开
 我来答
大宝妈谈教育
高粉答主

2020-05-02 · 关注我不会让你失望
知道小有建树答主
回答量:3306
采纳率:100%
帮助的人:56.2万
展开全部

一、小数部分的原码和补码可以表示为两个复数的分子和分母,然后计算二进制小数系统,根据下面三步的方法就会找出小数源代码和补码的百位形式。

37/64=100101B/2^6=0.100101B

-51/128=110011B/2^7=0.0110011B

二、将十进制十进制原始码和补码转换成二进制十进制,然后根据下面三步的方法求出十进制源代码和补码形式。一个

0.375=0.011B

0.5625=0.1001B

三、二进制十进制对应的原码和补码

[37/64]源代码=[0.100101B]源代码=00100101B

[-51/128]源代码=[0.0110011b]源代码=10110011B

[0.375]原码=[0.011b]原码=00110000B

[0.5625]源代码=[0.1001B]源代码=01001000B

[37/64]补体=[0.100101B]补体=00100101B

[-51/128]补体=[0.0110011b]补体=11001101B

[0.375]补码=[0.011b]补码=00110000B

[0.5625]补体=[0.1001B]补体=01001000B

扩展资料:

原码、逆码、补码的使用:

在计算机中对数字编码有三种方法,对于正数,这三种方法返回的结果是相同的。

+1=00000001[原码]=00000001[逆码]=00000001[补码]

对于这个负数:

对计算机来说,加、减、乘、除是最基本的运算。有必要使设计尽可能简单。如果计算机能够区分符号位,那么计算机的基本电路设计就会变得更加复杂。

负的正数等于正的负数,2-1等于2+(-1)所以这个机器只做加法,不做减法。符号位参与运算,只保留加法运算。

(1)原始代码操作:

十进制操作:1-1=0。

1-1=1+(-1)=00000001[源代码]+10000001[源代码]=10000010[源代码]=-2。

如果用原代码来表示,让符号位也参与计算,对于减法,结果显然是不正确的,所以计算机不使用原代码来表示一个数字。

(2)逆码运算:

为了解决原码相减的问题,引入了逆码。

十进制操作:1-1=0。

1-1=1+(-1)=00000001[源代码]+10000001[源代码]=00000001[源代码]+11111110[源代码]=11111111[源代码]=10000010[源代码]=-0。

使用反减法,结果的真值部分是正确的,但在特定的值“0”。虽然+0和-0在某种意义上是相同的,但是0加上符号是没有意义的,00000001[源代码]和10000001[源代码]都代表0。

(3)补充操作:

补语的出现解决了零和两个码的符号问题。

十进制运算:1-1=0。

1-1=1+(-1)=00000001[原码]+10000001[原码]=00000001[补码]+11111111[补码]=00000000[补码]=00000000[原码]=0。

这样,0表示为[00000000],而之前的-0问题不存在,可以表示为[10000000]-128。

(-1)+(-127)=10000001[源代码]+11111111[源代码]=11111111[补充]+10000001[补充]=1000000[补充]=-128。

-1-127的结果应该是-128。在补码操作的结果中,10000000[补码]是-128,但是请注意,由于-0的补码实际上是用来表示-128的,所以-128没有原码和逆码。(-128的补码表10000000[补码]计算出的00000000[原码]是不正确的)。

冠月朗eI
推荐于2017-09-01 · TA获得超过1269个赞
知道小有建树答主
回答量:334
采纳率:0%
帮助的人:0
展开全部
一、十进制分数原码和补码可以先将分子和分母分别表示成二进制数,然后计算出二进制小数,再按下面第三步的方法将求出小数的原码和补码形式。
37/64=100101B/2^6=0.100101B
-51/128=110011B/2^7=0.0110011B

二、十进制小数的原码和补码也应该先将其转换成二进制小数,再按下面第三步的方法将求出小数的原码和补码形式。
0.375=0.011B
0.5625=0.1001B

三、将二进制小数对应的原码和补码求出
[37/64]原码=[0.100101B]原码=00100101B
[-51/128]原码=[0.0110011B]原码=10110011B
[0.375]原码=[0.011B]原码=00110000B
[0.5625]原码=[0.1001B]原码=01001000B

[37/64]补码=[0.100101B]补码=00100101B
[-51/128]补码=[0.0110011B]补码=11001101B
[0.375]补码=[0.011B]补码=00110000B
[0.5625]补码=[0.1001B]补码=01001000B
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
桐菊汗姬
2019-07-10 · TA获得超过3.7万个赞
知道大有可为答主
回答量:1.4万
采纳率:35%
帮助的人:857万
展开全部
化为2进制是整数部分除以二知道变为1
小数部分乘以2直到变为1
,符号位0表示正1表示负
正数:原码=补码
负数:
原码
=
正数部分(去掉负号)的二进制值,且符号位(最左边的比特位)为1
反码
=
正数部分(去掉负号)的二进制值,按位取反
补码
=
反码
+
1
小数点依旧用点
定点数
所谓定点数是指小数点位置固定不变的数。在计算机中,通常用定点数来表示整数与纯小数,分别称为定点整数与定点小数。
定点整数:一个数的最高二进制位是数符位,用以表示数的符号;而小数点的位置默认为在最低(即最右边)的二进制位的后面,但小数点不单独占一个二进制位,如下所示:
0
1001010010001010001
数符位
数值位
小数位
因此,在一个定点整数中,数符位右边的所有二进制位数表示的是一个整数值。
定点小数:一个数的最高二进制位是数符位,用来表示数的符号;而小数点的位置默认为在数符位后面,不单独占一个二进制位,如图所示:
0
1001010010001010001
数符位|小数位
数值位
因此,在一个定点小数中,数符位右边的所有二进制位数表示的是一个纯小数。
2.浮点数
在计算机中,定点数通常只用于表示整数或纯小数。而对于既有整数部分又有小数部分的数,由于其小数点的位置不固定,一般用浮点数表示。
在计算机中所说的浮点数就是指小数点位置不固定的数。一般地,一个既有整数部分又有小数部分的十进制数d可以表示成如下形式:
d=r*10n
其中r为一个纯小数,n为一个整数。
如一个十进制数123.456可以表示成:0.123456*103,十进制小数0.00123456可以表示成0.123456*10-2。纯小数r的小数点后第一位一般为非零数字。
同样,对于既有整数部分又有小数部分的二进制数口也可以表示成如下形式:
d=r*2n
其中r为一个二进制定点小数,称为d的尾数;n为一个二进制定点整数,称为d的阶码,它反映了二进制数d的小数点的实际位置。为了使有限的二进制位数能表示出最多的数字位数,定点小数r的小数点后的第一位(即符号位的后面一位)一般为非零数字(即为“1”)。
在计算机中,通常用一串连续的二进制位来存放二进制浮点数,它的一般结构如图所示:
阶符
n
数符
r
|
阶码部分
|
小数位
尾数部分
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
满意请采纳哟
推荐于2017-10-13 · 知道合伙人教育行家
满意请采纳哟
知道合伙人教育行家
采纳数:30594 获赞数:373509
2010年本科毕业于安徽工业大学高分子材料与工程专业,并取得工科学士学位证书。

向TA提问 私信TA
展开全部
一、十进制分数原码和补码可以先将分子和分母分别表示成二进制数,然后计算出二进制小数,再按下面第三步的方法将求出小数的原码和补码形式。
37/64=100101B/2^6=0.100101B
-51/128=110011B/2^7=0.0110011B

二、十进制小数的原码和补码也应该先将其转换成二进制小数,再按下面第三步的方法将求出小数的原码和补码形式。
0.375=0.011B
0.5625=0.1001B

三、将二进制小数对应的原码和补码求出
[37/64]原码=[0.100101B]原码=00100101B
[-51/128]原码=[0.0110011B]原码=10110011B
[0.375]原码=[0.011B]原码=00110000B
[0.5625]原码=[0.1001B]原码=01001000B

[37/64]补码=[0.100101B]补码=00100101B
[-51/128]补码=[0.0110011B]补码=11001101B
[0.375]补码=[0.011B]补码=00110000B
[0.5625]补码=[0.1001B]补码=01001000B
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友37aada8d7
2007-09-12 · TA获得超过1964个赞
知道大有可为答主
回答量:1535
采纳率:40%
帮助的人:1597万
展开全部
计算机中的数据表示
计算机中的数据表示
1.符号数字化 : 用0表示正,用1表示负,则称为符号数字化.
2.真值 : 用正负号脚绝对值表示数值,这种形式称为真值.如 +101011,-111100..............
3.机器数 : 符号数字化以后的数称为机器数.如 0101011,1100101............

原码+反码+补码

在这里就不去说简单的概念了,把具体的给出来.
1.正数
[X]原 = 0.101011
正数的补码和正数的原码相同
有: [X]补 = 0.101011
正数的反码与正数的原码相同
有: [X]反 = 0.101011
2.负数
[X]原 = 1.101011
取反加1得,[X]补 = 1.1010101
符号位不变,其余位逐位变反,得: [X]反 = 1.010100
(在计算机中,我们用一个字节表示一个数,一个字节有8位,超过8位就进1,在内存中的情况为:
1 0000 0000
由于进位,1将被丢弃.)

****************补码*****************
已知一个负数的补码,将其转换为十进制数,步骤为:
1.先对各位取反
2.将其转换为十进制数
3.加上负号,再减去1

如: 11111010,最高位为1是负数,先对各位取反得
00000101,再转换为十进制数得 5,加上负号得 -5,
再减去1得 -6 ,那么-6就是 11111010的十进制表示形式.
*****************************************
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式