新編計(jì)算機(jī)導(dǎo)論 課件 3-3 數(shù)值型數(shù)據(jù)的表示-1_第1頁(yè)
新編計(jì)算機(jī)導(dǎo)論 課件 3-3 數(shù)值型數(shù)據(jù)的表示-1_第2頁(yè)
新編計(jì)算機(jī)導(dǎo)論 課件 3-3 數(shù)值型數(shù)據(jù)的表示-1_第3頁(yè)
新編計(jì)算機(jī)導(dǎo)論 課件 3-3 數(shù)值型數(shù)據(jù)的表示-1_第4頁(yè)
新編計(jì)算機(jī)導(dǎo)論 課件 3-3 數(shù)值型數(shù)據(jù)的表示-1_第5頁(yè)
已閱讀5頁(yè),還剩21頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

計(jì)算機(jī)科學(xué)導(dǎo)論計(jì)算的基礎(chǔ)3數(shù)值型數(shù)據(jù)的表示(上)無(wú)符號(hào)數(shù)01定點(diǎn)數(shù)與浮點(diǎn)數(shù)03有符號(hào)數(shù)02本節(jié)CAPACITY內(nèi)容導(dǎo)言計(jì)算機(jī)編碼把信息編成二進(jìn)制數(shù)碼的方法,稱為計(jì)算機(jī)的編碼。數(shù)值數(shù)據(jù)和字符等其它數(shù)據(jù)需采用不同的編碼方式。在計(jì)算機(jī)中參與運(yùn)算的數(shù)有兩大類:無(wú)符號(hào)數(shù)和有符號(hào)數(shù)。無(wú)符號(hào)數(shù)無(wú)符號(hào)數(shù)是指沒(méi)有符號(hào)的數(shù),即非負(fù)整數(shù)。機(jī)器字長(zhǎng)中的全部數(shù)位均用來(lái)表示整數(shù)值的大小,相當(dāng)于數(shù)的絕對(duì)值。無(wú)符號(hào)數(shù)的表示范圍:字長(zhǎng)為n位的無(wú)符號(hào)數(shù)的表示范圍是0~(2n-1)如機(jī)器字長(zhǎng)為16位,則無(wú)符號(hào)數(shù)的表示范圍是0~(216-1),即0~65535無(wú)符號(hào)數(shù)有符號(hào)數(shù)據(jù)的表示日常,我們?cè)诮^對(duì)值前面加“+”、“-”符號(hào)來(lái)表示有符號(hào)數(shù)。在計(jì)算機(jī)中,有符號(hào)數(shù)中的正負(fù)號(hào)及小數(shù)中的小數(shù)點(diǎn)都以二進(jìn)制形式表示。有符號(hào)數(shù)數(shù)的符號(hào)數(shù)值化在計(jì)算機(jī)中,有符號(hào)數(shù)的符號(hào)同樣用0和1表示。在計(jì)算機(jī)中,數(shù)的最高位定義為符號(hào)位,用“0”表示正數(shù),用“1”表示負(fù)數(shù)。機(jī)器數(shù)和真值連同符號(hào)位一起數(shù)值化了的數(shù),稱為機(jī)器數(shù),能被計(jì)算機(jī)識(shí)別的數(shù)稱為機(jī)器數(shù)。把機(jī)器數(shù)所表示的真實(shí)數(shù)值稱為機(jī)器數(shù)的真值。真值是正、負(fù)號(hào)加某進(jìn)制數(shù)絕對(duì)值的形式。一般的,機(jī)器數(shù)與真值之間存在著一一對(duì)應(yīng)的關(guān)系。有符號(hào)數(shù)機(jī)器數(shù)和真值【例】有符號(hào)數(shù)真值機(jī)器數(shù)+52=+0110100——0

0110100

-52=

-0110100——1

0110100符號(hào)位數(shù)值位機(jī)器數(shù)的表示形式在計(jì)算機(jī)中,機(jī)器數(shù)有三種表示方法:原碼、反碼和補(bǔ)碼。引入三種編碼的目的,主要是為了將減法運(yùn)算轉(zhuǎn)換為加法運(yùn)算,提高運(yùn)算速度。有符號(hào)數(shù)原碼用最高位表示符號(hào)位,后面是數(shù)值部分,數(shù)值部分就是原來(lái)的數(shù)值,即真值的絕對(duì)值,所以原碼表示又稱為帶符號(hào)的絕對(duì)值表示。原碼表示規(guī)則號(hào)位:0表示正數(shù)、1表示負(fù)數(shù)。數(shù)值位:二進(jìn)制數(shù)的絕對(duì)值。有符號(hào)數(shù)原碼表示的例子為書寫方便,數(shù)X的原碼、反碼、補(bǔ)碼分別記做[X]原、[X]反、[X]補(bǔ)。有符號(hào)數(shù)X=+101011[X]原=0101011X=-101011[X]原=1101011機(jī)器數(shù)的真值機(jī)器數(shù)有符號(hào)數(shù)【例】計(jì)算+127的原碼:解答:[+127]原=01111111B【例】計(jì)算-127的原碼:解答:[-127]原=11111111B有符號(hào)數(shù)原碼的表示范圍[X]原=0Xn-2Xn-3…X0 0≤X≤2n-1-11Xn-2Xn-3…X0

-(2n-1-1)≤X≤0如字長(zhǎng)為8,則原碼表示范圍-(27-1)~27-1,即–127~+127。最大值01111111

最小值11111111求真值:帶符號(hào)數(shù)的原碼表示法簡(jiǎn)單易懂,而且與真值轉(zhuǎn)換方便原碼的用途原碼做乘除法運(yùn)算方便,兩數(shù)的符號(hào)和數(shù)值分別處理積的符號(hào)為兩數(shù)符號(hào)位的異或運(yùn)算結(jié)果積的數(shù)值部分為兩數(shù)絕對(duì)值相乘的結(jié)果有符號(hào)數(shù)原碼的缺點(diǎn)1.用原碼表示0時(shí)0的原碼不唯一,有兩種表示形式:若是整數(shù)即:X=+0,[X]原=00000000,X=-0,[X]原=10000000若是小數(shù)即:[+0]原=0.0000000,[-0]原=1.00000002.原碼在進(jìn)行兩個(gè)異符號(hào)數(shù)相加或兩個(gè)同符號(hào)數(shù)相減時(shí),需做減法運(yùn)算,判斷兩個(gè)數(shù)絕對(duì)值的大小,用絕對(duì)值大的減去絕對(duì)值小的。有符號(hào)數(shù)有符號(hào)數(shù)【例13】設(shè)X=+10101,Y=–11010求Z=X+Y:解:因?yàn)閄與Y異號(hào),所以X+Y實(shí)質(zhì)上要做減法運(yùn)算。若用原碼計(jì)算,則首先要比較X與Y的絕對(duì)值的大小,本題是│Y│>│X│;其次做減法│Y│–│X│。那么結(jié)果是正數(shù)還是負(fù)數(shù)呢?當(dāng)然哪個(gè)數(shù)的絕對(duì)值大,結(jié)果的符號(hào)就與哪個(gè)數(shù)的符號(hào)相同。這里|Y|>|X|,而Y為負(fù)數(shù)所以結(jié)果是:Z=–00101(即–5)或[Z]原=1,001011101010101-00101反碼正數(shù)的反碼和它的原碼相同;而負(fù)數(shù)反碼是符號(hào)位為“1”,數(shù)值部分按位求反。有符號(hào)數(shù)注意1、用反碼表示時(shí),0有兩種表示形式,即:

X=+0,[X]反=00000000, X=-0,[X]反=11111111反碼表示的例子有符號(hào)數(shù)X=+1101

[X]反=01101X=-1101[X]反=10010

X=+0.1011[X]反=0.1011X=-0.1011[X]反=1.0100機(jī)器數(shù)的真值機(jī)器數(shù)有符號(hào)數(shù)規(guī)定字長(zhǎng)的情況若字長(zhǎng)為8,則:如規(guī)定了字長(zhǎng),若不滿要求位數(shù)時(shí),需在真值絕對(duì)值前補(bǔ)0,然后再按位求反,轉(zhuǎn)換為反碼。

X=+1101

[X]反=

00001101X=-1101

[X]反=

11110010有符號(hào)數(shù)【例】計(jì)算+127的反碼:解答:[+127]反=01111111B【例】計(jì)算-127的反碼:解答:[-127]反=10000000B反碼表示范圍-(2n-1-1)~2n-1-1(n為字長(zhǎng))如字長(zhǎng)為8,則反碼表示范圍為-(27-1)~27-1,即–127~+127。有符號(hào)數(shù)有符號(hào)數(shù)反碼運(yùn)算規(guī)則

[X+Y]反=[X]反+[Y]反

[X-Y]反=[X]反+[-Y]反若符號(hào)位有進(jìn)位,則進(jìn)行循環(huán)進(jìn)位。有符號(hào)數(shù)【例14】已知X=+0.1101,Y=-0.0001,用反碼求X+Y?:解:[X]反=[+0.1101]反[Y]反=[-0.0001]反=0.1101=1.1110因此,

[X+Y]反=[+0.1101-0.0001]反=[+0.1101]反+[-0.0001]反=0.11000.11011.1110+10.1011+0.11001循環(huán)進(jìn)位有符號(hào)數(shù)反碼轉(zhuǎn)換為真值

由反碼求得原碼,再由原碼求得真值,即可得到反碼的真值。[[X]反]反=[X]原:符號(hào)位為“0”,則真值符號(hào)為正,數(shù)值位不變。符號(hào)位為“1”,則真值符號(hào)為負(fù),數(shù)值位為反碼的數(shù)值位按位取反。例如:反碼11011001B,符號(hào)位為1,將數(shù)值位按位取反,得到原碼10100110B,其真值為-0100110B即十進(jìn)制數(shù)-38有符號(hào)數(shù)反碼轉(zhuǎn)換為真值

由反碼求得原碼,再由原碼求得真值,即可得到反碼的真值。[[X]反]反=[X]原:符號(hào)位為“0”,則真值符號(hào)為正,數(shù)值位不變。符號(hào)位為“1”,則真值符號(hào)為負(fù),數(shù)值位為反碼的數(shù)值位按位取反。例如:反碼11011001B,符號(hào)位為1,將數(shù)值位按位取反,得到原碼10100110B,其真值為-0100110B即十進(jìn)制數(shù)-38有符號(hào)數(shù)【例15】已知字長(zhǎng)為8,X1=101,X2=11010,用反碼求X1-X2?解:結(jié)果符號(hào)位為1,表示是負(fù)數(shù),所以,X1-X2

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論