对于人类来说,加减乘除很简单,因为我们有智慧,也称之为意识。
而对于计算机来说,它没有智慧,只有最逻辑运算,在做某些事的时候会看起来很有智慧,但是实际是没有的,它的所有一切都是人设计好的,都是通过最初级的逻辑运算得出来的。
计算机的最初级运算只有与或非3种,而体现在CPU中的计算方法也就只有加法这一种(没把移位算进去),所以它的所有的加减乘除都是通过加法算出来的。
那么它是怎么样把减法转换成加法的呢?又是如何把乘法转换成加法的?如何将除法转换成减法的呢?
减法的实现是通过加上被减数的补码(即原码的反码加1)来实现,比如8-6,实现方法是8+(-6),转换成二进制就是0000 1000+1111 1001=0000 0010。
乘法就简单一点,乘数通过被乘数的次数相加起来就OK了,比如5X3,计算方法如下:0000 0101+0000 0101+0000 0101=0000 1010+0000 0101=0000 1111。
而除法呢?除法是怎么实现的?