微機原理第二章:微型計算機的運算基礎與信息表示方法.ppt_第1頁
微機原理第二章:微型計算機的運算基礎與信息表示方法.ppt_第2頁
微機原理第二章:微型計算機的運算基礎與信息表示方法.ppt_第3頁
微機原理第二章:微型計算機的運算基礎與信息表示方法.ppt_第4頁
微機原理第二章:微型計算機的運算基礎與信息表示方法.ppt_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第2章 運算基礎與信息表示方法,內(nèi)容摘要:,信息在計算機中都是以二進制數(shù)的形式表示的。 本章從二進制數(shù)出發(fā),簡要介紹計算機中處理和表 示的數(shù)及其與其它數(shù)制之間的轉換,數(shù)據(jù)運算溢出 判斷及信息(數(shù)值信息與非數(shù)值信息)在計算機中 的表示方法。,學習要點: 進制數(shù)的基本概念、各種進制數(shù)之間的相互轉換 計算機中數(shù)值的表示方法、補碼運算及溢出判斷 十進制數(shù)、字母與字符的編碼 計算機中BCD碼運算時的調(diào)整規(guī)則,2.1 進位計數(shù)制及其之間的轉換,2.1 進位計數(shù)制,常用的計數(shù)制有: 二進制、十進制、十六進制等,進位計數(shù)制是一種按進位進行計數(shù)的制式,具有兩個特征: 進制數(shù)的基(Radix):進制數(shù)中數(shù)碼的個數(shù); 進制數(shù)的位權(Weight):進制數(shù)基的i次冪,即R i; (其中i指某位數(shù)碼在數(shù)據(jù)中的位置),2.1 進位計數(shù)制,一、十進制數(shù)(Decimal),特點:逢十進一; 且有0,1,9 十個數(shù)字符號,即數(shù)碼; 基數(shù):R10 位權:WRi 數(shù)碼在數(shù)值中所處的位置稱為位權W,是基數(shù)R的i次冪, 任何一個十進制數(shù) D 都可以寫成一個多項式和的形式:,上式為十進制數(shù)的按權展開式,位權是數(shù)碼在數(shù)值中位置的函數(shù),m,n為正整數(shù),(21),2.1 進位計數(shù)制,二、二進制數(shù)(Binary),特點:逢二進一,僅有兩個數(shù)碼,故R2,按權展開式:,m,n為正整數(shù),三、十六進制數(shù)(Hexadecimal),特點:逢十六進一,有0A,B,F,16個數(shù)碼,R16,按權展開式:,m,n為正整數(shù),(22),(23),2.1 進位計數(shù)制,小結:,1引入基和位權的概念 2任何進位計數(shù)制的數(shù)都可以用一個多項式的和來表達 3位權是位置 i 的函數(shù),與該位置上的數(shù)碼大小無關 4在數(shù)據(jù)中,數(shù)位上數(shù)碼代表數(shù)值的大小,是有該數(shù)碼與 位權的乘積所決定。,提示:,1書寫程序中,可使用任何計數(shù)制來表示數(shù)據(jù)。但為了區(qū)別 不同的計數(shù)制,應在數(shù)字后加后綴以示區(qū)別: 后綴 “B” 二進制、后綴 “D”十進制、后綴 “H”十六進制 2為了區(qū)分十六進制數(shù)和以字母表示的標號、變量等的不同, 當十六進制數(shù)首位為A- F時,一般其前面加“0”。,2.1.2 進位計數(shù)制之間的相互轉換,一、二進制數(shù)與十進制數(shù)之間的轉換,1二進制數(shù)轉換為十進制數(shù),直接用按權式展開,并求和即可。,2十進制數(shù)轉換為二進制數(shù) (直接法), 對于整數(shù)部分,采用“除2取余法”,直到商為零,余數(shù) 即為轉換成的二進制數(shù)整數(shù)部分(由低位到高位) ; 對于小數(shù)部分,采用“乘2取整法”,而積即為轉換成的 二進制數(shù)小數(shù)部分(由高位到低位) 。 最后將轉換結果合起來便得到相應的二進制數(shù)。,2.1.2 進位計數(shù)制之間的相互轉換,二、二進制數(shù)與與十六進制數(shù)之間的轉換,二進制和十六進制之間存在著一種特殊的關系,即一位十六進制數(shù) 可以用位二進制數(shù)表示,它們之間存在著直接且又唯一的對應關系。,1二進制數(shù)轉換為十六進制數(shù),以小數(shù)點為界,分別向左、右按四位進行分組,不足四 位者,再分別在最前面(整數(shù))或后面(小數(shù))補0,使之 成為四位后,每四位用一位16進制數(shù)來表示(見表22),2十六進制數(shù)轉換為二進制數(shù),將每一位十六進制數(shù)對應的二進制數(shù)寫出即可,小數(shù)點 位置不變。,2.1.2 進位計數(shù)制之間的相互轉換,三、十進制數(shù)與十六進制數(shù)之間的轉換,1十六進制數(shù)轉換為十進制數(shù),直接用按權式展開,并求和即可。,2十進制數(shù)轉換為十六進制數(shù), 對整數(shù)部分,采用“除16取余法”,直到商為零,而余數(shù) 即為轉換成的十六進制數(shù)整數(shù)部分(由低位到高位); 對小數(shù)部分,采用“乘16取整法”,其積即為轉換成的十六 進制數(shù)小數(shù)部分(由高位到低位)。 最后將轉換結果合起來便得到相應的十六進制數(shù)。, 間接法: 十進制數(shù) 二進制數(shù) 十六進制數(shù),轉換,轉換,2.2 數(shù)值信息的表示方法,數(shù)據(jù)是計算機處理的對象; 計算機中的數(shù)據(jù)都是以二進制數(shù)形式表示的。,2.2.1 計算機中數(shù)值信息的表示方法,一、符號的表示,1無符號二進制數(shù)的表示方法: 把全部有效位都用來表示數(shù)的大小,這種數(shù)稱為無符號數(shù) 2有符號二進制數(shù)的表示方法:,有符號數(shù)的正號(+)、負號(),計算機無法識別。 為了讓計算機能夠識別正、負號,必須用“ 0 ”和“1”來表示。 規(guī)定:數(shù)的最高位為符號位,用“0”表示正;用“1”表示負。, 這種在計算機中的數(shù)據(jù)表示形式稱為機器數(shù)。 機器數(shù)的具體形式又有多種,常用的有原碼、反碼和補碼。,例:,+52 = +0110100 = 0 0110100 真值 符號位 尾數(shù) -52 = - 0110100 = 1 0110100 真值 符號位 尾數(shù),2.2.1 計算機中數(shù)值信息的表示方法,二、小數(shù)點的表示方法: 1定點表示法:小數(shù)點在機器數(shù)中的位置是因定不變的, 定點整數(shù)形式:小數(shù)點被固定在數(shù)值位最低有效位之后, 定點小數(shù)形式:小數(shù)點被固定在符號位與尾數(shù)之間,定點表示法有兩種,采用那種形式,是事先約定的。,2.2.1 計算機中數(shù)值信息的表示方法,二、小數(shù)點的表示方法: 2浮點表示法:小數(shù)點在機器數(shù)中的位置是浮動可變的,X 表示為指數(shù)和尾數(shù)的形式: X= M2E E:浮點數(shù)的階碼,M:浮點數(shù)的尾數(shù), 因此,在計算機中,浮點數(shù)由階碼E、尾數(shù)M和整個數(shù) 的符號三部分組成。,INTEL公司定義的單精度浮點數(shù)其格式如下:,2.2.1 計算機中數(shù)值信息的表示方法,計算機中數(shù)據(jù)格式的使用, 在計算機中采用何種數(shù)據(jù)格式由程序設計者決定 在匯編語言中,對有符號數(shù)一般采用補碼格式 定點表示法一般用來表示純整數(shù)或純小數(shù) 浮點表示法的具體格式由程序設計者來選定,在匯編語 言中一般不采用 浮點表示法中: 階碼 E 的位數(shù)越多,表示的數(shù)值的絕對值越大 尾數(shù) M 的位數(shù)越長,表示的數(shù)值的精確度越高,2.2.1 計算機中數(shù)值信息的表示方法,三、原碼、反碼和補碼, 在計算機內(nèi)將數(shù)值和符號放在一起來表示數(shù)值數(shù)據(jù),是 一種對數(shù)值數(shù)據(jù)的編碼格式,這種數(shù)稱為機器數(shù)。 原碼、反碼和補碼也是一種對數(shù)值數(shù)據(jù)的編碼格式, 它們也是編碼數(shù)或機器數(shù)。,原碼,2.2.1 計算機中數(shù)值信息的表示方法,原碼的特點,(1)由定義可以看出: 一個數(shù)的原碼其尾數(shù)就是該數(shù)的真值, 其符號 “”,“”用“0”,“1”來表示 (2)原碼有兩個零: 正零和負零 例:八位機器數(shù): +0原 = 00000000 0原 = 10000000 優(yōu)點: 真值和其原碼表示之間的對應關系簡單,容易理解。 缺點: 計算機中用原碼進行加減運算比較困難; 0的表示不惟一。,2.2.1 計算機中數(shù)值信息的表示方法,三、原碼、反碼和補碼,反碼,(1)對于正數(shù):它的反碼等于原碼 (2)對于負數(shù):它的反碼等于它的原碼除符號位外,其余 各位取反。,例:X = 52 = 0110100 X原=1 0110100 X反=1 1001011,“0” 的反碼:+0反=00000000 0反 =11111111,三、原碼、反碼和補碼,例: X = 52 = 0110100 X原= 1 0 1 1 0 1 0 0 X反= 1 1 0 0 1 0 1 1 X補= X反+1= 1 1 0 0 1 1 0 0,3補碼, 若 X 0:則 X補= X反= X原 若 X 0:則 X補= X反+1,2.2.1 計算機中數(shù)值信息的表示方法,+0 補 = +0 原 = 0 0 0 0 0 0 0 0 0 補 = 0 反+ 1 = 1 1 1 1 1 1 1 1 + 1 = 1 0 0 0 0 0 0 0 0,4“0”的補碼:,三、原碼、反碼和補碼,對八位字長 進位被舍掉,補碼只有一個“0”,2.2.1 計算機中數(shù)值信息的表示方法,特殊數(shù):10000000, 在原碼中定義為: - 0 在反碼中定義為: - 127 在補碼中定義為: - 128 對無符號數(shù):10000000 B = 128,符號數(shù)的表示范圍:對8位二進制數(shù),原碼: 127 + 127 反碼: 127 + 127 補碼: 128 + 127, 一個數(shù)的機器數(shù)有多種形式,究竟采用哪一種形式, 必須事先約定。在微型計算機中,當表示有符號數(shù)時, 一般采用補碼形式表示機器數(shù)。,2.2.2 補碼運算及溢出, 在微機中任何有符號數(shù)一律用定點整數(shù)的補碼形式來表示,運算時連同符號一起參加算,其運算的結果自然也是定點整數(shù)的補碼形式。,一、補碼的運算規(guī)則: 已知兩個數(shù) X,Y 的補碼分別為X補,Y補 則有: X + Y 補 = X 補 + Y 補 X - Y 補 = X 補 + - Y 補 X 補補 = X 原 X 補變補 = -X 補,變補:對 X 補的每一位(包括符號位)都按位求反后加1, 便得 到這個數(shù)的負數(shù)的補碼。,舉例1:,X 0110100,Y +1110100,求 X+Y? X 原 10110100 X 補 X 反+1 11001100 Y 補 Y 原 01110100 所以: X+Y 補 X 補+ Y 補 11001100+01110100 01000000,采用定點整數(shù)的補碼形式來表示數(shù)據(jù),其符號位可以和 數(shù)值一樣參加運算;并將補碼的減法運算變?yōu)榧臃ㄟ\算。,舉例2:,X + 0001111B, (15) Y 0001100B,(12) 求 : X+Y 和 XY 的補碼 X 補 0 0 0 0 1 1 1 1 Y 補 1 1 1 1 0 1 0 0 Y 補 Y補 變補= 0 0 0 0 1 1 0 0 所以: X+Y 補 X 補+ Y 補0 0001111+1 1110100 1 00000011 XY 補 X 補+ Y補0 0001111+0 0001100 0 0011011,2.2.2 補碼運算及溢出,二、溢出及其判別方法, 是指運算的結果超出了機器的字長所能表示的數(shù)的范圍。 無論是用帶符號數(shù)和無符號數(shù),只要數(shù)的絕對值超過機器 所能表示的最大值,就會發(fā)生溢出。, 如八位機: 字長為8位二進制數(shù),他的補碼所能表示的數(shù)的范圍為 128 127 十六位機: 16位二進制數(shù)的補碼所能表示的數(shù)的范圍為 32768 32767,2.2.2 補碼運算及溢出,二、溢出及其判別方法,1符號位法,若參加補碼運算的兩個數(shù) X1和 X2,其補碼的符號位 分別為 S1和 S2,而運算結果的符號位用S來表示:,V1 產(chǎn)生溢出 V0,未溢出,表明:(1)不同符號數(shù)運算不產(chǎn)生溢出 (2)同符號數(shù)運算,結果的符號相同不產(chǎn)生溢出 (3)同符號數(shù)運算,結果的符號不相同必溢出 舉例:X165,X267;(按補碼計算),2.2.2 補碼運算及溢出,二、溢出及其判別方法,2進位位法,V1產(chǎn)生溢出,Cy:兩數(shù)相加時,最高位(符號位)向前進位的標志位 CD:兩數(shù)相加時,次高位向符號位的進位標志位,例:若:X01111000, Y01101001 則:XY11100001,計算中次高位向最高位有進位, 而最高位向前無進位,產(chǎn)生溢出。,兩正數(shù)相加得出負數(shù),結果出錯,2.3 非數(shù)值信息的表示方法,2.3.1 二進制編碼的十進制數(shù), 是指用二進制編碼來表示十進制數(shù)。 這種表示方法有很多,在此只討論 8421 BCD碼。,1壓縮的BCD碼 用4位二進制碼表示一位十進制數(shù) 2非壓縮的BCD碼 用8位二進制碼表示一位十進制數(shù),BCD碼與二進制數(shù)之間的轉換, 先轉換為十進制數(shù),再轉換二進制數(shù); 反之同樣。 例:(0001 0001 .0010 0101)BCD = 11 .25 =(1011 .01) B,舉例:BCD碼的運算,2.3 非數(shù)值信息的表示方法,2.3.2 字母與字符的編碼, 字符的編碼,一般用7位二進制碼表示。 在需要時可在D7位加校驗位。 熟悉 0 9,af,AF 的ASCII碼,一、美國標準信息交換碼(ASCII碼),二、ASCII碼的校驗,奇校驗:加上校驗位后編碼中“1”的個數(shù)為奇數(shù) 例:A 的ASCII 碼是: 41H (1 0 0 0 0 0 1 B) 以奇校驗傳送則為 C1H(1 1 0 0 0 0 0 1 B) 偶校驗:加上校驗位后編碼中“1”的個數(shù)為偶數(shù)。 例

溫馨提示

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

最新文檔

評論

0/150

提交評論