計(jì)算機(jī)組成原理課程研討_第1頁(yè)
計(jì)算機(jī)組成原理課程研討_第2頁(yè)
計(jì)算機(jī)組成原理課程研討_第3頁(yè)
計(jì)算機(jī)組成原理課程研討_第4頁(yè)
計(jì)算機(jī)組成原理課程研討_第5頁(yè)
已閱讀5頁(yè),還剩35頁(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é)院《計(jì)算機(jī)組成原理》——課程研討計(jì)算機(jī)組成原理考查目標(biāo)1.理解單處理器計(jì)算機(jī)系統(tǒng)中各部件的內(nèi)部工作原理、組成結(jié)構(gòu)以及相互連接方式,具有完整的計(jì)算機(jī)系統(tǒng)的整機(jī)概念。2.理解計(jì)算機(jī)系統(tǒng)層次化結(jié)構(gòu)概念,熟悉硬件與軟件之間的界面,掌握指令集體系結(jié)構(gòu)的基本知識(shí)和基本實(shí)現(xiàn)方法。3.能夠運(yùn)用計(jì)算機(jī)組成的基本原理和基本方法,對(duì)有關(guān)計(jì)算機(jī)硬件系統(tǒng)中的理論和實(shí)際問(wèn)題進(jìn)行計(jì)算、分析,并能對(duì)一些基本部件進(jìn)行簡(jiǎn)單設(shè)計(jì)。第二章數(shù)據(jù)的表示和運(yùn)算

數(shù)制與編碼

定點(diǎn)數(shù)的表示和運(yùn)算

浮點(diǎn)數(shù)的表示和運(yùn)算算術(shù)邏輯單元ALU

定點(diǎn)數(shù)的表示和運(yùn)算定點(diǎn)數(shù)的表示定點(diǎn)數(shù):固定小數(shù)點(diǎn)的位置表達(dá)數(shù)值的機(jī)器數(shù)定點(diǎn)整數(shù):將小數(shù)點(diǎn)固定在機(jī)器數(shù)的最右側(cè)表達(dá)的整數(shù)定點(diǎn)小數(shù):將小數(shù)點(diǎn)固定在機(jī)器數(shù)的最左側(cè)表達(dá)的小數(shù)無(wú)符號(hào)數(shù):只表達(dá)0和正整數(shù)的定點(diǎn)整數(shù)有符號(hào)數(shù):表達(dá)負(fù)整數(shù)、0和正整數(shù)的定點(diǎn)整數(shù)符號(hào)位需要占用一個(gè)位,常用機(jī)器數(shù)的最高位0表示正數(shù)、1表示負(fù)數(shù)具有原碼、反碼、補(bǔ)碼、移碼定點(diǎn)數(shù)的表示和運(yùn)算1、無(wú)符號(hào)數(shù)的表示沒(méi)有符號(hào)位,使用全部字長(zhǎng)來(lái)表示數(shù)值大小字長(zhǎng)N=8時(shí),編碼:00000000~11111111

取值范圍:0~255(28-1)字長(zhǎng)N=16時(shí),編碼:0000~FFFFH

取值范圍:0~65535(216-1)字長(zhǎng)N=32時(shí),編碼:00000000~FFFFFFFFH

取值范圍:0~232-1定點(diǎn)數(shù)的表示和運(yùn)算2、有符號(hào)數(shù)的表示定點(diǎn)表示:約定機(jī)器中所有數(shù)據(jù)的小數(shù)點(diǎn)位置是固定不變的。通常將數(shù)據(jù)表示成純小數(shù)或純整數(shù)定點(diǎn)數(shù)x=x0x1x2…xn在定點(diǎn)機(jī)中表示如下(x0表示符號(hào)位,0代表正號(hào),1代表負(fù)號(hào))定點(diǎn)整數(shù)的小數(shù)點(diǎn)位置定點(diǎn)小數(shù)的小數(shù)點(diǎn)位置定點(diǎn)數(shù)的表示和運(yùn)算例:X=.純整數(shù):X=01010110.正數(shù),符號(hào)位取0

Y=-1101001.純整數(shù):Y=11101001.(原碼)負(fù)數(shù),符號(hào)位取1X=+0.11011Y=-0.10101符號(hào)位取0純小數(shù):X=0.11011符號(hào)位取1純小數(shù):X=1.10101(原碼)定點(diǎn)數(shù)的表示和運(yùn)算定點(diǎn)整數(shù)的表示范圍純整數(shù)的表示范圍為(x1x2…xn各位均為0時(shí)最?。桓魑痪鶠?時(shí)最大,x0為符號(hào)位)

0≤|x|≤2n

-1例如:n=8,最大值編碼:11111111

表示:11111111=100000000-1

=28-1目前計(jì)算機(jī)中多采用定點(diǎn)純整數(shù)表示,因此將定點(diǎn)數(shù)表示的運(yùn)算簡(jiǎn)稱(chēng)為整數(shù)運(yùn)算。定點(diǎn)數(shù)的表示和運(yùn)算定點(diǎn)小數(shù)的表示范圍純小數(shù)的表示范圍為(x1x2…xn各位均為0時(shí)最??;各位均為1時(shí)最大,x0為符號(hào)位)

0≤|x|≤1-2-n例如,n=8,最大值編碼:0.11111111

表示:0.11111111=1.0-0.00000001

=1-2-8定點(diǎn)數(shù)的表示和運(yùn)算定點(diǎn)數(shù)的運(yùn)算定點(diǎn)運(yùn)算包括移位、加、減、乘、除等幾種。1、定點(diǎn)數(shù)的位移運(yùn)算移位運(yùn)算的意義:計(jì)算機(jī)中小數(shù)點(diǎn)的位置是事先約定的,因此,二進(jìn)制表示的機(jī)器數(shù)在相對(duì)于小數(shù)點(diǎn)作n位左移或右移時(shí),其實(shí)質(zhì)上就是該數(shù)乘以或除以(n=1,2,…n)。算術(shù)移位規(guī)則:對(duì)于正數(shù),由于[x]原=[x]補(bǔ)=[x]反=真值,故移位后出現(xiàn)的空位均以0添之。對(duì)于負(fù)數(shù),由于原碼、補(bǔ)碼和反碼的表示形式不同,故機(jī)器數(shù)移位時(shí),對(duì)空位的添補(bǔ)規(guī)則也不同。定點(diǎn)數(shù)的表示和運(yùn)算不同碼制機(jī)器數(shù)算術(shù)移位后的空位添補(bǔ)規(guī)則真值碼制添補(bǔ)規(guī)則正數(shù)原碼、補(bǔ)碼、反碼0負(fù)數(shù)原碼0補(bǔ)碼左移添0右移添1反碼1定點(diǎn)數(shù)的表示和運(yùn)算由上表可以得出一下結(jié)論:(1)機(jī)器數(shù)為正時(shí),不論左移還是右移,添補(bǔ)代碼均為0。(2)由于負(fù)數(shù)的原碼數(shù)值部分與真值相同,故在移位時(shí)只要使符號(hào)位不變,其空位均添0即可。(3)由于負(fù)數(shù)的反碼各位除符號(hào)位外與負(fù)數(shù)的原碼正好相反,故移位后所添的代碼應(yīng)與原碼相反,即全部添1。(4)分析任意數(shù)的補(bǔ)碼可發(fā)現(xiàn),當(dāng)對(duì)其由低位向高位找到第一個(gè)“1”時(shí),在此“1”左邊的各位均與對(duì)應(yīng)的反碼相同,而在此“1”右邊的各位(包括此“1”在內(nèi))均與對(duì)應(yīng)的原碼相同。故負(fù)數(shù)的補(bǔ)碼左移時(shí),因空位出現(xiàn)在低位,則添補(bǔ)的代碼與原碼相同,即添0;右移時(shí)因空位出現(xiàn)在高位,則添補(bǔ)的代碼應(yīng)與反碼相同,即添1。定點(diǎn)數(shù)的表示和運(yùn)算算術(shù)移位和邏輯移位:有符號(hào)的移位為算術(shù)移位,無(wú)符號(hào)的移位為邏輯移位。邏輯移位的規(guī)則是,邏輯左移時(shí),高位移出,低位添0;邏輯右移時(shí),低位移出,高位添0。算術(shù)移位時(shí),分為小循環(huán)左、右移位和大循環(huán)左、右移位。(小循環(huán)移位不經(jīng)過(guò)進(jìn)位位,大循環(huán)移位經(jīng)過(guò)進(jìn)位位)。定點(diǎn)數(shù)的表示和運(yùn)算定點(diǎn)數(shù)的表示和運(yùn)算2、原碼定點(diǎn)數(shù)加減運(yùn)算數(shù)的原碼與真值之間的關(guān)系比較簡(jiǎn)單,其算術(shù)運(yùn)算規(guī)則與十進(jìn)制運(yùn)算規(guī)則類(lèi)似,當(dāng)運(yùn)算結(jié)果不超出機(jī)器能表示的范圍,運(yùn)算結(jié)果仍然以原碼表示。它的最大缺點(diǎn)是在機(jī)器進(jìn)行加減運(yùn)算時(shí)比較復(fù)雜。當(dāng)兩數(shù)相加時(shí),先要判別兩數(shù)的符號(hào),如果兩數(shù)是同號(hào),則相加;兩數(shù)異號(hào),則相減。進(jìn)行減法運(yùn)算又要先比較兩數(shù)絕對(duì)值的大小,再用大絕對(duì)值減去小絕對(duì)值,最后還要確定運(yùn)算結(jié)構(gòu)的正負(fù)號(hào)。定點(diǎn)數(shù)的表示和運(yùn)算3、補(bǔ)碼定點(diǎn)數(shù)加減運(yùn)算二進(jìn)制加法是實(shí)現(xiàn)算術(shù)運(yùn)算的基礎(chǔ),采用補(bǔ)碼方案時(shí),加減法可以用統(tǒng)一的方式處理。實(shí)際上乘除法也可以通過(guò)加運(yùn)算和移位相結(jié)合的方案來(lái)實(shí)現(xiàn)。因此運(yùn)算器的核心也就是加法器的設(shè)計(jì)。補(bǔ)碼加減法運(yùn)算法則1:[X]補(bǔ)+[Y]補(bǔ)=[X+Y]補(bǔ)兩補(bǔ)碼數(shù)相加,符號(hào)位與碼值一起參加運(yùn)算,符號(hào)位相加后如果有進(jìn)位,則該位數(shù)字舍棄。下面分四種情況來(lái)證明補(bǔ)碼加法公式:定點(diǎn)數(shù)的表示和運(yùn)算證明條件是:|X|<1,|Y|<1,|X+Y|<1。(1)X>0,Y>0,則X+Y>0;

兩正數(shù)相加,和一定是正數(shù),與原碼相同。根據(jù)補(bǔ)碼的定義可得此結(jié)論。[X]補(bǔ)=X0<=X<1

2+X-1<=X<=0MOD2

所以,[X]補(bǔ)+[Y]補(bǔ)=X+Y=[X+Y]補(bǔ)(MOD2)例,X=+0.1001,Y=+0.0101,X+Y=?[X]補(bǔ)01001+[Y]補(bǔ)0010101110定點(diǎn)數(shù)的表示和運(yùn)算(2)X>0,Y<0,則X+Y>0或X+Y<0;

相加兩數(shù)一正一負(fù),和有正負(fù)兩種可能。根據(jù)補(bǔ)碼的定義可得:[X]補(bǔ)=X,[Y]補(bǔ)=2+Y

所以,[X]補(bǔ)+[Y]補(bǔ)=X+2+Y=2+(X+Y)

當(dāng)X+Y>0時(shí),2+(X+Y)>2,進(jìn)位2必丟失,又因?yàn)?X+Y)>0,

所以[X]補(bǔ)+[Y]補(bǔ)=X+Y=[X+Y]補(bǔ)(MOD2)

當(dāng)X+Y<0時(shí),2+(X+Y)<2,又因?yàn)?X+Y)<0,所以[X]補(bǔ)+[Y]補(bǔ)=2+(X+Y)=[X+Y]補(bǔ)(MOD2)定點(diǎn)數(shù)的表示和運(yùn)算例,X=+0.1011,Y=-0.0101,X+Y=?[X]補(bǔ)=0.1011,[Y]補(bǔ)=1.1011[X]補(bǔ)0.1011+[Y]補(bǔ)1.1011(1)0.0110所以,X+Y=0.0110(3)X<0,Y>0,則X+Y>0或X+Y<0;

同(2)情況一樣。定點(diǎn)數(shù)的表示和運(yùn)算(4)X<0,Y<0,則X+Y<0;

兩相加得數(shù)都是負(fù)數(shù),則其和也一定是負(fù)數(shù)。根據(jù)補(bǔ)碼的定義可得:[X]補(bǔ)+[Y]補(bǔ)=2+X+2+Y=2+(2+X+Y)(X+Y)為負(fù)數(shù),而其絕對(duì)值小于1,那么(2+X+Y)就一定是小于2大于1得數(shù),進(jìn)位“2”丟失。又因?yàn)?X+Y)<0

所以,[X]補(bǔ)+[Y]補(bǔ)=2+(X+Y)=[X+Y]補(bǔ)(MOD2)定點(diǎn)數(shù)的表示和運(yùn)算產(chǎn)生“溢出”的原因:分析可知,當(dāng)最高有效數(shù)值位的運(yùn)算進(jìn)位與符號(hào)位的運(yùn)算進(jìn)位不一致時(shí),將產(chǎn)生運(yùn)算“溢出”。進(jìn)一步結(jié)論:

當(dāng)最高有效位產(chǎn)生進(jìn)位而符號(hào)位無(wú)進(jìn)位時(shí),產(chǎn)生上溢;當(dāng)最高有效位無(wú)進(jìn)位而符號(hào)位有進(jìn)位時(shí),產(chǎn)生下溢。定點(diǎn)數(shù)的表示和運(yùn)算“溢出”檢測(cè)方法:為了判斷“溢出”是否發(fā)生,可采用兩種檢測(cè)的方法。第一種方法:采用雙符號(hào)位法,稱(chēng)為“變形補(bǔ)碼”或“模4補(bǔ)碼”,可使模2補(bǔ)碼所能表示的數(shù)的范圍擴(kuò)大一倍。第二種溢出檢測(cè)方法:采用“單符號(hào)位法”。當(dāng)最高有效位產(chǎn)生進(jìn)位而符號(hào)位無(wú)進(jìn)位時(shí),產(chǎn)生上溢;當(dāng)最高有效位無(wú)進(jìn)位而符號(hào)位有進(jìn)位時(shí),產(chǎn)生下溢。故:溢出邏輯表達(dá)式為:

V=Cf⊕Co其中:

Cf為符號(hào)位產(chǎn)生的進(jìn)位,Co為最高有效位產(chǎn)生的進(jìn)位。(顯然:此邏輯關(guān)系可用異或門(mén)方便地實(shí)現(xiàn))

在定點(diǎn)機(jī)中,當(dāng)運(yùn)算結(jié)果發(fā)生溢出時(shí),機(jī)器通過(guò)邏輯電路自動(dòng)檢查出溢出故障,并進(jìn)行中斷處理。浮點(diǎn)數(shù)的表示和運(yùn)算浮點(diǎn)數(shù)的表示把一個(gè)數(shù)的有效數(shù)字和數(shù)的范圍在計(jì)算機(jī)的一個(gè)存儲(chǔ)單元中分別予以表示數(shù)的小數(shù)點(diǎn)位置隨比例因子的不同而在一定范圍內(nèi)自由浮動(dòng)一個(gè)十進(jìn)制數(shù)N可以寫(xiě)成

N=10e×M一個(gè)R進(jìn)制數(shù)N可以寫(xiě)成

N=Re×M浮點(diǎn)數(shù)的表示和運(yùn)算階碼和尾數(shù)用定點(diǎn)小數(shù)表示,給出有效數(shù)字的位數(shù)決定了浮點(diǎn)數(shù)的表示精度表達(dá)指數(shù)部分用整數(shù)形式表示,指明小數(shù)點(diǎn)在數(shù)據(jù)中的位置決定浮點(diǎn)數(shù)的表示范圍早期計(jì)算機(jī)表達(dá)法浮點(diǎn)數(shù)的表示和運(yùn)算32位單精度浮點(diǎn)數(shù)E:含階符的階碼,8位階碼采用移碼方式來(lái)表示正負(fù)指數(shù)S:1位符號(hào)位0表示正數(shù)1表示負(fù)數(shù)

M:尾數(shù),23位小數(shù)表示,小數(shù)點(diǎn)放在尾數(shù)域最前面IEEE754標(biāo)準(zhǔn)浮點(diǎn)數(shù)的表示和運(yùn)算64位雙精度浮點(diǎn)數(shù)E:含階符的階碼,11位S:1位符號(hào)位M:尾數(shù),52位小數(shù)IEEE754標(biāo)準(zhǔn)浮點(diǎn)數(shù)的表示和運(yùn)算浮點(diǎn)數(shù)的規(guī)格化例:156.78=15.678×101=

1.5678×102 =0.15678×103=RE×M那么,計(jì)算機(jī)中究竟采用哪種數(shù)據(jù)形式?對(duì)于二進(jìn)制數(shù)1011.1101 =0.10111101×2+4 =10.111101×2+2 =1.0111101×2+3(規(guī)格化表示法)

=1.0111101×2+11(規(guī)格化表示法)

=RE×M二進(jìn)制數(shù)浮點(diǎn)數(shù)的表示和運(yùn)算規(guī)格化表示原則尾數(shù)最高有效位為1,隱藏,并且隱藏在小數(shù)點(diǎn)的左邊(即:1≤M<2)32位單精度浮點(diǎn)數(shù)規(guī)格化表示 x=(-1)s×(1.M)×2E-127 e=E-127(E=e+127)64位雙精度浮點(diǎn)數(shù)規(guī)格化表示 x=(-1)s×(1.M)×2E-1023 e=E-1023(E=e+1023)指數(shù)真值e用偏移碼形式表示為階碼EIEEE754標(biāo)準(zhǔn)④

X=(-1)s×1.M×2e

=+(1.011011)×23

=+1011.011=(11.375)10②指數(shù)e=階碼-127=10000010-01111111

=00000011=(3)10③包括隱藏位1的尾數(shù)1.M=1.011011例1:浮點(diǎn)機(jī)器數(shù)(41360000)16,求真值①十六進(jìn)制數(shù)展開(kāi)成二進(jìn)制數(shù)01000001001101100000000000000000S階碼E(8位)尾數(shù)M(23位)浮點(diǎn)數(shù)的表示和運(yùn)算例2:真值20.59375,求32位單精度浮點(diǎn)數(shù)①分別將整數(shù)和分?jǐn)?shù)部分轉(zhuǎn)換成二進(jìn)制數(shù)

20.59375=10100.10011②移動(dòng)小數(shù)點(diǎn),使其在第1、2位之間10100.10011=1.010010011×24e=4S=0E=4+127=131=10000011M=010010011③得到32位浮點(diǎn)數(shù)的二進(jìn)制存儲(chǔ)格式為:0

1000001

101001001100000000000000=(41A4C000)16浮點(diǎn)數(shù)的表示和運(yùn)算32位單精度規(guī)格化浮點(diǎn)數(shù)E=1(00000001)~254(11111110)e=-126~+127表達(dá)的數(shù)據(jù)范圍(絕對(duì)值):最小值:

e=-126,M=0(1.M=1) 十進(jìn)制表達(dá):2-126≈1.18×10-38最大值:

e=127,M=11…1(23個(gè)1)

1.M=1.11…1(23個(gè)1)=2-2-23

十進(jìn)制表達(dá):(2-2-23)×2127

≈2×2127≈3.40×1038IEEE754標(biāo)準(zhǔn)浮點(diǎn)數(shù)的表示和運(yùn)算64位雙精度規(guī)格化浮點(diǎn)數(shù)E=1~2046e=-1022~表達(dá)的數(shù)據(jù)范圍(絕對(duì)值):最小值:e=-1022,M=0(1.M=1)十進(jìn)制表達(dá):2-1022≈2.23×10-308最大值:e=1023,M=11…1(52個(gè)1) 1.M=1.11…1(52個(gè)1)=2-2-52十進(jìn)制表達(dá):(2-2-52)×21023 ≈2×21023≈1.79×10308IEEE754標(biāo)準(zhǔn)浮點(diǎn)數(shù)的表示和運(yùn)算32位單精度浮點(diǎn)數(shù)真值0的機(jī)器數(shù)(機(jī)器零)階碼E=0,尾數(shù)M=0正0:S=0,負(fù)0:S=1非規(guī)格化浮點(diǎn)數(shù):階碼E=0,尾數(shù)M≠0規(guī)格化浮點(diǎn)數(shù):階碼E=1~254(11111110)無(wú)窮大的機(jī)器數(shù)階碼E=全1(11111111),尾數(shù)M=0+∞:S=0,-∞:S=1NaN(notanumber,不是一個(gè)數(shù))階碼E=全1(11111111),尾數(shù)M≠0用來(lái)通知異常情況IEEE754標(biāo)準(zhǔn)浮點(diǎn)數(shù)的表示和運(yùn)算浮點(diǎn)數(shù)的運(yùn)算浮點(diǎn)數(shù)加法和減法運(yùn)算設(shè)有兩個(gè)浮點(diǎn)數(shù)x和y,它們分別為

x=2m·Mx

y=2n·My

其中m和n分別為數(shù)x和y的階碼,Mx和My為數(shù)x和y的尾數(shù)。浮點(diǎn)數(shù)的表示和運(yùn)算(1)對(duì)階對(duì)階的原則:小階向大階看齊。若m>n則將操作數(shù)y的尾數(shù)右移一位,y的階碼n加1,直到m=n。若m<n則將操作數(shù)x的尾數(shù)右移一位,x的階碼m加1,直到m=n。(2)尾數(shù)相加尾數(shù)相加與定點(diǎn)數(shù)的加、減法相同

浮點(diǎn)數(shù)的表示和運(yùn)算(3)結(jié)果規(guī)格化當(dāng)運(yùn)算結(jié)果的尾數(shù)部分不是11.0××…×或00.1××…×的形式時(shí),則應(yīng)進(jìn)行規(guī)格化處理。當(dāng)尾數(shù)符號(hào)位01或10需要右規(guī)。右規(guī)的方法是尾數(shù)連同符號(hào)位右移一位、和的階碼加1,右規(guī)處理后就可得到11.0××…×或00.1××…×的形式,即成為規(guī)格化的數(shù)。當(dāng)運(yùn)算結(jié)果的符號(hào)位和最高有效位為11.1或00.0時(shí)需要左規(guī)。左規(guī)的方法是尾數(shù)連同符號(hào)位一起左移一位、和的階

溫馨提示

  • 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)論