1.邏輯運算和算術運算有什麼區別?spa
算術運算就是日常咱們所用的加減乘除,而邏輯運算是在二進制位上進行非、與、或和異或運算,邏輯運算中的二進制位只有兩種狀態:0(假)和1(真),結果中的二進制位也只有這兩種狀態。二進制
4.解釋「溢出」這個詞。方法
當咱們進行計算機數字中的算術運算時,要記住每一個數字和結果應該在分配的二進制位的定義範圍以內。若計算結果沒法用被分配的二進制位數來正確表示時,該結果出現溢出。規範化
5.在浮點數的加法運算中,怎樣調整指數不一樣的數的表示方法?計算機
在運算中先以某個數的指數爲標準,經過去規範化使其它的數的指數與該指數相同,相加後再次規範化便可。移動
7.二元邏輯運算有哪些?co
與、或、異或。浮點數
8.什麼是真值表?數字
真值表定義了對於每一種可能的輸入或輸出值。background
13.說出本章討論的AND運算符的一個重要特性。
若輸入中有一位是0,則不須要檢查其餘輸入的相應的位,即可迅速獲得結果爲0.
14.說出本章討論的OR運算符的一個重要特性。
若輸入中有一位是1,則不須要檢查其餘輸入的相應的位,即可迅速獲得結果爲1.
15.說出本章討論的XOR運算符的一個重要特性。
若輸入中有一位是1,那結果就是與其餘輸入中相應位相反。
16.哪一種二元運算能夠用來置位?掩碼應該用什麼位模式?
OR運算。掩碼的位模式中的1用於置位,而0保持相應的位狀態不變。
17.哪一種二元運算能夠用來複位?掩碼應該用什麼位模式?
AND運算。掩碼的位模式中的0用於復位,而1保持相應的位狀態不變。
18.哪算二元運算能夠用來反轉?掩碼應該用什麼位模式?
XOR運算。掩碼的位模式中的1用於反轉,而0保持相應的位狀態不變。
19.邏輯和算術移位間的區別是什麼?
邏輯移位用於不帶符號位的數的模式,右移把每一位向右移動一個位置,最右位被丟棄,最左位填0;左移把每一位向左移動一個位置,最左位被丟棄,最右邊填0.
算術移位用於二進制補碼格式的位模式中,右移保留符號位,同時複製該符號位,放入相鄰的右邊的位中;左移丟棄符號位,接受它的右邊的位做爲符號位。
20._______是算術運算。 c.減法
21._______是邏輯運算。 d.異或、一元非、二元與
22._______描述整數的方法是計算機存儲中最經常使用的方法。 c.二進制補碼
23.二進制補碼加法中,若是是最左邊一列相加後產生進位,則________. c.捨棄
24.一個8位分配單元,用二進制補碼能表示的最小十進制數是________. c.-128
25.一個8位分配單元,用二進制補碼能表示的最大十進制數是________. c.127
26.一個4位分配單元,用二進制補碼錶示,1加7能獲得________. d.-8
27.一個4位分配單元,用二進制補碼錶示,5加5獲得________. b.-6
28.若是在餘127碼中的指數表示爲二進制1000 0101,那麼十進制中的指數是_______. a.6
29.兩個數相加,一個指數值爲7,另外一個指數值爲9,則須要將較小數的小數點________. b.左移兩位
30.二元運算符_______取兩個輸入產生一個輸出。 d.AND、XOR、OR
36.可使用一種叫作_______的位模式修改另外一個位模式。 a.掩碼
37.要反轉一個位模式所有的位,使用全1掩碼,對位模式和掩碼進行_______運算。 b.XOR
38.要復位(置0)一個位模式所有的位,對位模式和掩碼進行_______運算。 a.AND
39.要置位(置1)一個位模式所有的位,對位模式和掩碼進行_______運算。 b.OR
40.顯示下列運算的結果。
a.NOT(99)16 → NOT(1001 1001)2 → (0110 0110)2
b.NOT(FF)16 → NOT(1111 1111)2 → (0000 0000)2
c.NOT(00)16 → NOT(0000 0000)2 → (1111 1111)2
d.NOT(01)16 → NOT(0000 0001)2 → (1111 1110)2
41.求下列運算結果。
a.(99)16 AND (99)16 → (1001 1001)2 AND (1001 1001)2 → (1001 1001)2
b.(99)16 AND (00)16 → (1001 1001)2 AND (0000 0000)2 → (0000 0000)2
c.(99)16 AND (FF)16 → (1001 1001)2 AND (1111 1111)2 → (1001 1001)2
d.(FF)16 AND (FF)16 → (1111 1111)2 AND (1111 1111)2 → (1111 1111)2
42.求下列運算結果。
a.(99)16 OR (99)16 → (1001 1001)2 OR (1001 1001)2 → (1001 1001)2
b.(99)16 OR (00)16 → (1001 1001)2 OR (0000 0000)2 → (1001 1001)2
c.(99)16 OR (FF)16 → (1001 1001)2 OR (1111 1111)2 → (1111 1111)2
d.(FF)16 OR (FF)16 → (1111 1111)2 OR (1111 1111)2 → (1111 1111)2
43.求下列運算結果。
a.NOT [(99)16 OR (99)16] → NOT (1001 1001)2 → (0110 0110)2
b.(99)16 OR [NOT (00)16] → (1001 1001)2 OR (1111 1111)2 → (1111 1111)2
c.[(99)16 AND (33)16] OR [(00)16 AND (FF)16] → [(1001 1001)2 AND (0011 0011)2] OR [(0000 0000)2 AND (1111 1111)2 ]
→ (0001 0001)2 OR (0000 0000)2
→ (0001 0001)2
d.[(99)16 OR (33)16] AND [(00)16 OR (FF)16] → [(1001 1001)2 OR (0011 0011)2] AND [(0000 0000)2 OR (1111 1111)2 ]
→ (1011 1011)2 AND (1111 1111)2
→ (1011 1011)2
51.用8位分配單元,首先把下列數轉換成二進制補碼,而後運算,再把結果轉成十進制。
a.19 + 23 → (0001 0011)2 + (0001 0111)2 = (0010 1010)2 = 42
b.19 - 23 → (0001 0011)2 - (0001 0111)2 = (0001 0011)2 + (1110 1001)2 = (1111 1100)2 = -4
c.-19 + 23 → (1110 1101)2 + (0001 0111)2 = (0000 0100)2 = 4
d.-19 - 23 → -(0001 0011)2 - (0001 0111)2 = (1110 1101)2 + (1110 1001)2 = (1101 0110)2 = -42
52.用16位分配單元,先把下列數轉換成二進制補碼,而後運算,再把結果轉成十進制。
a.161 + 1023 → (0000 0000 1010 0001)2 + (0000 0011 1111 1111)2 = (0000 0100 1010 0000)2 = 1184
b.161 - 1023 → (0000 0000 1010 0001)2 + (1111 1100 0000 0001)2 = (1111 1100 1010 0010)2 = -862
c.-161 + 1023 → (1111 1111 0101 1111)2 + (0000 0011 1111 1111)2 = (0000 0011 0101 1110)2 = 862
d. -161 - 1023 → (1111 1111 0101 1111)2 + (1111 1100 0000 0001)2 = (1111 1011 0110 0000)2 = -1184
53.若是數字都用8位二進制補碼錶示,下列哪一個運算會溢出? c. 1100 0010 + 1111 1111
54.若是數字和結果都用8位二進制補碼錶示,不經過實際的計算,能說出下列哪一個運算會溢出嗎? a. 32 + 105 和 d. -32 - 105
56.使用一個8位的分配單元,首先把下列每一個數字轉化爲符號加絕對值表示法,進行運算,而後把結果轉化爲十進制。
a.19 + 23 → (0 001 0011)2 + (0 001 0111)2 = (0 010 1010)2 = 42
b.19 - 23 → (0 001 0011)2 + (1 001 0111)2 = (0 001 0011)2 + (1 110 1001)2 = (1 111 1100)2 = (1 000 0100)2 = -4
c.-19 + 23 → (1 001 0011)2 + (0 001 0111)2 = (0 110 1101)2 + (0 001 0111)2 = (0 000 0100)2 = 4
d.-19 - 23 → (1 001 0011)2 + (1 001 0111)2 = (1 010 1010)2 = -42
57.計算下列使用IEEE_127的浮點數運算結果。
a. 34.75 + 23.125
34.75 → (100010.11)2 → (1.0001011)2 × 25 → 0 1000 0100 10001 0110 0000 0000 0000 000
23.125 → (10111.001)2 → (1.0111001)2 × 24 → 0 1000 0011 10111 0010 0000 0000 0000 000
→ 0 1000 0100 01011 1001 0000 0000 0000 000
相加後 0 1000 0100 11100 1111 0000 0000 0000 000
規範化 0 1000 0100 1100 1111 0000 0000 0000 000
即 (1.11001111) × 25 = 111001.111 = 57.875
b. -12.625 + 451.00
-12.625 → -(1100.101)2 → -(1.100101)2 × 23 → 1 1000 0010 11001 0100 0000 0000 0000 000
→ 1 1000 0111 00000 1100 1010 0000 0000 000
→ 1 1000 0111 11111 0011 0110 0000 0000 000
451.00 → (111000011)2 → (1.11000011)2 × 28 → 0 1000 0111 11100 0011 0000 0000 0000 000
相加後 0 1000 0111 11011 0110 0110 0000 0000 000
規範化 0 1000 0111 1011 0110 0110 0000 0000 000
即 (1.101101100110) × 28 = 110110110.0110 = 438.375
c. 33.1875 - 0.4375
33.1875 → (100001.0011)2 → (1.000010011)2 × 25 → 0 1000 0100 10000 1001 1000 0000 0000 000
-0.4375 → -(0.0111)2 → -(1.11)2 × 2-2 → 1 0111 1101 11100 0000 0000 0000 0000 000
→ 1 1000 0100 00000 0011 1000 0000 0000 000
→ 1 1000 0100 11111 1100 1000 0000 0000 000
相加後 0 1000 0100 10000 0110 0000 0000 0000 000
規範化 0 1000 0100 0000 0110 0000 0000 0000 000
即 (1.0000011) × 25 = 100000.11 = 32.75
d. -344.3125 - 123.5625
-344.3125 → -(101011000.0101)2 → -(1.010110000101)2 × 28 → 1 1000 0111 10101 1000 0101 0000 0000 000
-123.5625 → -(1111011.1001)2 → -(1.1110111001)2 × 26 → 1 1000 0101 11110 1110 0100 0000 0000 000
→1 1000 0111 00111 1011 1001 0000 0000 000
相加後 1 1000 0111 11101 0011 1110 0000 0000 000
規範化 1 1000 0111 1101 0011 1110 0000 0000 000
即 -(1.11010011111) × 28 = -111010011.111 = -467.875
58.下列哪一種狀況永不發生溢出?證實你的觀點。 b.正整數加負整數 和 d.兩個負整數相減
59.把一個整數加到它的反碼上的結果是什麼? 該數的位模式上所有爲1
(完)