十进制数转换为二进制数时,由于整数和小数的转换方法不同,所以先将十进制数的整数部分和小数部分分别转换后,再加以合并。
十进制整数转换为二进制整数十进制整数转换为二进制整数采用"除2取余,逆序排列"法。
具体做法是:用2整除十进制整数,可以得到一个商和余数;再用2去除商,又会得到一个商和余数,如此进行,直到商为小于1时为止,然后把先得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来。
十进制整数转二进制如:255=(11111111)B255/2=127=====余1127/2=63======余163/2=31=======余131/2=15=======余115/2=7========余17/2=3=========余13/2=1=========余11/2=0=========余1789=1100010101(B)789/2=394 余1 第10位394/2=197 余0 第9位197/2=98 余1 第8位98/2=49 余0 第7位49/2=24 余1 第6位24/2=12 余0 第5位12/2=6 余0 第4位6/2=3 余0 第3位3/2=1 余1 第2位1/2=0 余1 第1位原理:众所周知,二进制的基数为2,我们十进制化二进制时所除的2就是它的基数。
谈到它的原理,就不得不说说关于位权的概念。
某进制计数制中各位数字符号所表示的数值表示该数字符号值乘以一个与数字符号有关的常数,该常数称为 “位权 ” 。
位权的大小是以基数为底,数字符号所处的位置的序号为指数的整数次幂。
十进制数的百位、十位、个位、十分位的权分别是10的2次方、10的1次方、10的0次方,10的-1次方。
二进制数就是2的n次幂。
按权展开求和正是非十进制化十进制的方法。
下面我们开讲原理,举个十进制整数转换为二进制整数的例子,假设十进制整数A化得的二进制数为edcba 的形式,那么用上面的方法按权展开, 得A=a(2^0)+b(2^1)+c(2^2)+d(2^3)+e(2^4) (后面的和不正是化十进制的过程吗)假设该数未转化为二进制,除以基数2得A/2=a(2^0)/2+b(2^1)/2+c(2^2)/2+d(2^3)/2+e(2^4)/2注意:a除不开二,余下了!其他的绝对能除开,因为他们都包含2,而a乘的是1,他本身绝对不包含因数2,只能余下。
商得:b(2^0)+c(2^1)+d(2^2)+e(2^3),再除以基数2余下了b,以此类推。
当这个数不能再被2除时,先余掉的a位数在原数低,而后来的余数数位高,所以要把所有的余数反过来写。
正好是edcba
十进制转二进制的方法欢迎分享,转载请注明来源:内存溢出
评论列表(0条)