當前位置:首頁 » 操作系統 » 二進制演算法加法

二進制演算法加法

發布時間: 2023-09-18 01:33:28

1. 二進制加減法運演算法

減法運算其實是可以由加法運算替代的,我們上面已經介紹過了無符號和補碼的非,其實很多CPU是沒有減法運算器的,它們都是將減數進行逆運算以後送入加法器,然後進行加法運算,這樣得出來的結果就是減法運算最終的結果。

比如我們考慮一種簡單的情況,當w = 4時的無符號減法運算,對於 5 - 4這個減法運算來說,我們可以由 5 + 4-1(其中4-1是4的逆元的意思,不是1/4的意思)來替代這個減法運算。

為了更加直觀,LZ帶各位來算一下,首先4的逆元根據上面的公式可以得到為 4-1= 24- 4 = 12 。那麼我們現在需要對5和12進行加法運算,它們的位表示分別為 0101和1100,結果為10001,也就是十進制17的位表示。不過由於我們的w = 4,因此截斷之後結果為0001,也就是十進制的1。最終可以得到 5 - 4 = 1。

對於5 - 4來說,是考慮的結果為正的情況。或許有的猿友會對結果為負或者說是無符號數溢出的情況下有疑問,因此LZ這里對這種情況也做一個簡單的介紹。我們考慮一個簡單的計算 0 - 1,我們可以得到1-1= 24- 1 = 15。此時對0和15進行加法運算,他們的位表示分別為0000和1111,結果為1111。

看到這里估計有的猿友會奇怪了,這怎麼回事,0 - 1 = 15?

當然不是,這個結果其實是正確的。考慮使用補碼編碼來解析1111這個位表示,它代表的值就是-1。15是1111這個位表示在無符號編碼情況下的解析結果。

因此LZ這里也給出一個公式,就是對於兩個整數x和y來說,x - y = x + y-1。這里需要特別說明的是,這個公式代表的意義是位表示,而不是實際的數值。

2. 二進制加減法運演算法則是什麼

二進制加減法運演算法則是:0+0=0,0+1=1 ,1+0=1, 1+1=10(向高位進位);二進制的減法:0-0=0,10-1=1(向高位借位) 1-0=1,1-1=0 (模二加運算或異或運算) 。二進制的乘法:0 * 0 = 00 * 1 = 0,1 * 0 = 0,1 * 1 = 1 二進制的除法:0÷0 = 0,0÷1 = 0,1÷0 = 0 (無意義),1÷1 = 1 。

邏輯運算二進制的或運算:遇1得1二進制的與運算:遇0得0二進制的非運算:各位取反。0、1是基本算符。因為它只使用0、1兩個數字元號,非常簡單方便,易於用電子方式實現。從右往左第一位表示2的0次方,第二位表示2的1次方,第n位表示2的n-1次方。可以將1理解為有,0理解為無。

二進制的轉換:

十進制轉換為二進制的方法是:整數轉換,採用連續除基取余(短除法),逆序排列法,直至商為0。小數轉換:採用連續乘基(即2)取整,順序排列法。例(0.8125)10=(0.1101)。

具體的步驟:0.8125*2=1.625,0.625*2=1.25,0.25*2=0.5,0.5*2-=1.0,則正向取整得(0.1101)2。

以上內容參考:網路-二進制運演算法則

熱點內容
apache和php7 發布:2025-01-24 14:32:26 瀏覽:891
linuxio文件 發布:2025-01-24 13:40:21 瀏覽:437
在excel設密碼如何取消 發布:2025-01-24 13:38:54 瀏覽:482
電腦裝存儲時不能開機 發布:2025-01-24 13:38:52 瀏覽:284
2000人同時在線的小程序需要什麼伺服器 發布:2025-01-24 13:37:17 瀏覽:852
怎麼搭建linux伺服器配置 發布:2025-01-24 13:37:16 瀏覽:112
安卓版什麼時候上線麻將模式 發布:2025-01-24 13:32:48 瀏覽:965
演算法實驗分析 發布:2025-01-24 13:20:25 瀏覽:137
安卓和ios步數哪個准確 發布:2025-01-24 13:12:13 瀏覽:290
怎麼給電腦換配置 發布:2025-01-24 13:04:04 瀏覽:922