久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

1.2 數(shù)據(jù)的表示和類型

 R.W.B.yang 2010-04-26

1.2 數(shù)據(jù)的表示和類型

在用匯編語(yǔ)言進(jìn)行程序設(shè)計(jì)時(shí),,程序員可以直接訪問(wèn)內(nèi)存,對(duì)數(shù)據(jù)在存儲(chǔ)器內(nèi)的表示形式要有一個(gè)清晰的認(rèn)識(shí),。下面,,我們只簡(jiǎn)單介紹本課程所要用到的數(shù)據(jù)表示知識(shí),為后面的學(xué)習(xí)作一點(diǎn)必要的準(zhǔn)備,。

有關(guān)“數(shù)據(jù)表示”的詳細(xì)內(nèi)容請(qǐng)參閱《計(jì)算機(jī)組成原理》中的相關(guān)章節(jié),。

1.2.1 數(shù)值數(shù)據(jù)的表示

(1)、二進(jìn)制

在計(jì)算機(jī)內(nèi),,數(shù)值是用二進(jìn)制來(lái)表示的,,每個(gè)二進(jìn)制數(shù)按權(quán)相加就可得到其十進(jìn)制數(shù)值。在書寫二進(jìn)制時(shí),,為了區(qū)別,,在數(shù)據(jù)后面緊跟一個(gè)字母B

二進(jìn)制的一般表現(xiàn)形式為:bn-1…b1b0B,,其代表數(shù)值:bn-12n-1+…+b121+b020,。

數(shù)據(jù)的二進(jìn)制表示形式簡(jiǎn)單、明了,,但它書寫起來(lái)比較長(zhǎng),,所以,通常情況下,,我們?cè)诔绦蛑胁恢苯佑枚M(jìn)制來(lái)書寫具體的數(shù)值,,而改用八進(jìn)制、十進(jìn)制或十六進(jìn)制,。

(2),、八進(jìn)制

八進(jìn)制是一種二進(jìn)制的變形,三位二進(jìn)制可變?yōu)橐晃话诉M(jìn)制,,反之也然,。八進(jìn)制的表示元素是:0,、1、…,、7,。在書寫時(shí),為了區(qū)別,,在數(shù)據(jù)后面緊跟一個(gè)字母Q,。如:1234Q、7654Q,、54Q等都是八進(jìn)制,。

八進(jìn)制數(shù)在程序中的使用頻率不高。

(3),、十進(jìn)制

十進(jìn)制是我們最熟悉的一種數(shù)據(jù)表示形式,,它的基本元素是:0、1,、…,、9。在書寫時(shí),,為了區(qū)別,,在數(shù)據(jù)后面緊跟一個(gè)字母D。在程序中經(jīng)常用十進(jìn)制來(lái)表示數(shù)據(jù),。

(4),、十六進(jìn)制

十六進(jìn)制是另一種二進(jìn)制的變形,四位二進(jìn)制可變?yōu)橐晃皇M(jìn)制,,反之也然,。十六進(jìn)制的基本元素是:0、1,、…,、9、A,、B,、…、F(字母小寫也可以),,其中:字母A,、B、…,、F依次代表10,、11、…,、15,。

在書寫時(shí),,為了區(qū)別,在數(shù)據(jù)后面緊跟一個(gè)字母H,。當(dāng)十六進(jìn)制數(shù)的第一個(gè)字符是字母時(shí),,在第一個(gè)字符之前必須添加一個(gè)‘0’。如:100H,、56EFH、0FFH,、0ABCDH等都是十六進(jìn)制數(shù),。

十六進(jìn)制在程序中的使用頻率很高。

(5),、數(shù)值進(jìn)制的總結(jié)和相互轉(zhuǎn)換

表1.1 各種進(jìn)制及其字符表示

進(jìn)制

字符

例子

備注

二進(jìn)制

B/Y(*)

1010B,、1011B

(*):字符Y、O和T是宏匯編MASM系統(tǒng)所增加的進(jìn)制表示符,。

八進(jìn)制

Q/O

1234Q,、311Q

十進(jìn)制

D/T

1234D、512D

十六進(jìn)制

H

1234H,、1011H

下面是各進(jìn)制數(shù)據(jù)之間進(jìn)行轉(zhuǎn)換的控件,,瀏覽者通過(guò)它可很好地掌握這些進(jìn)制之間的轉(zhuǎn)換方法。當(dāng)十進(jìn)制轉(zhuǎn)化為其它進(jìn)制時(shí),,瀏覽者還可進(jìn)行實(shí)際的練習(xí)操作,。
 
 

(6)、數(shù)的補(bǔ)碼表示法

在計(jì)算機(jī)內(nèi),,為了表示正負(fù)數(shù),,并便于進(jìn)行各種算術(shù)運(yùn)算,對(duì)有符號(hào)數(shù)采用二進(jìn)制的補(bǔ)碼表示形式,。

補(bǔ)碼的最高位用來(lái)表示正負(fù)數(shù):0—正數(shù),,1—負(fù)數(shù)。

正數(shù)的補(bǔ)碼是其自身的二進(jìn)制形式,,負(fù)數(shù)的補(bǔ)碼是把其正數(shù)的二進(jìn)制編碼變“反”,,再加1而得。

(7),、二進(jìn)制數(shù)的符號(hào)擴(kuò)展

在匯編語(yǔ)言中,,我們經(jīng)常要對(duì)字/字節(jié)的數(shù)據(jù)進(jìn)行操作。當(dāng)把“字節(jié)”轉(zhuǎn)換成“字”,,或“字”轉(zhuǎn)換成“雙字”時(shí),,就需要進(jìn)行符號(hào)擴(kuò)展。符號(hào)擴(kuò)展的具體操作就是把已知信息的最高位擴(kuò)展到所有更高位,。

例1.1 把8位補(bǔ)碼01011010,、10101100分別擴(kuò)展成16位補(bǔ)碼,。
解:根據(jù)符號(hào)擴(kuò)展的含義,“字節(jié)→字”的具體擴(kuò)展結(jié)果如下:

01011010 10101100

00000000

01011010

11111111

10101100

例1.2 把16位補(bǔ)碼0101101111001010,、1010111101011011別擴(kuò)展成32位補(bǔ)碼,。
解:根據(jù)符號(hào)擴(kuò)展的含義,“字→雙字”的具體擴(kuò)展結(jié)果如下:

0101101111001010 1010111101011011

0000000000000000

0101101111001010

1111111111111111

1010111101011011

(8),、n位二進(jìn)制的表示范圍

n位二進(jìn)制所能表示的無(wú)符號(hào)整數(shù)的范圍:0≤x≤2n-1,。
  n位二進(jìn)制所能表示的有符號(hào)整數(shù)(補(bǔ)碼表示)的范圍:-2n-1≤x≤2n-1-1。

在匯編語(yǔ)言中,,常用到n為8和16時(shí)的數(shù)值范圍:

n=8時(shí),,無(wú)符號(hào)整數(shù)的范圍:0~255,有符號(hào)整數(shù)的范圍:-128~127,;
  n=16時(shí),,無(wú)符號(hào)整數(shù)的范圍:0~65535,有符號(hào)整數(shù)的范圍:-32768~32767,。

(9),、BCD碼

通常,我們習(xí)慣用十進(jìn)制表示的數(shù)據(jù),,但計(jì)算機(jī)是用二進(jìn)制來(lái)表示數(shù)數(shù)據(jù)的,,這就需要進(jìn)行數(shù)值進(jìn)制之間的轉(zhuǎn)換。我們把每位十進(jìn)制數(shù)轉(zhuǎn)換二進(jìn)制的編碼,,簡(jiǎn)稱為BCD碼(Binary Coded Decimal),。

BCD碼是用4位二進(jìn)制編碼來(lái)表示1位十進(jìn)制數(shù)。這種編碼方法有多種,,但常用的編碼是8421BCD編碼,,如表1.2所示。這種BCD編碼實(shí)際上就是0~9的“等值”二進(jìn)制數(shù),。

表1.2  8421BCD編碼列表

十進(jìn)制數(shù)字

8421BCD碼

十進(jìn)制數(shù)字

8421BCD碼

0

0000

5

0101

1

0001

6

0110

2

0010

7

0111

3

0011

8

1000

4

0100

9

1001

BCD碼進(jìn)行進(jìn)制的轉(zhuǎn)換時(shí),,是要求在二種進(jìn)制的表現(xiàn)形式上快速轉(zhuǎn)換,而不是要求在“數(shù)值相等”的含義快速轉(zhuǎn)換,。

例1.3 求十進(jìn)制數(shù)2000的BCD編碼和其二進(jìn)制數(shù),。

解:2000的BCD編碼是把每位上的數(shù)2、0,、0,、0分別轉(zhuǎn)換為其對(duì)應(yīng)的BCD編碼:0010、0000,、0000和0000,,把它們合在一起就是2000的BCD編碼:0010 0000 0000 0000。

十進(jìn)制數(shù)2000的二進(jìn)制數(shù)是:11111010000,,它們?cè)跀?shù)值上是相等的,。

1.2.2 非數(shù)值數(shù)據(jù)的表示

計(jì)算機(jī)除了具有進(jìn)行數(shù)值計(jì)算能力之外,,還具有進(jìn)行非數(shù)值計(jì)算的能力。現(xiàn)在,,后者的應(yīng)用領(lǐng)域已遠(yuǎn)遠(yuǎn)超過(guò)了前者的應(yīng)用領(lǐng)域,,如:文字處理、圖形圖象處理,、信息檢索,、日常的辦公管理等。所以,,對(duì)非數(shù)值信息的編碼就顯得越加重要,。

1、ASCII碼

ASCII碼(American Standard Code for Information Interchange)是目前應(yīng)用極其廣泛的一種信息編碼,,許多計(jì)算機(jī)系統(tǒng)都是采用它為字符進(jìn)行編碼,。它是一種7位二進(jìn)制編碼,。

右表是ASCII碼的具體編碼方案,。在該表中,對(duì)學(xué)習(xí)本課程有用的主要信息有:

字符'0'~'9'是連續(xù)編碼的,,其編碼的低4位就是該字符在十進(jìn)制中的數(shù)值,;

小寫字母的編碼比大寫字母的編碼大,對(duì)應(yīng)字母的編碼之間相差20H,。

當(dāng)然,,從ASCII碼表中還可看出其它有用信息,還有擴(kuò)展的ASCII碼等知識(shí),,但這些內(nèi)容對(duì)學(xué)習(xí)本課程的幫助不明顯,,故不再敘述。有興趣的讀者可參閱其它書籍,。

表1.3 ASCII碼的編碼方案

  高位
 低位

000 001 010 011 100 101 110 111
0000 NUL DEL SP 0 @ P ` p
0001 SOH DC1 ! 1 A Q a q
0010 STX DC2 2 B R b r
0011 ETX DC3 # 3 C S c s
0100 EOT DC4 $ 4 D T d t
0101 ENQ NAK % 5 E U e u
0110 ACK SYN & 6 F V f v
0111 BEL ETB 7 G W g w
1000 BS CAN ( 8 H X h x
1001 HT EM ) 9 I Y i y
1010 LF SUB * : J Z j z
1011 VT ESC + ; K [ k {
1100 FF FS   < L \ l |
1101 CR GS - = M ] m }
1110 SO RS . > N ^ n ~
1111 SI US / ? O _ o Del

2,、漢字編碼

ASCII碼是針對(duì)英文的字母、數(shù)字和其它特殊字符進(jìn)行編碼的,,它不能用于對(duì)漢字的編碼,。要想用計(jì)算機(jī)來(lái)處理漢字,就必須先對(duì)漢字進(jìn)行適當(dāng)?shù)木幋a,。我國(guó)在1981年5月對(duì)6000多個(gè)常用的漢字制定了交換碼的國(guó)家標(biāo)準(zhǔn),,即:GB2312-80。該標(biāo)準(zhǔn)規(guī)定了漢字交換用的基本漢字字符和一些圖形字符,,它們共計(jì)7445個(gè),,其中漢字有6763個(gè)。該標(biāo)準(zhǔn)給定每個(gè)字符的二進(jìn)制編碼,,即國(guó)標(biāo)碼,。

有關(guān)漢字編碼的詳細(xì)信息,,請(qǐng)參閱其它有關(guān)書籍,在此不再介紹,。
 

1.2.3 基本的數(shù)據(jù)類型

匯編語(yǔ)言所用到的基本數(shù)據(jù)類型為:字節(jié),、字、雙字等,,這些數(shù)據(jù)類型在以后的章節(jié)中都有相應(yīng)的類型說(shuō)明符,。下面對(duì)它們進(jìn)行最基本的描述。

1,、字節(jié)

一個(gè)字節(jié)有8位二進(jìn)制組成,,其最高位是第7位,最低位是第0位,,如右圖所示,。在表示有符號(hào)數(shù)時(shí),最高位就是符號(hào)位,。

通常情況下,,存儲(chǔ)器按字節(jié)編址,讀寫存儲(chǔ)器的最小信息單位就是一個(gè)字節(jié),。

圖1.2 字節(jié)數(shù)據(jù)類型示意圖

2,、字

2個(gè)字節(jié)組成一個(gè)字,其最高位是第15位,,最低位是第0位,。高8位稱為高字節(jié),低8位稱為低字節(jié),,如右圖所示,。

字節(jié)和字是匯編語(yǔ)言程序中最常用的兩種數(shù)據(jù)類型,也是最容易出錯(cuò)的數(shù)據(jù)類型,。

圖1.3 字?jǐn)?shù)據(jù)類型示意圖

3,、雙字

2個(gè)字(4個(gè)字節(jié))來(lái)組成一個(gè)雙字,其高16位稱為高字,,低16位稱為低字,,如右圖所示。

雙字有較大的數(shù)據(jù)表示范圍,,它通常是為了滿足數(shù)據(jù)的表示范圍而選用的數(shù)據(jù)類型,,也可用于存儲(chǔ)遠(yuǎn)指針。

字節(jié),、字和雙字是匯編語(yǔ)言最常用的三種數(shù)據(jù)類型,,下圖表現(xiàn)出它們?nèi)咧g的組成關(guān)系。

圖1.4 雙字?jǐn)?shù)據(jù)類型示意圖

 

圖1.5 字節(jié)、字和雙字?jǐn)?shù)據(jù)類型之間關(guān)系示意圖

4,、四字

4個(gè)字(8個(gè)字節(jié))組成一個(gè)四字類型,,它總共有64個(gè)二進(jìn)制位,當(dāng)然,,也就有更大的數(shù)據(jù)表示范圍,,但在匯編語(yǔ)言中很少使用該數(shù)據(jù)類型。

5,、十字節(jié)

10個(gè)字節(jié)組成一個(gè)十字節(jié)類型,,它總共有80個(gè)二進(jìn)制位。在匯編語(yǔ)言中很少使用該數(shù)據(jù)類型,。

6,、字符串

字符串是由若干個(gè)字節(jié)組成的,字節(jié)數(shù)不定,,通常每個(gè)字節(jié)存儲(chǔ)一個(gè)字符,。該數(shù)據(jù)形式是匯編語(yǔ)言程序中經(jīng)常使用的另一種數(shù)據(jù)形式。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購(gòu)買等信息,,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多