計(jì)算機(jī)組成原理:計(jì)算機(jī)中數(shù)據(jù)分類及表示方法_第1頁
計(jì)算機(jī)組成原理:計(jì)算機(jī)中數(shù)據(jù)分類及表示方法_第2頁
計(jì)算機(jī)組成原理:計(jì)算機(jī)中數(shù)據(jù)分類及表示方法_第3頁
計(jì)算機(jī)組成原理:計(jì)算機(jī)中數(shù)據(jù)分類及表示方法_第4頁
計(jì)算機(jī)組成原理:計(jì)算機(jī)中數(shù)據(jù)分類及表示方法_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

§2.1計(jì)算機(jī)中數(shù)據(jù)分類及表示方法一、計(jì)算機(jī)數(shù)據(jù)的分類1.符號(hào)數(shù)據(jù)2.數(shù)值數(shù)據(jù)二符號(hào)數(shù)據(jù)

1符號(hào)數(shù)據(jù)包括:①26個(gè)英文字母

②10個(gè)十進(jìn)制數(shù)

③標(biāo)點(diǎn)符號(hào),以及一些專用符號(hào)④漢字、圖形、語音信息等也應(yīng)屬于符號(hào)數(shù)據(jù)

2符號(hào)數(shù)據(jù)表示方法:

當(dāng)前的西文字符集由128個(gè)符號(hào)組成,通常用7位二進(jìn)制數(shù),即美國標(biāo)準(zhǔn)信息交換碼ASCII碼

來表示每一個(gè)符號(hào),且其字符的編碼為:b7b6‥‥‥b1b0,通常情況下b7=0。ASCII字符編碼集

b6b5b4000001010011100101110111b3b2b1b00000NULDLESP0@P,p0001SOHDC1!1AQaq0010STXDC2“2BRbr0011ETXDC3#3CScs0100EOTDC4$4DTdt0101ENQNAK%5EUeu0110ACKSYN&6FVfv0111BELETB‘7GWgw1000BSCAN(8HXhx1001HTEM)9IYiy1010LFSUB*:JZjz1011VTESC+;K[k{1100FFFS,<L\l|1101CRGS-=M]m}1110SORS.>N^n~1111SIUS/?O_oDEL⑴字符和字符串表示方法:

①字符:用ASCll,構(gòu)成一個(gè)“字節(jié)”,例如:字符‘A’的ASCll碼為01000001,可書寫為“41H”。②字符串:字符串由連續(xù)的字符組成,每個(gè)字符用其ASCll

碼表示,在存儲(chǔ)器中連續(xù)占用一片的空間。⑵漢字表示方法:

通常用兩個(gè)字節(jié)表示一個(gè)漢字,為了與西文字符編碼相區(qū)別(西文的ASCII碼的最高一位編碼值為0),表示一個(gè)漢字時(shí),把兩個(gè)字節(jié)的最高一位的編碼值設(shè)定為1,則該編碼集的最多編碼數(shù)量為128*128。①漢字的輸入編碼:數(shù)字編碼:常用的是國標(biāo)區(qū)位碼,用數(shù)字串表一個(gè)漢字輸入。

拼音碼:以漢語拼音為基礎(chǔ)的輸入方法。字形編碼:是用漢字的形狀來進(jìn)行的編碼。②漢字內(nèi)碼:用于漢字信息存儲(chǔ)、交換、檢索等操作的機(jī)內(nèi)代碼③漢字字模碼:是用點(diǎn)陣表示的漢字字形代碼,是漢字輸出形式。

注意:漢字的輸入編碼、漢字內(nèi)碼、字模碼是計(jì)算機(jī)用于輸入,內(nèi)部處理,輸出三種不同用途的編碼

顯示打印輸入漢字內(nèi)碼字形碼漢字信息外碼(輸入碼)漢字信息漢字庫兩個(gè)字節(jié)最高二進(jìn)制位均為1漢字編碼之間的關(guān)系:例:“啊”的輸入:輸入碼1601(數(shù)字碼)a(拼音)kbsk(五筆字型)內(nèi)碼B0A1漢字庫“啊”字形碼的地址總結(jié):計(jì)算機(jī)信息處理原理三.數(shù)值數(shù)據(jù)的表示方式數(shù)值數(shù)據(jù)包含:無符號(hào)數(shù)和帶符號(hào)數(shù)兩大類無符號(hào)數(shù):只表示數(shù)值的大小,在計(jì)算機(jī)中是一串二進(jìn)制數(shù)的組合。帶符號(hào)數(shù):在計(jì)算機(jī)中常用有2種不同的表示方式:定點(diǎn)表示法,浮點(diǎn)表示法

將小數(shù)點(diǎn)固定在符號(hào)位之后,數(shù)值最高位之前,就是定點(diǎn)小數(shù)形式,其格式如下:x0x1x2x3…xn-1xn符號(hào)量值小數(shù)點(diǎn)固定于符號(hào)之后,不需專門存放位置1.數(shù)的定點(diǎn)表示法:

定點(diǎn)小數(shù):若字長(zhǎng)為n+1位,則定點(diǎn)小數(shù)x的表示范圍為:0≤|x|≤1-2-n

0.11‥‥‥11-0.11‥‥‥11~即:

將小數(shù)點(diǎn)固定在最低位之后,就是定點(diǎn)整數(shù)形式,其格式如下:x0x1x2x3…xn-1xn若字長(zhǎng)為n+1位,則定點(diǎn)整數(shù)x的表示范圍為:

定點(diǎn)整數(shù):+11‥‥‥11-11‥‥‥11~即:符號(hào)量值小數(shù)點(diǎn)固定于最后一位之后,不需專門存放位置0≤|x|≤2n-1

例:某機(jī)字長(zhǎng)16位,求它所能表示的定點(diǎn)小數(shù)和定點(diǎn)整數(shù)的范圍?解:純小數(shù)范圍為:純整數(shù)范圍為:x≤(1-2-15)

≤-(1-2-15)

-(215-1)

≤x≤(215-1)

0.11‥‥‥111.11‥‥‥11~即:~011‥‥‥11111‥‥‥11即:2.數(shù)的浮點(diǎn)表示方法:

電子的質(zhì)量:0.00‥‥‥009克,其小數(shù)點(diǎn)后共27個(gè)0

太陽的質(zhì)量:200‥‥‥00克,其2后共33個(gè)0在定點(diǎn)計(jì)算機(jī)中由于太大或太小數(shù)N無法直接存貯,但我們可將其先寫成一個(gè)純小數(shù)乘上一個(gè)指數(shù)值的浮點(diǎn)數(shù):=0.9×10-27克=

0.2×1034克N=m×Re這種把任意一個(gè)數(shù)N的有效數(shù)字m和數(shù)的范圍e在計(jì)算機(jī)的一個(gè)存儲(chǔ)單元中分別予以存貯,這種把數(shù)的范圍和精度分別表示的方法,叫浮點(diǎn)表示法。m

:尾數(shù),是一個(gè)帶符號(hào)的純小數(shù),由它確定浮點(diǎn)數(shù)的符號(hào)及

其精度,顯然,尾數(shù)越長(zhǎng),精度越高。e

:比例因子的指數(shù),稱為浮點(diǎn)的階碼,是一個(gè)帶符號(hào)的整數(shù)。由它確定尾數(shù)的小數(shù)點(diǎn)的位置,階碼愈長(zhǎng),所能表示的浮點(diǎn)數(shù)的范圍愈大。R:比例因子的基數(shù),對(duì)于二進(jìn)計(jì)數(shù)值的機(jī)器是一個(gè)常數(shù),一般規(guī)定R為2,8或16。在N=m×Re中:但在計(jì)算機(jī)中浮點(diǎn)數(shù)常用以2為基數(shù)的表示形式:N=m×2e計(jì)算機(jī)中二近制浮點(diǎn)數(shù)N=m×2p常用的存儲(chǔ)格式為:⑴第一種浮點(diǎn)格式:階碼和尾數(shù)均用補(bǔ)碼表示例:浮點(diǎn)數(shù):+0.10100110111×2+5采用上面格式存儲(chǔ)為:

0101010100110111⑵第二種浮點(diǎn)格式(階碼用移碼,尾數(shù)用補(bǔ)碼)表示:例:浮點(diǎn)數(shù):+0.10100110111×2+101采用上面格式存儲(chǔ)為:

0110110100110111按照IEEE754的標(biāo)準(zhǔn),先將數(shù)N表示成實(shí)用的二近制浮點(diǎn)數(shù):

N=1.m×2e⑶第三種浮點(diǎn)格式:IEEE754的標(biāo)準(zhǔn)格式該實(shí)用的浮點(diǎn)數(shù)存儲(chǔ)格式為:據(jù)設(shè)置各字段長(zhǎng)度不同,將其具體主要分成以下兩種格式:①短浮點(diǎn)數(shù)格式(即32位實(shí)用浮點(diǎn)數(shù)標(biāo)準(zhǔn)格式):S:浮點(diǎn)數(shù)的符號(hào)位,1位,0表示正數(shù),1表示負(fù)數(shù)。

E:階碼8位,采用移碼方式來表示正負(fù)指數(shù)。真值e的移碼

為指數(shù)e

加上一個(gè)固定的偏移值127(01111111),即:

E=e+127.短浮點(diǎn)數(shù)真值可表示為:x=(-1)s×(1.M)×2E-127其中e=E-127

例:數(shù)+0.10100110111×2+101采用短浮點(diǎn)數(shù)格式存儲(chǔ)為:解:+0.10100110111×2+101

=+1.0100110111×2+100

S=0E=(100)2+127=131=10000011M=0100110111其存儲(chǔ)為:01000001101001101110000000000000

②長(zhǎng)浮點(diǎn)數(shù)格式(即64位實(shí)用浮點(diǎn)數(shù)標(biāo)準(zhǔn)格式):S:浮點(diǎn)數(shù)的符號(hào)位,1位,0表示正數(shù),1表示負(fù)數(shù)。

E:階碼11位,采用移碼方式來表示正負(fù)指數(shù)。真值e的移碼為指數(shù)e

加上一個(gè)固定的偏移值1023,即:

E=e+1023.短浮點(diǎn)數(shù)真值可表示為:x=(-1)s×(1.M)×2E-127其中e=E-127

例:數(shù)+0.10100110111×2+101采用常浮點(diǎn)數(shù)格式存儲(chǔ)為:解:+0.10100110111×2+101

=+1.0100110111×2+100

S=0E=(100)2+1023=1027=10000000011M=0100110111其存儲(chǔ)為:0

10000000011

010011011100‥‥‥00

[例1]若浮點(diǎn)數(shù)的二進(jìn)制存儲(chǔ)格式為41360000H,求其32位短浮點(diǎn)數(shù)的十進(jìn)制值。

解:將16進(jìn)制數(shù)展開后,可得二制數(shù)格式為:指數(shù):e=尾數(shù):1.M=1.01101100000000000000000=1.011011于是有:階碼-127=10000010-01111111=00000011=3

[例2]將十進(jìn)制數(shù)20.59375轉(zhuǎn)換成32位短浮點(diǎn)數(shù)的二進(jìn)制格式來存儲(chǔ)。解:首先分別將整數(shù)和小數(shù)部分轉(zhuǎn)換成二進(jìn)制數(shù):20.59375=10100.10011然后移動(dòng)小數(shù)點(diǎn),使其在第1,2位之間于是得到:S=0,E=4+127=131=10000011

,M=010010011最后得到32位浮點(diǎn)數(shù)的二進(jìn)制存儲(chǔ)格式為:

01000001101001001100000000000000=41A4C000H+10100.10011=+1.010010011×24浮點(diǎn)表示法說明:①浮點(diǎn)數(shù)的基值選擇問題:對(duì)于任意浮點(diǎn)數(shù):N=m×2p來說:m可以采用2近制

8近制或16近制來表示存貯p常用2近制來表示存貯所謂基值:是指采用什么計(jì)數(shù)值(2/8/16),即采用什么近制浮點(diǎn)數(shù)的基值:指尾數(shù)和階碼各采用什么近制所以浮點(diǎn)數(shù)的基值選擇問題實(shí)際是尾數(shù)基值選擇問題

階碼相同尾數(shù)也相同,選用不同尾數(shù)基值,表示浮點(diǎn)數(shù)值各不同,尾數(shù)基值越大,所表示的浮點(diǎn)數(shù)的值越大。

浮點(diǎn)數(shù)的規(guī)格化:引入原因:

浮點(diǎn)數(shù)的精度是由尾數(shù)的長(zhǎng)度來確定的,因此總是希望尾數(shù)愈長(zhǎng)愈好。但是盡管尾數(shù)很長(zhǎng),如果實(shí)際使用中在尾數(shù)的小數(shù)點(diǎn)后經(jīng)常有許多位為0,即尾數(shù)的有效位數(shù)縮短,則尾數(shù)的精度將達(dá)不到,因此實(shí)際中常常要求每次運(yùn)算的結(jié)果都是規(guī)格化的浮點(diǎn)數(shù)。浮點(diǎn)數(shù)規(guī)格化:就是讓尾數(shù)(2近制)的小數(shù)點(diǎn)后面第一位必須是“1”。即其絕對(duì)值應(yīng)≥0.5,也就是尾數(shù)域的最高有效位應(yīng)為1例:在機(jī)器字長(zhǎng)為32的計(jì)算計(jì)機(jī)中存儲(chǔ)0.0000011‥‥‥11×29

數(shù)︸23先要化成規(guī)格化的浮點(diǎn)數(shù):0.11‥‥‥11×24

︸23例:將0.0000011‥‥‥11×29

數(shù)轉(zhuǎn)換成32位短浮點(diǎn)數(shù)的二進(jìn)制格式來存儲(chǔ)

︸23解:將其化為規(guī)格化的浮點(diǎn)數(shù)為:0.11‥‥‥11×24按照標(biāo)準(zhǔn)32位浮點(diǎn)數(shù)的二進(jìn)制格式將其寫為:則:S=0E=3+127=100000101.M=1.11

‥‥11︸22其存儲(chǔ)形式為:01000001011

‥‥‥110=20BFFFFE

當(dāng)浮點(diǎn)數(shù)的尾數(shù)為0,或者當(dāng)階碼的值遇到比它能表示的最小值還小時(shí),不管其尾數(shù)為何值,計(jì)算機(jī)都把該浮點(diǎn)數(shù)看成零值,稱為機(jī)器零。相同的情況下浮點(diǎn)數(shù)所表示的范圍遠(yuǎn)比定點(diǎn)數(shù)大。

浮點(diǎn)數(shù)與定點(diǎn)數(shù)的比較:

一臺(tái)計(jì)算機(jī)中究竟采用定點(diǎn)表示還是浮點(diǎn)表示,要根據(jù)計(jì)算機(jī)的使用條件來確定。一般在高檔微機(jī)以上的計(jì)算機(jī)中同時(shí)采用定點(diǎn)、浮點(diǎn)表示,由使用者進(jìn)行選擇,而單片機(jī)中多采用定點(diǎn)表示。數(shù)的機(jī)器碼表示:

在計(jì)算機(jī)中對(duì)數(shù)據(jù)進(jìn)行運(yùn)算操作時(shí),符號(hào)位如何表示呢?是否也同數(shù)值位一道參加運(yùn)算操作呢?為了妥善的處理好這些問題,就產(chǎn)生了把符號(hào)位和數(shù)字位一起編碼來表示相應(yīng)的數(shù)的各種表示方法,如原碼、補(bǔ)碼、反碼、移碼等。為了區(qū)別一般書寫表示的數(shù)和機(jī)器中這些編碼表示的數(shù),通常將前者稱為真值,后者稱為機(jī)器數(shù)或機(jī)器碼。原碼、補(bǔ)碼、反碼、移碼等。1.原碼表示法:

定點(diǎn)小數(shù)x=x0.x1x2…xn,則原碼表示的定義式是:[x]原={x

1>x≥01-x=1+|x|

0≥x>-1定點(diǎn)整數(shù)x=x0x1x2…xn,則原碼表示的定義是:[x]原={x

2n>x≥02n-x=2n+|x|

0≥x>-2n對(duì)于0,原碼機(jī)器中往往有“+0”、“-0”之分,故有兩種形式:[+0]原=0.000...0[-0]原=1+0.000...0=1.000...0例如:x=+0.1001,則[x]原=0.1001x=-0.1001,則[x]原=1.1001

采用原碼表示法簡(jiǎn)單易懂,但它的最大缺點(diǎn)是加法運(yùn)算復(fù)雜。這是因?yàn)?,?dāng)兩數(shù)相加時(shí),如果是同號(hào)則數(shù)值相加;如果是異號(hào),則要進(jìn)行減法。而在進(jìn)行減法時(shí)還要比較絕對(duì)值的大小,然后大數(shù)減去小數(shù),最后還要給結(jié)果選擇符號(hào)。為了解決這些矛盾,人們找到了補(bǔ)碼表示法。2.補(bǔ)碼表示法①補(bǔ)碼的概念:先以鐘表對(duì)時(shí)為例說明:

假設(shè)現(xiàn)在的標(biāo)準(zhǔn)時(shí)間為4點(diǎn)整,而有一只表已經(jīng)7點(diǎn)了,為了校準(zhǔn)時(shí)間,可以采用兩種方法:

將時(shí)針退3格;

這兩種方法都能對(duì)準(zhǔn)到4點(diǎn),由此看出,減3和加9是等價(jià)的,即:7一3=7+9=7+(一3+12)

就是說:9是(一3)以12為模的補(bǔ)數(shù),可見,只要確定了模,就可以找到一個(gè)負(fù)數(shù)等價(jià)的正數(shù)(該正數(shù)即為負(fù)數(shù)的補(bǔ)數(shù))來代替此負(fù)數(shù),這樣就可以把減法運(yùn)算用加法來實(shí)現(xiàn)在數(shù)學(xué)上12

稱為“?!?,表示被丟掉的數(shù)值。

是將時(shí)針向前撥9格。啟示::A一B=A+(—B+K)其中:K為模,當(dāng)負(fù)數(shù)用補(bǔ)碼表示時(shí),可以把減法轉(zhuǎn)化為加法。這樣,在計(jì)算機(jī)中實(shí)現(xiàn)起來就比較方便。

定點(diǎn)小數(shù)x=x0.x1x2…xn,則補(bǔ)碼表示的定義是:[x]補(bǔ)={x

1>x≥0

2+x=2-|x|

0≥x≥-1定點(diǎn)整數(shù),補(bǔ)碼表示的定義是:[x]補(bǔ)=x

2n>x≥0

{2n+1+x=2n+1-|x|

0≥x≥-2n對(duì)于0,[+0]補(bǔ)=[-0]補(bǔ)=0.0000

3.反碼表示法:

n位定點(diǎn)小數(shù),反碼表示的定義為:[x]反=x

1>x≥0

(2-2-n)+x

0≥x>-1{n位定點(diǎn)整數(shù),反碼表示的定義為:[x]反={x

1>x≥0

(2n+1-1)+x

0≥x>-2n對(duì)于0,[+0.00...0]反=0.00...0[-0.00...0]反=10.00...0-0.00...1-0.00...0=1.11...11對(duì)于正數(shù)x=+x0.x1x2…xn,則

[x]反=x0.x1x2…xn對(duì)于負(fù)數(shù)x=-0.x1x2…xn,則有

[x]反=1.x1x2…xn比較反碼與補(bǔ)碼的公式:[x]反=(2-2-n)+x

[x]補(bǔ)=2+x可得到:[x]補(bǔ)=[x]反+2-nˉˉˉ

小結(jié):由于補(bǔ)碼表示對(duì)加減法運(yùn)算十分方便,因此目前機(jī)器中廣泛采用補(bǔ)碼表示法。在有些機(jī)器中,數(shù)用補(bǔ)碼表示,補(bǔ)碼存儲(chǔ),補(bǔ)碼運(yùn)算。也有些機(jī)器,數(shù)用原碼進(jìn)行存儲(chǔ)和傳送,運(yùn)算時(shí)改用補(bǔ)碼。還有些機(jī)器在做加減法時(shí)用補(bǔ)碼運(yùn)算,在做乘除法時(shí)用原碼運(yùn)算??傊赫龜?shù)x:[x]原=[x]反=[x]補(bǔ)負(fù)數(shù):x=x0x1x2…xn={[x]原=1x1x2…xn[x]反=1x1x2…xn———[x]補(bǔ)=[x]反+1例:解:已知[y]補(bǔ),求[-y]補(bǔ)<Ⅰ>[y]補(bǔ)

=0.y1

y2

yn…y=0.y1y2

yn…y=0.y1

y2

yn…[y]補(bǔ)

=1.y1

y2

yn+2-n…<Ⅱ>[y]補(bǔ)

=1.y1

y2

yn…[y]原

=1.y1y2

yn

-2-n…

y=(0.y

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論