在計算機內,減法是怎麼做的,電腦是怎麼算加減法的?

時間 2022-03-30 15:55:23

1樓:匿名使用者

計算機只會做加法運算,其它運算是通過相應演算法用加法來完成的。機內的數都是用補碼形式表示的,比如5-3,這兩個數是5和(-3)的補碼,即5-3=5+(-3)。

計算機內只有加法硬體電路,叫加法器。當執行減法時,減法指令的操作碼部分,經過操作碼譯碼器譯碼後,會產生減法操作所需的一系列微操作訊號,以控制加法電路按相應的邏輯順序動作。具體學習一下計算機原理。

2樓:匿名使用者

計算機的cpu裡有相應的高頻數位電路來算加減法。

電路中可以只有一個加法器,這樣就根據是加法和減法來決定是否要對第二個運算元求反,然後在把第一個運算元和經過求反的第二個運算元送給加法電路。

電路中有可以既有加法器也有減法器,這樣就可以直接把加法運算匯入加法器,把減法運算匯入減法器。

第一種方法節省晶片面積,但是頻率要比同樣工藝下的第二種方法低。

3樓:嘎喇腕子

5-3不是5加上3的補碼,是5加上-3的補碼

0000 0101+1111 1101=0000 0010

4樓:呂雪驥

不是3的補碼 而是5的補碼加上-3的補碼

5樓:焉湉湉

我們用的計算機是存放補碼的

6樓:匿名使用者

你可以打**問一下中科院的院士啊~······

7樓:匿名使用者

支援樓上的,就是這個意思啦。。。

電腦是怎麼算加減法的?

8樓:一週新知

在電腦內部,所有的運算都是加法。

首先,計算機把數轉換成二進位制(全是0、1**,轉換都是按現成的程式進行),

如果計算加法,則把兩數按位相加。

如果是計算減法,則把減數取補碼(就是按位把0換成1,取後八位為 00000010 ,13=00001101 ,取13的補碼為 11110010 ,加1 後為 11110011 ,相加有 00001111+11110011=100000010 ,轉換都是按現成的程式進行)

拓展資料

二進位制是計算技術中廣泛採用的一種 數制。 二進位制資料是用0和1兩個 數碼來表示的數。它的基數為2,進位規則是「逢二進一」,借位規則是「借一當二」,由18世紀德國數理哲學大師 萊布尼茲發現。

當前的 計算機系統使用的基本上是 二進位制系統,資料在 計算機中主要是以補碼的形式儲存的。計算機中的二進位制則是一個非常微小的開關,用「開」來表示1,「關」來表示0。

9樓:匿名使用者

首先要把計算的數轉成二進位制數,再進行加減法,計算完以後再轉到十進位制。建議你看一下《計算機原理》這本書。

在計算機內,減法是怎麼做的?

10樓:旅元斐肥庚

計算機的cpu裡有相應的高頻數位電路來算加減法。

電路中可以只有一個加法器,這樣就根據是加法和減法來決定是否要對第二個運算元求反,然後在把第一個運算元和經過求反的第二個運算元送給加法電路。

電路中有可以既有加法器也有減法器,這樣就可以直接把加法運算匯入加法器,把減法運算匯入減法器。

第一種方法節省晶片面積,但是頻率要比同樣工藝下的第二種方法低。

計算機是如何實現減法模擬加法的啊??

11樓:

把減法當負數加,

例如3-1=2

變成3+(-1)=2

3表示為八位二進位制是00000011

-1是11111111

兩個二進位制碼相加得100000010,捨去最前面的1得10,即2以上過程在8位計算機中有效,在幾位計算機中,就把數字轉換成相應位數的二進位制碼,如一般電腦都是32位的,就把3轉換成000000000000000000000000000011

1:111111111111111111111111111111

12樓:做而論道

一般來說,計算機,只有加法器,沒有減法器。

《計算機是如何實現減法模擬加法的 》???

樓主說的計算機,是特製的嗎?

13樓:徐霄沛

最終都是換成補碼後按照加計算的。

14樓:id雞蛋炒韭菜

a-b=a+(-b)=a的原碼+(-b)的補碼

關於加法和減法在計算機中的原理實現? 比如 3+2 和 3-2 這兩個計算式在計算機內部是怎麼處理的?

15樓:

加法就是加法,計算機裡面只做加法。所以加法就是直接的加法。

3+2 = (11)二進位制+ (10)二進位制= (100)二進位制 = 5

減法比較複雜,減法可以看成負數的加法。也就是加上一個數的補碼。

例如3 - 2 = 3 + (-2)

而要得到-2,就要求2的補碼。

假設你的字長是4位,那 2 = 0010。2的補碼就是2的反碼+1, 反碼(2)=1101,然後再加1,就是1110 (=-2).

那3 = 0011, 3+ (-2) = 0011 + 1101 = (1)0001。 括號裡面那個1是進位的1,因為字長只有4位,所以直接捨去進位的1,這樣剩下來的就是0001 = 1也就是3-2的結果了。

所以當然是減法比較慢,因為減法需要轉換補碼。補碼轉換大概利用邏輯計算的話可以一步完成。所以大概就是減法比加法多一次邏輯運算。

16樓:匿名使用者

3在計算機中用二進位制表示為0011

2在計算機中用二進位制表示為0010

所以3+2=0011+0010=0101=5(計算機中加法計算原理: 0+0=0; 0+1=1; 1+1=0進1)

減法在計算機中用加補碼的方法來解決。

2的補碼為它的反碼1101加1等於1110所以3-2=0011+1110 = 10001 在本例中第五位為溢位位不予考慮,所以結果為0001=1

17樓:

計算機內部沒有減法的。。全部都是加法。減一個數=加一個數的補。。。

計算機內部計算全部都是補碼。。所以3-2可以看成3+(-2)。。。正數的補碼是它的本身。。

所以不要換算。負數要換算下,有個部件。內部也不復雜。。

其實步驟應該是一樣的。。都要換成補碼。。只不過正數轉換方便一點。。手工算。感覺少了步驟。。。

偶感覺就這麼多。。錯了別罵我。。嘎嘎。。你怎麼玩這個啦。

18樓:匿名使用者

3在計算機中表示為0 0 11

2在計算機中表示為0 0 10

所以3+2= 0 0 11 + 0 0 1 0 = 0 1 0 1=5

(計算機中加法計算原理: 0 + 0 =0; 0 + 1 =1; 1 + 1 =0進1)

3-2= 0 0 11 - 0 0 1 0 = 0 0 0 1=1(計算機中減法計算原理: 0 - 0 =0; 1 - 0 =1; 1 - 1 =0;0-1=1得向前一位借位)

19樓:夜遊神小翠

這個是數字邏輯的知識吧。

3轉化為二進位制是11, 2轉換為二進位制是10,正數的補碼就是它本身。

計算3+2,就用11和10相加,用豎式計算,逢二進一(仿照十進位制),算出101,十進位制就是5.

而3-2應當看做3+(-2),負數的補碼就是原碼取反加一,10取反就是01,再加1變為10,由於是負數,要在前面加上一個符號位,1表示負號。所以用豎式計算時,3表示為011(0表示正),-2表示為110。兩個數相加,也是逢二進一,得到1001,多出的第一位1捨去。

第一個0是正號,然後01就是十進位制的1.

上面所講的是人工演算法。在計算機中是用譯碼器完成的。可以參看關於數字邏輯的相關書籍。

計算機專業畢業設計該怎麼做,計算機專業如何做好畢業設計

計算機專業做好畢業設計 做一個系統,首先選擇新穎的設計題目。寫需求分析要完善。用系統實現逐一的系統功能。介面一定要美觀。賦予一定數量的測試用例 答辯時要思路清晰,邏輯性強。知識擴充套件 計算機專業的學生,不管是學硬體還是軟體,都要有實質的東西來支撐畢業設計 內容,這樣才會得到老師的賞識,最後才有可能...

如何用計算機(電腦)計算,現代計算機是如何計算圓周率的?

軟體外包介紹 const arrsize 1010,dispcnt 1000 定義陣列大小,顯示位數 char x arrsize z arrsize x 0 x 1 x 2 x 3 x 4 x arrsize 1 int a 1,b 3,c,d,run 1,cnt 0 memset x,0,arr...

計算機專業在未來的發展是怎樣的,計算機專業未來發展的趨勢如何??

武漢新華電腦學校 現在計算機行業還是很有前景的,作為目前熱門技術之一,計算機專業對人才的需求量還是很大的,無論是就業還是薪資待遇都是很可觀的。 山西新華電腦學校 隨著資訊時代的到來,it行業急速發展,網路經濟的迅猛佔領市場,學電腦技術是非常不錯的選擇,相對其他技能來說,學電腦技術,就業前景好,工作體...