X-Y=X+(-Y)=X+(11111111-Y)+1=X+~Y+1
什么?這個式子看不懂?智商問題,沒救了,此例以8位機為例
我再提醒一下:100000000-Y = -Y,這下懂了吧,負數用補碼表示
問題來了,為啥用補碼呢?那么多表示方式非要選他,我就規定負數用最高位1表示不就行了嘛?多么直觀
我舉個例子:10-2=8,我們用加法表示,二進制表示:00001010 + 10000010 = 10001100;看最高位是1,變成負數了,10-2明明是正的,
加法電路算出來是錯的,哎,沒辦法了,再設計一個減法電路吧,這下可以了,硬件工程師想打死你的心都有了
綜上,負數在計算機中用補碼表示,是為了簡化電路設計,節約時間節約成本
新聞熱點
疑難解答