有关C语言啊~~

来源:百度知道 编辑:UC知道 时间:2024/07/09 07:02:51
十进制和二进制怎么换算啊·~~告诉我一下方法,最好有个例子吧~~~
还有补码~~搞不懂~~~
谢谢啊

其实很简单,用十进制的数除以2取余数,从后往前写。如369:除以2余1,再除以2余0,再除以2余0,再除以2余0,再除以2余0,再除以2余1,再除以2余0,再除以2余0,再除以2余1,则转换成二进制数为100100001 再比如
用67做例子说明。
二进制换十进制:采用科学计数法,按权展开.
1000011——
1000000~2^6
10~2^1
1~2^0
2^6+2^1+2^0=64+2+1=67

十进制换二进制:采用短除2
2|67
2|33...1
2|16...1
2|8...0
2|4...0
2|2...0
2|1...0
2|0...1

从下往上数,答案:1000011

至于补码嘛通俗点说,补码是在原码的基础上,为简化运算而发展出来的另一种表示带符号二进制数的方法,具体方法是:
(1)确定表示数据的二进制数,通常是8位或16位;
(2)如果被表示的数据是非负的,则用原码表示;
(3)如果被表示的数据是负数,则把该数的绝对值表示成8位或16位二进制数,然后对每一位取反,即原位上是0就改写成1,原位上是1则改写成0,再吧取反后的结果加1。
===========负数取反+1

10进制转2进制 用短除法

十进制和二进制互换,简单的可以用8421法,例如10就是8+2,转换后就是1010,以此类推。

书上都有吧