北京良医帮刘龙涛简介:二进制除法
来源:百度文库 编辑:中财网 时间:2024/04/27 19:02:43
比如在十进制中,从十位借一位到个位,用在个位减的时候,就是10+个位上的数,二进制,从十位借一位到个位,用在个位减的时候,就是2+个位上的数
比如说:101-11,个位够减,为0,十位不够,从百位上借1,所以十位就为2,被减数十位-减数十位,为2-1=1,所以结果为10
二进制除法中,除到最后有余数怎么办? 如果是定点数(整数),那就舍掉了。如果是浮点数,则继续加位运算,直到精度达到后舍掉。
比如说:101-11,个位够减,为0,十位不够,从百位上借1,所以十位就为2,被减数十位-减数十位,为2-1=1,所以结果为10
二进制除法中,除到最后有余数怎么办? 如果是定点数(整数),那就舍掉了。如果是浮点数,则继续加位运算,直到精度达到后舍掉。
二进制的乘法远比十进制简单,比如乘数是1011,只需将将被乘数分别左移3位、1位,移动后补入0,并将这三个数(被乘数左移3位的、被乘数左移1位的及未移位的被乘数)在累加器中相加,所得总和就是积,根据需要积可再转化为十进制。
除法与乘法类似,只不过将左移改为右移,加改成减。实际上减也是通过取补码后再加
除法一般不好优化,直接按照笔算步骤来算就可以了:
1、根据被除数(余数)和除数的大小来上商;
2、被除数(余数)低位补0,再减去右移后的除数,也可以改为左移余数,减去除数,这样可以确保参与运算的寄存器具有相同的位数;
3、商写到寄存器的最低位,然后商左移1位。