在電腦中的最基本儲存單位為bit,而一般電腦的記憶體容量單位都是以byte為單位,一個byte為8個bit。而資料大小的等級大小。由小到大的順序為:
位元(bit):最基本的儲存單元。
位元組(byte):表示一個字元,1byte=8bit。
字組(word):表示電腦一次可以處理的位元。
欄位(Field):具有意義的單位。
記錄(Record):能表示成一完整的資料。
檔案(file):由一群資料錄所組成:
資料庫:(data base):由一群相關但避免重覆性的資料,重覆記錄。
在電腦中一資料的種類,可以分為數字資料和文數字資料兩種。
|
數字資料~整數: | 定點表示法。實數:浮點表示法。 |
資料~文數字資料: |
BCD碼
BCDIC碼
EBCDIC碼
ASCII碼
中文碼
|
|
3-3-1數字資料表示法
在電腦中,整數是以二進制或2的補數方式儲存。實數是以浮點數方式儲存。 |
|
(一) 整數資料
電腦內整數都是以定點型式儲存,所謂定點就是二進制的小數點固定在某一位置。而整數有正真值之份,以最左的位元是0時,代表正值。當最左位元為1時,代表是負值。
(二) 實數資料
電腦內部通常以浮點數型態來表示實數。浮點式表示法,分成三部份。
(1) |
符號位元(Sign bit)部份
0代表"正值",1代表"負值" |
(2) |
小數(mantissa)部份
1. |
小數點後面第一位不能為0,亦即小數必須正規化處理修件0.1要小於等於小數,而小數要小於1 |
2. |
小數部份可用來表示數值的精確度,N位元的精確度為:N乘log2=N乘0.3010(取整數) |
|
(3) |
指數(exponent)部份
浮點數表示法中,是採用基準表示法來區分指數的正負數值,其方式為取0~27-1數值中的中間值64為基準點,往上為正,往下為負。如:
+2.................. |
66.......1000010 |
+1.................. |
65.......1000001 |
指數0次方............ |
64.......1000000 |
-1................... |
63.......0111111 |
-2.................... |
62.......0111110 |
|
|
|
例如:浮點數5.62510在電腦中的儲存方法。
1. |
先把十進制化成二進制
(5.625) 10=101.1012 |
2. |
將二進制做正規化處理
101.1012=(0.101101)2乘23 |
3. |
指數部份
基準值+3=64+3=67=(100011)2
由上列結果得知
5.62510在電腦中之儲存格式為
01000011101101000000000000000000 |
|
|
|
3-3-2文字資料表示法
文數字資料包括大小寫大小寫英文字母,數字(0~9)及特殊符號等。目前最常使用的種兩文數字碼是ASCII(美國標準資訊交換碼)和EBCDIC(擴展BCD碼)。
(一) 下表是常具的二進碼: |
十進制數 |
BCD碼 |
加三碼 |
84-2-1碼 |
2421碼 |
0 |
0000 |
0011 |
0000 |
0000 |
1 |
0001 |
0100 |
0111 |
0001 |
2 |
0010 |
0101 |
0110 |
0010 |
3 |
0011 |
0111 |
0101 |
0011 |
4 |
0100 |
0111 |
0100 |
04100 |
5 |
0101 |
1000 |
1011 |
1011 |
6 |
0110 |
1001 |
1010 |
1100 |
7 |
0111 |
1010 |
1001 |
1101 |
8 |
1000 |
1011 |
1000 |
1110 |
9 |
1001 |
1100 |
1111 |
1111 |
|
(二) |
BCD碼是以四個位元來代表一個十進制數字,在BCD碼中,超過十以上並沒有編碼,如上表所示~ |
(三) |
ASCII碼是American Standad Code forinformation Intenchange之縮寫。即美國標準資訊交換碼。是目前電腦中最普遍用的交換碼,ASCII碼是由七個位元編碼而成,經過同位區域位元之後,變成八個位元。在ASCII碼的編碼中,大約可區分為三個區域位元和四個數字位元。例:
XXX |
|
XXXX |
(區域位元) |
|
(數字位元) |
區域位元010= |
特殊符號及控制碼。 |
011= |
數字(0,1,2,3.....) |
100= |
A,B,C.........O |
101= |
P,Q............Z |
110= |
a,b,c............o |
111= |
p,q,..............z |
數字一的ASCII碼為31H= |
(49)10 |
大寫A的ASCII碼為41H= |
(65)10 |
小寫a的ASCII碼為61H= |
(97)10 |
ASCII碼的編碼大小順序約為:
小寫英文字母>大寫英文字母>阿拉伯字母>空白 |
(四) |
EBCDIC為Extended Bindug Code Decimad Interchange Code之縮寫,稱為廣展BCD碼,EBCDIC使用八個位元來編碼,共有256種組合,EBCDIC通常使用在大型電腦上,為了預防資料傳送錯誤,通常會加上一個同位檢查碼,使EBCDIC碼變成九位元。 |
(五) |
區域十進制(Z one Decimad)與聚進十進制(Packed Decimad)十進制數0~9以EBCDIC碼表示時,其區域位元都是四個"1"。頗為佔用記憶體空間,而且任何數都可能為正負值,所以在EBCDIC碼表示任何數值時,必須有正負號的區別。使用EBCDIC表示十進制數字時,有兩種方式表示。
(1) 區域十進制(Zone Decimad)
區域位元皆為(1111)2=(F)16,符號位元是加註在最右邊位元組的區域位元上,若符號位元為(1100)2=(C)16表示該數值為正值;若符為(1101)2=(D)16表示該數值為負值;若符號位元為(1111)2=(F)16,表示沒有正負區分
(2) 聚進十進制(Packed Decimad)
在區域十進位中每一數字均有區域位元,會浪費儲存空間,可將其區域位元移去,然後把符號位元移至最右邊。如下圖所示
數字位元 |
數字位元 |
.......... |
數字位元 |
符號位元 |
所以EBCDIC碼中,表示數值,聚進十進制,比區域十進制在記憶的儲存,聚集十進制較不佔記憶空間。
|
(六) |
同位偵錯
電腦在作資料的傳送之前,會在每個位元組附加一個位元,做為檢查有無傳送錯誤。這個額外加一個位元,做為檢查有無傳送錯誤。這個額外附加的位元稱為『同位位元』,亦稱作'檢查位元',同位貞錯的方式有『奇同位偵錯』和『偶同位偵錯』兩種。奇同位貞錯的方法,如果整個字碼中"1"的個數為奇數時,則附加的位元只要配上"0"即可。反之偶同位偵錯,也須同樣的考慮。同位檢查只能用來檢查是否有錯誤發生,且不能加以更正,如果有兩個以上的位元發生錯誤,便無法偵測。 |
|