前面我們講過【二進位,十進位(包含小數)相互轉換】。今天來看一下二進位加減法。
二進位的加減法和十進位的加減法是一樣的,只不過二進位每一位最高是兩位就進位或者借位。
1、加法十進位是十位往前一位進 1,而二進位是兩位往前進 1。如圖:
上圖中(1)是十進位加法。(2)是二進位加法。二進位加法中,1 + 1 = 10,往前進一位,本位還剩 0,或者你可以理解成十進位的 2,但二進位只有兩位,2 就往前進位,本位就剩 0。但這種理解對於部分人,可能不太好理解,上面兩種理解方式,哪種適合自己就用哪種。
(2)中右面的例子和左邊的和類似,只不過相加第二位的時候,1 + 1 = 10,在前一位又進過來一個 1,10 + 1 = 11,往前進 1,這時候本位剩 1。這地方要注意,不然很容易錯。
減法和加法相似,如果相減不夠,向前借一位。如下圖:
上圖中,100 - 1 你可以理解成 012 -1,為什麼呢,首先 0 - 1,相減不夠,向前借 1 位,第二位是 0,不夠再向前借位,第三位是 1,可以借給第二位,那第三位就是 0,第二位就是 2 位,再借 1 位給第一位,自己就只有 1 位,那第一位就是 2 位,也就可以理解成 012。
為什麼下一位向前借一位,借來的是 2 位。額,因為是二進位。十進位的數往前借一位,借來的是 10 位,比如:個位向十位借一位,借了一個十位,相當於借來了 10 個個位數。二進位也是同樣的。
這樣理解起來是不是容易些。
再看一個例子來鞏固一下。
二進位數 0100 0000 - 0000 1010
二進位的加減法,是不是也挺有意思的。趕緊 收藏 吧。
據說這個二維碼 點擊掃描 可以關注。
編程學習,資訊,技術分享PHP,PYTHON,GO,C/C++,LINUX,mysql,nginx,mongodb,redis,memcached,sphinx,android,ios
yanjoo
覺得作者好看的,請點擊 「在看"