南宁中草药批发市场:十进制数89转化为二进制数怎么做?

来源:百度文库 编辑:杭州交通信息网 时间:2024/04/28 15:08:27

89÷2=44........1
44÷2=22........0
22÷2=11........0
11÷2=5.........1
5÷2=2..........1
2÷2=1..........0
1÷2=0..........1
把余数反序即得1011001

就这么简单嘛!

89/2 =44余1
44/2=22 0
22/2=11 0
11/2=5 1
5/2=2 1
2/2=1 0
1/2=0 1
结果就是竖着写下来1001101
实际上就是 1*2的6次方+0*2的5次方+0*2的4次方+1*2的3次方+1*2的2次方+0*的2的1次方+1*2的0次方

用89除以2,写出余数,直到除不开,然后从下往上顺序写出就是二进制数.
1011001

2|89
2|44…… 1
2|22…… 0
2|11…… 0
2|5…… 1
2|2…… 1
2|1…… 0
0…… 1

89一直除以2,保留余数,然后从后往回写

给你举个10的例子吧
10除2=5 余0
5除2=2 余1
2除2=1 余0
1除2=0 余1
那么二进制就是 1010

bool DtoB(int i)
{
printf("%d",i%2);
if(i<=1) return true;
else DtoB(i/2);
return true;
}

void main()
{
DtoB(89);
}