进制的计算

采用这样的循环:

k为原始十进制数;

n为进制;

a[index]为记录数组,0为起始低位,index为高位;

i为数组下标。

while(k>0)

{

a[i++]= k%n;//取余的过程

k=k/n;//取商的过程

}

进制计算机科学的基础,计算机内部使用二进制系统来表示数据和执行运算[^1]。 ### 二进制计算原理 二进制是一种以2为基数的记数法,只使用0和1两个数字。它遵循逢二进一的原则,与十进制的逢十进一类似。在二进制中,每个数位代表2的相应次幂。例如,二进制数101,从右往左,第一位的1代表$2^0$,第二位的0代表$2^1$,第三位的1代表$2^2$ ,其对应的十进制值为$1\times2^2 + 0\times2^1 + 1\times2^0 = 5$。 ### 二进制计算方法及示例 #### 加法 二进制加法遵循以下规则: - 0 + 0 = 0 - 0 + 1 = 1 - 1 + 0 = 1 - 1 + 1 = 10(向前进一位) 示例:计算进制数101和110的和 ```plaintext 101 + 110 ------ 1011 ``` 从右往左逐位相加,第一位1 + 0 = 1;第二位0 + 1 = 1;第三位1 + 1 = 10,向前进一位,得到结果1011。 #### 减法 二进制减法规则: - 0 - 0 = 0 - 1 - 0 = 1 - 1 - 1 = 0 - 0 - 1 = 1(需要向高位借位) 示例:计算进制数110减去101 ```plaintext 110 - 101 ------ 01 ``` 从右往左逐位相减,第一位0 - 1,向高位借位得1;第二位被借位后变为00 - 0 = 0;第三位1 - 1 = 0,结果为01。 #### 乘法 二进制乘法和十进制乘法类似,用乘数的每一位去乘被乘数,然后将结果相加。规则如下: - 0 × 0 = 0 - 0 × 1 = 0 - 1 × 0 = 0 - 1 × 1 = 1 示例:计算进制数101和11的乘积 ```plaintext 101 × 11 ------ 101 +1010 ------ 1111 ``` 先用乘数的最低位1去乘被乘数101,得101;再用乘数的高位1去乘被乘数101,得1010(相当于左移一位),最后将两个结果相加得1111。 #### 除法 二进制除法和十进制除法类似,是乘法和减法的结合。 示例:计算进制数110除以11 ```plaintext 10 ______ 11 | 110 - 11 ----- 00 ``` 先用被除数的前两位11除以除数11,商为1;然后将余数0和下一位0组成新的数00,继续除以11,商为0,最终结果为10
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值