- 北境漫步
-
一、小数部分的原码和补码可以表示为两个复数的分子和分母,然后计算二进制小数系统,根据下面三步的方法就会找出小数源代码和补码的百位形式。
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[原码]是不正确的)。
- 再也不做站长了
-
一、十进制分数原码和补码可以先将分子和分母分别表示成二进制数,然后计算出二进制小数,再按下面第三步的方法将求出小数的原码和补码形式。
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
- gitcloud
-
化为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
|
阶码部分
|
小数位
尾数部分
- wpBeta
-
一、十进制分数原码和补码可以先将分子和分母分别表示成二进制数,然后计算出二进制小数,再按下面第三步的方法将求出小数的原码和补码形式。
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.符号数字化 : 用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的十进制表示形式.
*****************************************
- FinCloud
-
小数和分数的补码,你看看图片中的例题。
不懂可追问。