基數:計數制中所用到的數字符號的個數,比如基數為r的計數制中,含0,1···r-1共r個數字符號,進製規律是「逢r進1」,稱為r進製。位權:在一種進製計數制表示的數中,用來表明不同數字上數值大小的乙個固定的常數。不同數字有不同的位權。
比如2進製:10001,第乙個1位上的位權為 2^4,第二個1位上的位權為 2^0。
並列表示法:比如 1001001.二轉十多項式表示法:按權展開:1 x 2^6 + 1 x 2^3 + 1 x 2^0.
10110.101 = 1x2^4 + 1x2^2 + 1x2^1 + 1x2^-1 + 1x2^-3 = 16 + 4 + 2 + 0.5 + 0.125.十轉二
整數轉換,除基數取餘法:
45 ÷ 2 = 22 ··· 1
22 ÷ 2 = 11 ··· 0
11 ÷ 2 = 5 ··· 1
5 ÷ 2 = 2 ··· 1
2 ÷ 2 = 1 ··· 0
1 ÷ 2 = 0 ··· 1
得到45的二進位制 1 0 1 1 0 1,注意,按照從下往上的順序。
小數轉換,乘二取整法:
0.6875
x 2
------
1.3750 ··· 1
x 2
------
0.7500 ··· 0
x 2
------
1.5000 ··· 1
x 2
------
1.0000 ··· 1
0.6875的二進位制 0.1011,注意,按照從上向下的順序。
有些時候,無法用有限位二進位制表示十進位制的小數,就要根據題目的精度要求,將最低位進一然後捨去。
此外,當乙個十進位制既有整數也有小數,只要把它們分開計算就好了。
八進位制,和十六進製制,模擬即可。需要注意的是:
計算機涉及數字的符號問題的時候,需要補充一位符號位,一般在二進位制數的最左邊,以1為負,以0為正。原碼:
小數:反碼:大於0的小數x,原碼為其本身;小於0的小數x,原碼為 1-x(相當於在小數點前面補1)。比如:0.1011 -> 0.1011;-0.1011 -> 1.1011
整數:大於0為它本身,或者在最高位前面補0;小於0在最高位的前面補1。比如:1101 -> 01101;-1101 -> 11101。
正數的反碼為它本身;負數的反碼:符號位不變,其他位按位取反。比如:0101111 -> 0101111;1101111 -> 1010000.補碼:整數的方法和小數的方法一樣,只不過小數多加了一步,將符號變成小數點前面的1.
正數與原碼,補碼一樣;負數為取反碼之後在最低位+1,有進製則進製;小數和整數一樣。反碼的計算
無論進行加還是減的運算,均可以通過加法實現。運算的時候,符號位一起參與計算。當符號位發生進製的時候,需要將進製加到運算結果的最低位,才能得到結果。
111
+ 111
-----
1 110
--->1
-----
111
補碼的計算與反碼的計算不一樣的地方在於,符號位發生進製的時候,將其丟棄。
111
+ 111
-----
1 110
->drop
-----
110
目的:為了滿足計算機使用二進位制,而同時滿足人們習慣十進位制的需求,通常用四位二進位制**對十進位制數字進行編碼。稱為 二-十進位制**。又稱bcd碼,具有二進位制的形式,又有十進位制的特點。
十進位制有 0-9 十個數字,就需要四位二進位制來表示,一共 2^4 = 16種表示,就會有多餘的六個二進位制表示。不管哪種方案都會有多餘的六個表示。
分為有權碼 和 無權碼,有權碼是用數字表示的名字,比如8421碼,8421就是它的權值。8421
權:8421;按照最簡單的二進位制進製來表示。
0 0000
1 0001
2 0010
3 0011
4 0100
------
5 0101
6 0110
7 0111
8 1000
9 1001
多餘的無效碼:1010 -> 1111
轉換樣例:(1)258 -> 0010 0101 1000 注意,十進位制的每一位都要用四位二進位制表示,並且不能捨去0!
(2)0001 0010 0000 1000 -> 1208 按權轉換,相加即可,比如 0010 = 8x0 + 4x0 + 2x1 + 1x0,就是bcd碼的名字。
如果在計算的過程中,出現了無效位,需要加6(0110)來得到正確的結果。2421
權:2421;求法:0-4和8421一致,從5開始(比如取到了k,5<=k<=9),計算 9-k 的值,得到 9-k 的2421表示(和8421一樣),然後按位取反。比如 求6的2421碼:9 - 6 = 3;3的2421碼 和 3的8421碼一樣 = 0011;按位取反 = 1100.
因此,2421碼是 對9的自補**。
0 0000
1 0001
2 0010
3 0011
4 0100
------
5 1011
6 1100
7 1101
8 1110
9 1111
多餘的無效碼:0101 -> 1010
轉換樣例:5421(1)258 -> 0010 1011 1110
(2)0010 0001 1110 1011 -> 2 1 8 5
0010 = 2x0 + 4x0 + 2x1 + 1x0;1110 = 2x1 + 4x1 + 2x1 + 1x0
權:5421;求法:前面五個 0-4 一樣,最後五個,最高位取1,其它三位搬下來。比如 求5:5找0,0的表示為 0000,那麼最高位置1,其它三位搬0000的後三位,形成 1000,就是5的5421碼了。
0 0000
1 0001
2 0010
3 0011
4 0100
------
5 1000
6 1001
7 1010
8 1011
9 1100
多餘的無效碼:0101 -> 0111(3個);1101 -> 1111(3個)
轉換樣例:無權碼:餘3碼(1)258 -> 0010 1000 1011
(2)0010 0001 1100 1011 -> 2 1 9 8
0010 = 5x0 + 4x0 + 2x1 + 1x0;1100 = 5x1 + 4x1 + 2x0 + 1x0
就是8421碼+3。它也是對9的自補**。
0 0011
1 0100
2 0101
3 0110
4 0111
------
5 1000
6 1001
7 1010
8 1011
9 1100
多餘的無效碼:0000 -> 0010;1101 -> 1111
轉換樣例:(1)258 -> 0101 1000 1011
(2)1000 1001 1001 1011 -> 5 6 6 8
1000 = 8x1 + 4x0 + 2x0 + 1x0 - 3 = 5;1001 = 8x1 + 4x0 + 2x0 + 1x1 - 3 = 6
注意,如果計算沒有涉及到進製,則需要-3,如果涉及到進製,則要先按照8421碼的更改+6 然後再-3,也就是 +3。
2016/9/9
數字邏輯的一些基本運算和概念
基數 計數制中所用到的數字符號的個數,比如基數為r的計數制中,含0,1 r 1共r個數字符號,進製規律是 逢r進1 稱為r進製。位權 在一種進製計數制表示的數中,用來表明不同數字上數值大小的乙個固定的常數。不同數字有不同的位權。比如2進製 10001,第乙個1位上的位權為 2 4,第二個1位上的位權...
數位電路的一些基本概念
1 鎖存器 輸出端的狀態不會隨輸入端的狀態變化而變化,只有在有鎖存訊號時輸入的狀態被儲存到輸出,直到下乙個鎖存訊號。典型的邏輯電路是d觸發器。3 oc門 又稱集電極開路 漏極開路 與非門閘電路,open collector open drain 為什麼引入oc門?實際使用中,有時需要兩個或兩個以上與...
一些linux基本命令和概念
一些linux下的基本命令,初學者可以看看,其他高手是不用看了的 首先linux下的file dir具有user group others三種不同的所有者,每種所有者又有rwx三種顯示的許可權,以及s或t兩種特殊許可權 rwx分別為讀 寫 執行,命令ls l file dir可以檢視許可權 命令的一...