如何将小数转换为二进制?
十进制数是公众最熟悉的数字系统。它是基数10,只有10个符号-0、1、2、3、4、5、6、7、8和9。而二进制数是数字系统,网络和计算机专业人员最熟悉的数字系统。它是基数2,只有2个符号:0和1,这些数字可以分别用off和on表示。
从十进制转换为二进制数字系统
有多种直接或间接的方法可以将十进制数转换为二进制数。在间接方法中,您需要将十进制数字转换为其他数字系统(例如,八进制或十六进制),然后可以通过将每个数字转换为二进制数字来转换为二进制数字。
示例-将十进制数字125转换为二进制数字。
First convert it into octal or hexadecimal number, = (125)10= (1x82+7x81+5x80)10or (7x161+13x160)10Because base of octal and hexadecimal are 8 and 16 respectively. = (175)8or (7D)16Then convert it into binary number by converting each digit. = (001 111 101)2or (0111 1101)2= (01111101)2
但是,有两种直接方法可用于将十进制数转换为二进制数:用余数执行除以二的短除法(对于整数部分),将结果乘以二进行的短乘(对于小数部分)以及二乘和减乘幂。这些解释如下。
(a)余数除以2进行短除(整数部分)
这是一种简单的方法,涉及将要转换的数字相除。设十进制数为N,然后将此数字除以2,因为二进制数系统的基数为2。记下余数的值,该值将为0或1。再次将剩余的十进制数除以使其变为0,并记下每个数的余数步。然后从下到上(或以相反的顺序)写入余数,这将是给定十进制数的等效二进制数。这是转换整数十进制数的过程,算法如下。
以小数点为分红。
将该数字除以2(此处2是二进制的基数,因此除数)。
将余数存储在数组中(由于除数2的缘故,它将为0或1)。
重复上述两个步骤,直到数字大于零。
以相反的顺序打印数组(它将等于给定十进制数字的二进制数字)。
请注意,被除数(此处为给定的十进制数)是被除数,除数被除数中的除数(此处为二进制基数,即2),商(除以十进制的剩余数)是商的结果。师。
示例-将十进制数112转换为二进制数。
由于给定的数字是十进制整数,因此通过使用上述算法,将余数除以2。
现在,从下到上(以相反的顺序)写入余数,这将是1110000,它等于十进制整数112的等效二进制数。
但是上述方法无法转换混合的小数部分(带整数和小数部分的数字)十进制数。对于小数部分,该方法说明如下。
(b)对结果进行2的短乘运算(对于小数部分)
设小数部分为M,然后将该数字与2相乘,因为二进制数字系统的底数为2。记下整数部分的值,该值将为0或1。再次乘以剩余的小数部分直到其变为0,并记下每个每个步骤的结果的整数部分。然后写出整数部分的注释结果,该结果将是给定十进制数的等效分数二进制数。这是转换小数十进制数的过程,算法如下。
以十进制数为被乘数。
该数字乘以2(2是二进制的基数,因此在此乘数)。
将result的整数部分的值存储在数组中(由于乘数2,它将为0或1)。
重复上述两个步骤,直到数字变为零。
打印数组(将是给定十进制小数的等效小数二进制数)。
请注意,被乘数(此处为十进制小数)是要乘以乘数(此处为2的底数,即2)
示例-将十进制小数0.8125转换为二进制数。
由于给定数字是十进制小数,因此使用上述算法对整数部分进行2的短乘运算。
现在,写出这些结果的整数部分,它将是0.11010,即十进制小数的0.8125的等效二进制小数。
二乘减法
此方法使用十进制数的二进制数。您需要绘制2的幂表,然后取给定的十进制数,然后从最大可能的2幂中减去它,该幂不返回结果数负数。然后将1放入表格中具有此功效的那个框中。重复这些步骤,直到数字大于零。在所有其他空白框中输入0,然后输出等于给定十进制数的二进制数。对于整数部分,算法说明如下。
首先制作图表。
寻找2的最大力量。
移至下一个较低的2的幂。
减去每个合适的连续数字,并用1标记。
继续直到到达图表末尾。
写出二进制答案。
示例-将十进制数205转换为二进制数。
取2的幂表
Subtract given number 205 from maximum possible power of 2, = 205 - 128 = 77 Put 1 in box of 128 (= 27), then again subtract remaining number 77 from maximum possible power of 2, = 77 - 64 =13 Put 1 in box of 64 (= 26), then repeat above steps, = 13 - 8 =5 = 5 - 4 =1 = 1 - 1 =0 And put a 0 in remaining boxes. Therefore equivalent binary number will be 11001101 of given 205 decimal number.