有问题就有答案
Q1:原码0,011000.11反码0,011000.11补码和十进制数是多少
原码反码最高位(符号位)为0,是正数,真值= +11000.11b正数的原码、反码、补码相同,补码亦是 0011000.11b0011000.11b =11000b +11b/2^2 =24d +3d/4d =24.75d
Q2:原码是怎么算
原码:在数值前直接加一符号位的表示法。例如: 符号位=数值位[+7]原=0 0000111 B[-7]原=1 0000111 B注意:a. 数0的原码有两种形式:[+0]原=00000000B [-0]原=10000000Bb. 8位二进制原码的表示范围:-127~+127编码方式原码是有符号数的最简单的编码方式,便于输入输出,但作为代码加减运算时较为复杂。一个字长为n的机器数能表示不同的数字的个数是固定的2^n个,n=8时2^n=256;用来表示有符号数,数的范围就是 -2^(n-1)-1 ~ 2^(n-1)-1,n=8时,这个范围就是 -127 ~ +127。但是在不需要考虑数的正负时,就不需要用一位来表示符号位,n位机器数全部用来表示是数值,这时表示数的范围就是0~2^n-1,n=8时这个范围就是0~255。
Q3:二进制补码怎么计算的
1.正数的补码表示:正数的补码=原码负数的补码={原码符号位不变} {值位逐位反转,1}或={原码符号位不变} {值位从右边第一个1及其右边的0保持不变,以十进制整数97和-97为例:97原码=0110_0001b 97补码=0110_0001b-97原码=1110_0001b-97补码=110方法有很多,这里我们提供一个比较方便的写作方法。以0.64为例,原代码为0.1010_0011_1101_0111b。运算方法:从0.64 * 2^n得到x,其中n是预先保留的小数位数(即认为n是小数后的小数并不重要),x是乘法结果的整数部分。这种情况下,如果取n为16,X=41943d=1010_0011_1101_0111b,即0.64的二进制表示左移16位后为1010_0011_1101_0111b,因此可以认为0.64d=0.1010 _ 0011 _ 111b。实验中取n为12,X=2621d=1010_0011_1101b,即0.64d=0.1010_0011_1101b,忽略12位小数后的位数,计算结果相同。3.纯小数补码:纯小数补码的规则是:获取小数源代码后,小数点第一位数字表示符号,从最低(右)位开始,找到第一个“1”并写入,然后“见1写0,见0写1”。以-0.64为例,其原码为1.1010_0011_1101_0111b,补码为1.0101_1100_0010_1001b。当然,在verilog这样的硬件语言中,二进制表示是不可能带小数点的(其实我也不知道小数点在哪里带)。4.一般这种情况下先转换成整数运算比较方便,比如-97.64,查询后原码是1110_0001.1010_0011_1101_0111b。计算过程为-97.64 * 2 16=-6398935=1110 _ 0011b。它的补码是1001_1110_0101_1100_0010_1001b。这里采用负补码={原代码符号位不变} {数字位逐位反转,然后是1}。方法五。原始代码通过补码获得:方法3360,符号位不移动,幅度值反转1或符号位不移动。振幅值-1被-97.64的补码=1001 _ 1110()反转。)0101 _ 1100 _ 0010 _ 1001b反相为=1110 _ 0001()。)1010 _ 0011 _ 1101 _ 0110 B1=1110 _ 010。-5的补码=4"b1011=6"b11_1011ps。原始代码的扩展是将符号位带到前面,然后是0。-5的原码=4" b" 1101=6" b10 _ 0101在扩展位的上部,然后求其补码得到6"b11_1011,与上述一致。扩展数据:在计算机中表示符号数有三种方式,即原码、反码和补码。这三种表示都有两个部分:符号位和数字位。符号位用0表示“正”,用1表示“负”,而数字位则不同。在计算机系统中,数值总是以二进制表示和存储。原因是使用补码可以统一处理符号位和数值字段。同时,加减法可以统一处理。另外,补码和原码相互转换,运算过程相同,不需要额外的硬件电路。
Q4:二进制:关于10000000如何表示-128的问题
是的,有符号数的最高位是符号位。因此,计算机中的0和-0代码是不同的。计算机中的负数是用补数表示的,所以减法可以用加法器来完成。10000000那1表示负数,但是整数值是-128,这是一个特殊的规律。只有这一个值是特殊的。你不能用普通的减一来颠倒判断。这是为了给带符号的数字增加一个有用的数据点,并将描述性数字范围从-127-127扩展到-128-127。只有-0和0组合成0。当然,我们必须问如何计算-128。需要加高一点考虑。考虑好了,就把那个处理掉。现代计算机中,负数一般用补码表示:最高位是符号位,其余位是数字的原码,倒1,100万;最高位是1,表示负数;剩余的比特被反转111,111,然后1,得到原始码1,000,000,128;整数是-128,它是负整数的补码,它对应的正二进制表示意味着所有的位都是反转的。同一个数在不同的补码表示中是不同的。例如,在8位二进制中-15的补码是11110001,但在16位二进制补码表示中它是1111111111001。以下内容由8位二进制表示。扩展数据和十进制(1)二进制到十进制:“按重量展开总和”[示例]:规则:一位数的位数为0,十位数的位数为1,其依次增加,而十位数中的位数是-1,百分位中的位数是-2,依次递减。注意:不是任何十进制分数都可以用有限的位数转换成二进制数。(2)十进制到二进制,十进制整数到二进制数:“除以2求余数,逆序排列”(2求余数除外)[示例]: 89 2.144 2 .022 2 .011 2 .15.顺序排列”(多2整数法)[示例]:(0.625)10=(0.101)20.625 x2=1.25.10.25x2=0.50.00.50x2=1.00.1.十进制负数转换为二进制数:“先取正数的二进制数。而八进制二进制数转换为八进制数:从小数点开始,整数部分向左,小数部分向右,每3位用一个八进制数表示。如果数字少于3位数,则3位数应加上“0”以获得八进制数。将八进制数转换为二进制数:将每个八进制数转换为3位二进制数,得到二进制数。八进制数和十进制数的对应关系如下:000-0 | 004-4 | 010=8001-1 | 005-5 | 011=9002-2 | 006-6 | 012=10003-3 | 007-7 |。03=11[示例]:将八进制37.416转换为二进制数:37.4 1 6011 111.100 001 110,即:(37.416)8=(11111.1000111)2[示例]:转换为二进制10110.0011。即4: (10110.0011)2=(26.14)8和十六进制二进制数转换为十六进制数:二进制数转换为十六进制数时,只需从小数点开始,将每四位二进制数向左或向右划分(如果数少于四位,可以用0补充),然后写出每组二进制数对应的十六进制数。将十六进制数转换为二进制数:将每个十六进制数转换为4位二进制数,得到二进制数。十六进制数字和二进制数字的对应关系如下:0000-0 0100-4 1000-8 1100-c 0001-1 0101-5 1001-9 1101-d 0010-2 0110-6 1010-a 1110-e 0011-3 0111-。1111-F[示例]:将十六进制数5DF.9转换为二进制:5df.90101 1101 1111.1001,即:(5df . 9)16=(10110111111.1001)2 {十六进制怎么会有小数点}[示例]: will。
Q5:计算机中-1的补码是多少
计算机中-1的补码是1,11111111、通常把一个数的最高为定义为符号位,用“0”表示正,用“1”表示负。因为【-1】为负,所以【-1】的原码=100000012、反码:对于负数,数符位为1,数符位不变,将数值位诸位取反为反码。【-1】的反码=111111103、补码:对于负数,数符位为1,数符位不变,将反码+1=补码。【-1】的补码=11111111正数正整数的补码是其二进制表示,与原码相同。例:+9的补码是00001001。(备注:这个+9的补码是用8位2进制来表示的,补码表示方式很多,还有16位二进制补码表示形式,以及32位二进制补码表示形式,64位进制补码表示形式等。每一种补码表示形式都只能表示有限的数字。)以上内容参考:百度百科-补码
Q6:十进制是怎么样算
十进制数的运算遵循:加法时:“逢十进一”;减法时:“借一当十”。 十进制数中,数码的位置不同,所表示的值就不相同。式中,每个对应的数码有一个系数1000,100,10,1与之相对应,这个系数就叫做权或位权。十进制数的位权一般表示为:10n-1 式中,10为十进制的进位基数;10的i次为第i位的权;n表示相对于小数点的位置,取整数;当n位于小数点的左边时,依次取n=1、2、3……n。位于小数点的右边时,依次取n=-1、-2、-3……因此,634.27可以写为: 634.27=6×102+3×101+4×100+2×10-1+7×10-2 十进制是以10为基础的数字系统。而如果用不多于10个号码,代表一切数值,不论多大,以进1位表示10倍,进二位代表100倍,依此类推的十进制数字系统,则称为十进位制。十进制数是日常生活中使用最广的计数制。组成十进制数的符号有0,1,2,3,4,5,6,7,8,9等共十个符号,我们称这些符号为数码。 在十进制中,每一位有0~9共十个数码,所以计数的基数为10。超过9就必须用多位数来表示。 参考资料360个人书馆.360个人书馆[引用时间2017-12-29]