補碼表示的定點數相加:
• 例子說明:如果想求0.1010+(-0.0101),則應當先將其各自轉換為補碼形式,即補碼形式為:01010+11011,結果為100101,其中發現最高位的1溢位,因此結果為00101,恢復為二進位制即:0.0101。
• 純小數的表示:
• 純小數即形如(0.1….)的小數,特點是以0,1為最高位和次高位,並且小數點在其之間。純小數在計算機內表示時,由於其小數點固定,因此可以忽略最高位的0和次高位的1,並將氣候不足的位數補0.例如:(0.111)2在計算機內表示時,表示為(1110000)即可,而當負數純小數時,最高位為符號位,其他各位為忽略符號和最高位0及小數點並補0的數字進行相應編碼後的結果。例如(-0.111)2,按照8為反碼編碼時,首先符號設定1,然後去掉符號位和最高位及小數點,並補足7位後得到1110000,反碼表示為0001111,因此(-0.111)2在計算機內部表示為(10001111)2。
• 浮點小數的表示法
• 浮點小數即小數點位置不固定的小數。由於小數點位置不固定,因此計算機無法直接表示浮點小數,需要先通過科學技術法將浮點小數轉為定點小數。這種轉換後的定點小數與科學計數法相似。
• 在計算機中表示乙個浮點數時,要給出定點小數形式表示的尾數,以及整數形式表示的階碼。其中,由於尾數部分的長度決定了有效數字的位數,也就決定了浮點小數的表示精度;而階碼決定了浮點小數的表示範圍。由於尾數和階碼都有可能為負數,因此需要採用有別於整數及純小數的表示方法。
• 階碼符號位 階碼資料e1-en 尾數符號位 尾數資料位m1-mn
• 即尾數部分的符號位確定浮點數的正負;階碼的符號位確定小數點移動的方向,為正時向右移,為負時向左移。由於計算機內表示都是以2為地鼠,因此二進位制數n的小數點每右移一位,階碼就要相應減小1以保持n不變,相應的,尾數也要右移一位。
• 由於費用點數相加時只需要統一階碼後尾數部分相加即可;而浮點數相乘時,階碼部分要做加法,因此為了簡化正負數的加法運算,階碼部分一般採用新的編碼方式,對於k為的移碼,在其補碼的基礎上加2^k後就得到了移碼的值,實際上就是符號位取反,目的是根據數值本身的大小可以進行原資料的比較。由於移碼表示法中0有唯一的編碼—-1000…00,因此當發現000…00時(即-2^n)就出現了浮點數的向下溢位。
• 設x=mx×2^x,y=my×2^y
• x+-y時:1.對階時小階向大階看齊。
• 2.尾數mx和my進行加減法運算。
• 3.捨入操作,在實行對階或右規操作時常用0舍1入法(類似於十進位制中的四捨五 入法)將右移出去的尾數數值進行捨入,已確保精度。
• 4.檢查階碼是否溢位,若階碼下溢,則認為結果超過了所能表示的最小值,腰肢結果為0。
• 設x=mx×2^x,y=my×2^y
• x×y時:1.乘法時[ex+ey]移=[ex]移+[ey]補 。除法時: [ex+ey]移=[ex]移+[ey]補
• 2.浮點數的尾數處理。浮點數中尾數乘除法的運算結果要進行捨入處理。
• 漢字的內碼
• 國際gb2312-80規定,全部國標漢字及符號組成94×94的矩陣,每一行稱為區,每一列稱為乙個位。
• 漢字的內碼:是在區位碼的基礎上演變而來,它是在計算機內部進行儲存,傳輸所使用的漢字**
• 漢字的內碼採用如下運算規定:
高位內碼=區碼+20h+80h 低位內碼=位碼+20h+80h
20h為基本ascii的控制碼,80h把最高二進位制位置1,因此可用最高位是否為1來時別是否是ascii字元
例子:漢字『玻』的缺位嗎轉換成機內碼
高位內碼=(18)10+(20)16+(80)16
=(00010010)2+(00100000)2+(10000000)2
=(10110010)2
=(b2)16=b2h
低位內碼=(03)10+(20)16+(80)16
=(00010010)2+(00100000)2+(10000000)2
=(10100011)2
=(a3)16=a3h
因此,漢字「玻」的內碼=b2a3h。
• 奇偶校驗碼
• 直接舉例來說:
例如8位碼字傳送ascii碼時,可以使用最高位作為校驗碼。這是如果想要傳輸字元0,由於字元0的ascii編碼值為48,即0110000,共有偶數個1,當採用奇校驗碼時,最高位作為校驗碼應為1,即增加奇校驗編碼後的值為10110000;而採用偶校驗時,最高位作為校驗位應為00110000.以奇校驗為例,當接收方收到00110000時,可以判斷出資料錯誤,要求傳送發重新傳送。
• 點陣法和向量法
• 點陣法使用乙個16×16點陣,24×24點陣或32×32點陣儲存並輸入乙個漢字,由於點陣的表示能力有限,可能出現具有相同的點陣的不同漢字;而向量法使用輪廓曲線儲存並輸出漢字,提高了輸出質量,所以不會出現具有相同向量編碼的不同漢字;
計算機組成原理 資料表示
計算機處理的物件是各種資料,但計算機只能識別0和1兩個數碼,所以進入計算機的任何資料都要轉換成0和1數碼,即計算機中的資料需要使用二進位制的0和1組合表示 p進製是採用p個數字表達乙個屬的位置計數法,其中p是正整數,成為基數 計算機的硬體基礎是數位電路,它處理具有低電平和高電平兩種穩定狀態的脈衝訊號...
計算機資料表示及進製轉換
進製轉換 1.1 二進位制與十進位制互換 1.2二進位制和八進位制互換 1.3二進位制與十六進製制互換 1.4十進位制與八進位制 十六進製制轉換需要先轉換為二進位制進行 1.5八進位制 十六進製制轉換為十進位制參考二進位制轉換為十進位制,將底數換為8或16 1.6八進位制與十六進製制互換都需要先轉換...
計算機組成 資料表示
在學習原碼,反碼 補碼和移碼之前,需要先了解機器數和真值的概念。關於原碼 反碼和補碼的詳解,請看 原碼 反碼 補碼的使用及其原理 理解 補碼是為了化減法為加法方便計算機設計運算 移碼是為了方便比較大小,用在浮點數的階碼中。關於浮點數的詳解,請看 浮點數在計算機中的表示與轉二進位制 浮點數的特殊情況 ...