數(shù)據(jù)表示
- 匯編語言程序員處理的是物理級數(shù)據(jù),因此他們必須善于檢查內(nèi)存和寄存器。通常,二進制數(shù)被用于描述計算機內(nèi)存的內(nèi)容;有時也使用十進制和十六進制。
- 每一種數(shù)制格式,都有一個基數(shù)(base),也就是可以分配給單一數(shù)字的最大符號數(shù)。
表1-2 二進制、八進制、十進制和十六進制數(shù)字
| 系統(tǒng) | 基數(shù) | 可能的數(shù)字 |
|---|---|---|
| 二進制 | 2 | 01 |
| 八進制 | 8 | 01234567 |
| 十進制 | 10 | 0123456789 |
| 十六進制 | 16 | 0123456789ABCDEF |
1.3.1 二進制整數(shù)
- 計算機以電子電荷集合的形式在內(nèi)存中保存指令和數(shù)據(jù)。用數(shù)字來表示這些內(nèi)容就需要系統(tǒng)能夠適應開/關(guān)(on/off)或真/假(true/false)的概念。二進制數(shù)用2個數(shù)字作基礎,其中每一個二進制數(shù)字(稱為位,bit)不是0就是1.位自右向左,從0開始順序增量編號。左邊的位成為最高有效位(most significant bit, MSB),右邊的稱為最低有效位(least significant bit, LSB)。一個16位的二進制數(shù),其MSB和LSB如下圖所示:
MSB LSB
___________________________________
|_1_0_1_1_0_0_1_0_1_0_0_0_0_1_0_1_|
15 0 位的序列
- 二進制整數(shù)可以是有符號的,也可以是無符號的。有符號整數(shù)又分為正數(shù)和負數(shù),無符號整數(shù)默認為正數(shù),零也被看作是正數(shù)。在書寫較大的二進制數(shù)時,有些人喜歡每4位或8位插入一個點號,以增加數(shù)字的易讀性。如:1101,1100,0011,1000.0000和11011100.00111000
1、無符號二進制整數(shù)
- 從LSB開始,無符號二進制整數(shù)中的每一個位代表的是2的加1次冪。下表展示的是,對一個8位的二進制數(shù)來說,2的冪是如何從右到左增加的:
| 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
|---|---|---|---|---|---|---|---|
| 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 |