運算方法和運算器數據的表示方法_第1頁
運算方法和運算器數據的表示方法_第2頁
運算方法和運算器數據的表示方法_第3頁
運算方法和運算器數據的表示方法_第4頁
運算方法和運算器數據的表示方法_第5頁
已閱讀5頁,還剩35頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

關于運算方法和運算器數據的表示方法第二章運算方法和運算器2.1數據表示2.1.1概述一、什么叫數據表示是指能由計算機硬件直接識別的數據類型,如定點數、浮點數等。而所謂“由硬件直接識別”意味著某種數據類型可以用計算機硬件直接表示出來,并能由計算機指令直接調用該數據類型。第2頁,共40頁,2024年2月25日,星期天二、數據的表示方法數值數據:能進行算術運算能得到明確數值概念的數字數據。非數值數據:以數字數據形式進入計算機的聲音、圖像、文字等信息。第3頁,共40頁,2024年2月25日,星期天2.1.2數值數據的表示法一、進位計數制(簡稱進制)及相互轉換1、進制的概念

r進制:有0,…,r-1共r個單位數(unit);逢r進一。任何一個r進制數N可以表示為:第4頁,共40頁,2024年2月25日,星期天2.1.2數值數據的表示法若r=2,二進制數,各位的權是以2為底的冪;若r=8,八進制數,各位的權是以8為底的冪,有八個數碼:0、1、2、3、4、5、6、7;若r=10,十進制數,各位的權是以10為底的冪;若r=16,是十六進制數,其各位的權是以16為底的冪,有16個數碼:0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F。為了明確表示一個數所采用的進位計數制,可以該數的后面加上下標(B)、(Q)、(D)、(H),分別表示該數為二進制、八進制、十進制和十六進制第5頁,共40頁,2024年2月25日,星期天2.1.2數值數據的表示法2、為什么計算機中采用二進制(1)運算簡單;(2)易于物理實現(容易找到合適的器件);(3)易于表示邏輯值的真與假(布爾代數)。第6頁,共40頁,2024年2月25日,星期天2.1.2數值數據的表示法3、進制轉換r進制數轉換為十進制數:各位按權展開求和;例1.分別把二進制數1011.01和十六進制數F0.C用十進制表示十進制數轉換為r進制數:整數部分和小數部分分別進行轉換第7頁,共40頁,2024年2月25日,星期天十進制數轉換為r進制數整數部分的轉換步驟:①把r寫成十進制數;②將N除以r,記錄商和余數,并用r進制表示余數,這余數便是用r進制表示的數的最低位數字;③把上次的商進行②中所述除以r取余的運算,用r進制表示余數;重復這種運算直到商為0,這時的余數即為十進制數N用r進制表示時的最高位數字。例2.把十進制數103用二進制表示例3.把十進制數506用十六進制表示第8頁,共40頁,2024年2月25日,星期天十進制數轉換為r進制數小數部分的轉換步驟:①把r寫成十進制數;②將N乘以r,記錄積的整數部分和小數部分,并用r進制表示整數部分,該整數即為轉換后r進制小數的最高位;③把上次積的小數部分進行②中所述乘以r取整的運算,用r進制表示積的整數部分;重復這種運算直到積的小數部分為0,或者達到所要求的位數,這時的整數部分即為十進制數N轉換成r進制小數的最低位。例4.把十進制0.8125用八進制表示第9頁,共40頁,2024年2月25日,星期天二進制與八進制、

十六進制的相互轉換從二進制轉換成十六進制時,從小數點位置開始,整數部分向左,小數部分向右,每四位二進制數為一組用一位十六進制的數字來表示,不足四位的用0補足,就是相應十六進制的表示。從二進制轉換成八進制時,從小數點位置開始,整數部分向左,小數部分向右,每三位二進制數為一組用一位八進制的數字來表示,不足三位的用0補足,就是相應八進制的表示。例5.把二進制11011010111.11101用十六進制表示例6.把八進制數62.31用二進制表示第10頁,共40頁,2024年2月25日,星期天2.1.2數值數據的表示法二、數的機器碼表示(一)符號數、機器數、真值1、真值:帶有正、負號的數據;2、機器數:符號位數值化了的數;(因為計算機只認識0和1,不認識+和-)例:1101若為原碼機器數,則其真值為–5或-101,后者往往也叫符號數。第11頁,共40頁,2024年2月25日,星期天二、數的機器碼表示(二)定點數與浮點數1、定點數(Fix-PointNumber)(1)含義:定點、浮點的“點”都指二進制數中的小數點。定點指小數點位置固定。(2)常見的兩種定點數:定點整數(Integer)定點小數(Fraction)第12頁,共40頁,2024年2月25日,星期天1、定點數符號位

數值部分小數點位置小數點位置符號位

數值部分注意小數點均為隱含表示。定點整數(Integer):小數點固定于最低位右邊

Dn-1Dn-2………D0●定點小數(Fraction):小數點固定于最高有效位左邊

Dn-1●Dn-2………D0第13頁,共40頁,2024年2月25日,星期天(3)定點數常見的機器碼編碼形式定點、浮點表示解決的是小數點的表示方法;而編碼解決的是符號位如何數值化的問題。但編碼后會對運算帶來什么樣的影響?于是先后使用了符號位編碼時數值位不變、符號位編碼時數值位按一定規(guī)律變化的幾種不同的編碼方法。這就是應該了解的原碼、反碼、補碼、移碼等編碼方案。數X的原碼記作[X]原,反碼記作[X]反,補碼記作[X]補。第14頁,共40頁,2024年2月25日,星期天定點整數-原碼定義:對于一個二進制數而言,若用最高位表示數的符號(常以0表示正數,以1表示負數),其余各位表示數值的本身,則稱為該二進制數的原碼表示法。(1)設某二進制數為X=+Xn-2Xn-3...X1X0B,即為正數則:[X]原=0Xn-2Xn-3...X1X0B=X注意:[+0]原=00...00B(共n位)=0(2)設某二進制數為X=-Xn-2Xn-3...X1X0B,即為負數則:[X]原=1Xn-2Xn-3...X1X0B=100...00B+Xn-2Xn-3...X1X0B=2n-1-X注意:[-0]原=10...00B(共n位)數的表示范圍:-2n-1+1≤X≤2n-1-1第15頁,共40頁,2024年2月25日,星期天則原碼表示的定義是:

x2n-1–x=2n-1+|x|-2n-1+1≤x≤00≤x≤2n-1-1[x]原

=第16頁,共40頁,2024年2月25日,星期天定點整數-反碼定義:正數反碼與原碼相同。負數反碼等于其原碼符號位不變其余位取反。(1)設某二進制數為X=+Xn-2Xn-3...X1X0B,即為正數則:[X]反

=[X]原

=0Xn-2Xn-3...X1X0B=X注意:[+0]反=[+0]原=00...00B(共n位)=0(2)設某二進制數為X=-Xn-2Xn-3...X1X0B,即為負數則:[X]反+|X|=2n-1所以[X]反

=2n-1+X注意:[-0]反

=11...11B(共n位)反碼數的表示范圍:-2n-1+1≤X≤2n-1-1第17頁,共40頁,2024年2月25日,星期天

x(2n–1)+x-2n-1+1≤x≤00≤x≤2n-1-1[x]反

=反碼表示的定義是:第18頁,共40頁,2024年2月25日,星期天概念

對時:(假設對為1時)

?一是將時針退10-9=1;

?一是將時針向前撥

10+3=1

這兩種方法都能對準到1時。結論:負數用補碼表示時,可以把減法轉化為加法。定點整數-補碼

由此可以看出,減9和加3是等價的,就是說3是(-9)對12的補碼,可以用數學公式表示:

-9=+3(mod12)第19頁,共40頁,2024年2月25日,星期天模的概念計算機中運算器、寄存器、計數器都有一定的位數,不可能容納無限大的任意數。當運算結果超出實際的最大表示范圍,就會發(fā)生溢出,此時所產生的溢出量就是模(module)。

?定點小數的溢出量為2,即以2為模;

?一個字長為n位的定點整數的溢出量為2n,即以2n為模。第20頁,共40頁,2024年2月25日,星期天定點整數-補碼定義:假定某機器的字長為n位,那么它的模就是2n,它是一個n+1位數100...0B,由于計算機只能表示n位數,因此數2n在計算機中只能以n個零表示,而該數最左邊的1自動丟失。由以上例子及討論所得:[X]補=2n

+X對于正數X,[X]補=[X]原=[X]反

=X對于負數X,[X]補=2n+X=0-|X|對于+0:[+0]補=2n+0=0+0=0

對于-0:[-0]補=2n+(-0)=0-0=0總結:已經解決了正負零問題(歸一化)。數的表示范圍:-2n-1≤X≤2n-1-1第21頁,共40頁,2024年2月25日,星期天

x2n+x=2n–|x|

-2n-1

x

≤00≤

x

2n-1-1[x]補

=(mod2n)補碼表示的定義是:第22頁,共40頁,2024年2月25日,星期天[例]以定點整數為例,說明各種編碼表示的范圍。真值真值原碼反碼補碼移碼+127+1+00-1-127-128+0111,1111+0000,00010000,00000000,0000-0000,0001-0111,1111-1000,00000111,11110000,00010000,00001000,00001000,00011111,1111不能表示0111,11110000,00010000,00001111,11111111,11101000,0000不能表示0111,11110000,00010000,00000000,00001111,11111000,00011000,00001111,11111000,00011000,00001000,00000111,11110000,00010000,0000第23頁,共40頁,2024年2月25日,星期天定點小數-原碼NsN1N2…Nn定義:[X]

=例:X=0.10110;-0.10110;0.0000[X]原

=010110;110110;0000010000

結論:原碼為符號位加數的絕對值,0正1負

原碼零有兩個編碼,+0和-0編碼不同

原碼難以用于加減運算,但乘除方便X1-X-1<X≤0

0≤X<1第24頁,共40頁,2024年2月25日,星期天定點小數-反碼NsN1N2…Nn定義:[X]反=

例:X=0.10110;-0.10110;0.0000[X]反=010110;101001;0000011111

結論:反碼為符號位跟數每一位的反,0正1負

反碼零有二個編碼,分+0和-0

反碼難以用于加減運算X

(2-2-n)+X

-1<X≤00≤X<1第25頁,共40頁,2024年2月25日,星期天定點小數-補碼NsN1N2…Nn

定義:[X]補

=例:X=0.10110;-0.10110;0.0000[X]補

=010110;101010;00000結論:補碼最高一位是符號位,0正1負

補碼表示為2*符號位+數的真值

補碼零只有一個編碼,故能表示-1

補碼能很好地用于加減(乘除)運算X2+X

-1≤X≤0MOD20≤X<1第26頁,共40頁,2024年2月25日,星期天(3)定點數常見的機器碼編碼形式例:X=-0.101101,Y=+101101[X]原=1.101101,[Y]原=0101101[X]反=1.010010,[Y]反=0101101[X]補=1.010011,[Y]補=0101101三種編碼方案簡要比較:正數相同,負數有別。補碼中“0”有唯一的機器表示;補碼的最大優(yōu)點在于其符號位可以與數值位共同參與運算而易于得到正確的補碼結果。移碼我們放在浮點數的內容中去了解。(4)定點數的表示范圍表示數的范圍非常有限-引入浮點數第27頁,共40頁,2024年2月25日,星期天2、浮點數(1)浮點數的一般形式N=(R的E次冪)xM其中,N:要表示的浮點數;

R(Radix):基數,常取2則N=2E*M;

M(Mantissa):尾數,一般為定點小數;

E(Exponent):階碼,一般為定點整數。可見,一個浮點數在機器中是用兩個定點數表示第28頁,共40頁,2024年2月25日,星期天浮點數的規(guī)格化:為充分利用尾數的有效位數,提高數據的表示精度,修改階碼同時左右移小數點,使尾數:1/2≤|M|<1浮點數與定點數的比較定點數:表示方法簡單直觀,但表示數的范圍小.浮點數:表示的范圍遠比定點數大;運算過程中隨時對中間結果的浮點數規(guī)格化,所以不易丟失有效數據,提高了運算的精度,但浮點運算教復雜.EsE1E2….EmMsM1M2….Mn階符階碼數符尾數第29頁,共40頁,2024年2月25日,星期天例1:寫出二進制-110.0011在計算機中的浮點數形式.設階碼取4位補碼,尾數是8位原碼

解:-110.0011=-0.1100011*2+3

浮點數形式為001111100011階符尾符浮點數舉例第30頁,共40頁,2024年2月25日,星期天浮點數舉例

例2:計算機浮點數格式如下,

寫出x=0.0001101B的規(guī)格化形式,

階碼為4位補碼,尾數是8位原碼

x=0.0001101=0.1101*2-3[-3]補=[-011]補=[1011]補=1101B

規(guī)格化浮點數形式是110101101000第31頁,共40頁,2024年2月25日,星期天(2)移碼的說明移碼,又名增碼、余碼,是原碼、反碼、補碼后的又一種編碼形式,通常用于表示浮點數的階碼。若定點整數移碼形式為x0x1x2…xn時,移碼的定義為:

[x]移=2n+X,

-2n≤X<2n

其中,X--真值,n--X數值位的位數。移碼(增碼)0-128+127負數正數機器數第32頁,共40頁,2024年2月25日,星期天例:X=+10101,Y=-10101。n=5(數值位的位數)

[X]移=100000+10101=110101[Y]移=100000-10101=001011第33頁,共40頁,2024年2月25日,星期天三、BCD碼1、BCD編碼:BinaryCodedDecimal,即二進制編碼的十進制數,種類有很多,如Gray碼、余3碼、8421BCD碼等。8421BCD碼:用四位二進制數表示一位十進制數0-9。

0000-0,0001-1,…,1001-92、編碼目的:以機器能表示與識別的二進制形式存在,又比純二進制數(purebinary)更接近日常所習慣的十進制數。第34頁,共40頁,2024年2月25日,星期天2.1.3非數值數據的表示-除數值數據以外的如文字、符號、圖象、語言等。一、字符數據字符指字母、符號、控制字符等。按什么樣的規(guī)則把字符表示成0、1形式是人為確定的。具體方案有多種,其中流行的是ASCII碼,即AmericanStandardCodeforInformationInterchange,含四類128種字符。二、邏輯數據不帶符號的一位二進制數。只有0,1兩個值,代表兩種成對的邏輯概念。不同于數學中0和1的數值概念。對邏輯數據可以進行邏輯運算,如“與”、“或”、“非”、“同或”、“

溫馨提示

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

評論

0/150

提交評論