官术网_书友最值得收藏!

1.1.3 微型計算機中常用編碼

由于微型計算機不但要處理數值計算問題,還要處理大量非數值計算問題,因此除非直接給出二進制數,否則不論是十進制數還是英文字母、漢字及某些專用符號,都必須編成二進制代碼才能被計算機識別、接收、存儲、傳送及處理。

1.十進制數的編碼

在微型計算機中,十進制數除了可以轉換成二進制數,還可以用二進制數對其進行編碼:用4位二進制數表示1位十進制數,使它既具有二進制數的形式又具有十進制數的特點。二-十進制碼又稱為BCD碼(Binary-Coded Decimal),它有8421碼、5421碼、2421碼、余3碼等編碼,其中最常用的是8421碼。8421碼與十進制數的對應關系如表1.2所示,每位二進制數位都有固定的權,各數位的權從左到右分別為23、22、21、20,即8、4、2、1,這與自然二進制數的位權完全相同,故8421碼又稱為自然權BCD碼。其中,1010~1111這6個編碼屬于非法8421碼,是不允許出現的。

表1.2 8421碼與十進制數的對應關系

由于BCD碼低位與高位之間是“逢十進一”,而4位二進制數(十六進制數)低位與高位之間是“逢十六進一”,因此在用二進制加法器進行BCD碼運算時,如果BCD碼運算的低位、高位的和都在0~9范圍內,則其加法運算規則與二進制加法運算規則完全一樣;如果相加后某位(BCD碼位,低4位或高4位)的和大于9或產生了進位,則此位應進行“加6調整”。在微型計算機中,通常設置了BCD碼的調整電路,每執行一條十進制調整指令,就會自動根據二進制加法結果進行修正。由于BCD碼低位向高位借位是“借一當十”,而4位二進制數(十六進制數)是“借一當十六”,因此在進行BCD碼減法運算時,如果某位(BCD碼位)有借位,那么必須在該位進行“減6調整”。

2.字符編碼

拓展閱讀

由于微型計算機需要進行非數值處理(如指令、數據、文字的輸入及處理等),因此必須對英文字母、漢字及某些專用符號進行編碼。微型計算機系統的字符編碼多采用美國信息交換標準代碼—ASCII碼(American Standard Code for Information Interchange),ASCII碼是7位代碼,共有128個字符(拓展閱讀),其中有94個字符是圖形字符,可通過字符印刷或顯示設備打印出來,包括數字10個、英文大小寫字母52個,以及其他字符32個;另外34個字符是控制字符,包括傳輸字符、格式控制字符、設備控制字符、信息分隔符和其他控制字符,這類字符不可打印、不可顯示,但其編碼可進行存儲,在信息交換中起控制作用。其中,數字0~9對應的ASCII碼為30H~39H,英文大寫字母A~Z對應的ASCII碼為41H~5AH,英文小寫字母a~z對應的ASCII碼為61H~7AH,這些規律對今后碼制轉換的編程非常有用。

我國于1980年制定了國家標準GB1988—80《信息處理交換用的七位編碼字符集》,其中除用人民幣符號“¥”代替美元符號“$”外,其余字符與ASCII碼的字符相同。

主站蜘蛛池模板: 宜兴市| 阿鲁科尔沁旗| 沭阳县| 莆田市| 合阳县| 涿鹿县| 宁乡县| 革吉县| 鲁甸县| 兰溪市| 上高县| 乌拉特中旗| 怀仁县| 广河县| 霍林郭勒市| 张家港市| 慈溪市| 台北市| 姚安县| 鄂伦春自治旗| 泽库县| 五寨县| 徐州市| 崇阳县| 光山县| 额济纳旗| 沾化县| 大竹县| 保亭| 双桥区| 木兰县| 上蔡县| 莱阳市| 滁州市| 景谷| 于田县| 柳州市| 财经| 益阳市| 三原县| 抚宁县|