• /  144
  • 下載費用: 9.90積分  

包健 計算機組成原理與系統結構第2版第3章.ppt

'包健 計算機組成原理與系統結構第2版第3章.ppt'
本大塊包括第3、4章,分三個層次講解: 信息編碼和數據的表示基于數據表示的運算方法基于數據表示和運算方法而設計的運算器Date1第三章 信息編碼與數據表示 數值數據的表示3.1 浮點機器數的表示方法 數據格式3.2 定點機器數的表示方法3.33.4 非數值數據的表示3.5 校驗碼3.6 現代計算機系統的數據表示3.7 本章小結Date3The End !Date43.1 數值數據的表示 進位計數制一 不同數制之間的相互轉換二 十進制數的編碼三Date5一、進位計數制數制的兩大要素:基數R:指在這種進位制中允許使用的基本數碼個數?;鶖禐镽的數制稱為R進制數。 R進制數的主要特點就是逢R進1 。權Wi:權也稱位權,指某一位i上的數碼的權重值,即權與數碼所處的位置i有關。 Wi =Ri。假設任意數值N用R進制數來表示,形式為: N=(Dm-1Dm-2…D0 .D-1D-2 …D-k )R Di為該進制的基本符號,Di∈[0,R-1],i = -k, -k+1, ……,m-1,m;小數點在D0和D-1之間。Date6一、進位計數制數值N的實際值為:例如:R=10,即十進制數。它的每一位上的數碼Di只能取0,1,2,……9;各個數碼的權為10i,i指示數碼所處的位置,個位i=0,十位i=1,百位i=2,依此類推。思考:二進制、八進制、十六進制?Date7一、進位計數制例1:(2345.459)10=2×103+ 3×102+ 4×101+5×100+ 4×10-1+ 5×10-2+ 9×10-3例2:(11011.011)2=1×24+ 1×23+ 0×22+1×21+ 1×2-0+ 0×2-1 + 1×2-2 + 1×2-3=(27.375)10例3:(123.67)8=1×82+ 2×81+ 3×80+6×8-1+ 7×8-2=(83.859375)10Date8二、不同數制之間的相互轉換 常用的幾種數制的對應關系1 二、八、十六進制轉換為十進制2 十進制轉換為二、八、十六進制3Date9常用的幾種數制的對應關系Date10復習每條路徑指示的轉換方法。任何進制數?十進制數,計算的本質就是加權求和。十進制真值二進制真值十六進制真值八進制真值不同數制之間的轉換Date11復習每條路徑指示的轉換方法。對于十進制數的整數部分和小數部分必須分別進行轉換處理,得出結果后再合并。十進制整數?二進制數: 除以2取余數,先得整數低位。除以2取余數后,繼續對商做除法,直至商為0。十進制小數?二進制數: 乘以2取整數,先得小數高位。乘以2取整數后,繼續對小數做乘法,直至積為0或小數位數已滿足精度要求。 不同數制之間的轉換Date122、二、八、十六進制轉換為十進制轉換方法:加權求和。例:(5AC.E6)16= 5×162+ 10×161 +12×160 +14×16-1+ 6×16-2 =(1452.8984375)10十進制(Decimal)、二進制(Binary)、八進制(Octal)、十六進制(Hexdecimal)數分別用D、B、Q、H來標志。例:(1011)2→(1011)B→1011B→1011b(123.45)2→( 123.45 )D→ 123.45D→ 123.45(2B.D)16=(2B.D)H=(43.8125)10=(53.64)QDate133、十進制轉換為二、八、十六進制轉換方法:可以分為以下兩種方法直接轉換:十進制→二、八、十六進制間接轉換:十進制→二進制→ 八、十六進制十進制轉化為R進制二進制轉化為八、十六進制Date14②十進制轉化為R進制轉換方法整數部分:除以R取余,直到商為零為止,倒排。小數部分:乘以2取整,直到小數部分為零或給定的精度為止,順排。例:(123.75)10=( ? )2(123.75)10=( ? )81111011.11173.6Date15②十進制轉化為R進制十進制整數轉化為二進制整數規則:除R取余,直到商為零為止,倒排。例:將十進制86轉換成二進制所以,(86)10=(1010110)2Date16十進制小數轉化為二進制小數規則:乘以2取整,直到小數部分為零或給定的精度為止,順排。例:將十進制0.875轉換成二進制所以,(0.875)10=(0.111)2②十進制轉化為R進制Date17小數部分的精度要求當小數部分不能整除為二進制時,則乘以2取整的過程中,積不會為0;或者當小數部分轉化為二進制位數很長,這時由精度來決定二進制位數。例:(0.35)10=( ? )2 無法整除(0.6875)10=( ? )2 位數太長若要求精度大于10%,則表示“=”左右兩邊的十進制值的差的絕對值<10%。只需取4位二進制小數即可滿足要求,因為 10%<2-4。Date18十進制轉化為R進制例如:將(114.35)10轉化為二進制數,要求精度大于10%。按照除2取余法,可得(114)10 =(1110010)2 對于小數由于要求精度大于10%,1/16 < 1/10 =10%,因此可以取小數位數4位即可,按照乘2取整法,可得(0.35)10 = (0.0101)2 ;所以:(114.35)10 =(1110010. 0101) 2 Date19③二進制轉化為八、十六進制二進制→八進制以小數點為中心分別向兩邊分組,每三位一組,寫出對應的八進制數字。(不夠位數則在兩邊加0補足3位 )二進制→十六進制以小數點為中心分別向兩邊分組,每四位一組,寫出對應的十六進制符號。(不夠位數則在兩邊加0補足4位 )例:(1011111.11)2=( ? )8=( ? )16137.65F.CDate20思考1:八、十六進制如何轉化為二進制?八進制→二進制:將每位八進制數展開為3位二進制數,最高位和最低位的0可以略去。十六進制→二進制:將每位十六進制數展開為4位二進制數,最高位和最低位的0可以略去。例:(765.23)8= ( ? )2例:(765.23)16= ( ? )2111 110 101.010 011111 0110 0101.0010 0011Date21思考2:計算機中為什么采用二進制表示數據?具有二值狀態的物理器件容易實現。二進制的運算規則簡單,硬件實現容易。具有邏輯特性,可代表“真假”、“是非”。Date22三、十進制數的編碼提出的問題:如何在計算機內使用二進制來表示十進制數據? 二-十進制碼(BCD碼)十進制數串的表示方法 Date231.二-十進制碼(BCD碼)BCD(Binary Coded Decimal)碼:使用二進制來編碼十進制數字0~9。編碼方法:一般使用4位二進制編碼來表示1位十進制數字,在16個編碼中選用10個來表示數字0~9。不同的選擇構成。省略部分。(記為8005)。圖3.9 CRC(n,k)校驗碼串行生成電路原理圖圖中Gi代表生成多項式G(x)各項的系數 Date125四、循環冗余碼CRC譯碼 接收端的校驗過程就是用G(x)來除接收到的碼字多項式的過程。若余式為零則認為傳輸無差錯;若余式不為零則傳輸有差錯。出錯的位置與余數值是一一對應的關系,通過查找出錯模式表,即可以確定是那一位出錯。 Date1263.7 現代計算機系統的數據表示以Pentium系列的微處理器為例:X86CPU是按字節編址的,即每8位就有一個編碼地址。數據存取的尺寸:字節數據、字數據、雙字數據、四字數據等,它們在內存中的存放位置: 低字節(LSB)存放在低地址,高字節(MSB)存放在高地址。 (小端模式)字節數據 字數據 雙字數據 Date1273.7 現代計算機系統的數據表示在Pentium系列CPU中,無論是字節數據、字數據還是雙字、四字數據,它們都可以是無符號數、帶符號數、或者BCD。如何區分內存某個單元存放的數據尺寸?如何分辨它們的數據類型?仍舊取決于訪問它的指令的操作數尺寸和指令本身的功能。當數據為有符號數時,默認它是補碼表示的機器數。例如,假如某個有符號字節數據的二進制代碼是90H,則它的值為-70H。 Date1283.7 現代計算機系統的數據表示幾種類型的數據在Pentium系列CPU中的表示形式 :字符串由字符的ASCII碼或者文字的Unicode編碼組成,按順序存放在內存或寄存器中。每個ASCII碼字符占1個字節,每個Unicode編碼占用2個字節Windows下以0做結束符 Date1293.7 現代計算機系統的數據表示BCD 在基于Pentium系列CPU的IA構架中,BCD數據分為壓縮的(packed)BCD碼和非壓縮(unpacked)的BCD碼兩種,前者以每字節2位BCD數字的形式存儲,后者以每字節1位BCD數字的方法存儲 (a)壓縮BCD碼 (b)非壓縮BCD碼 Date1303.7 現代計算機系統的數據表示指針指針實際上是內存單元的地址,因此是無符號數據。IA構架中定義了兩種類型的指針,一種是32位的近指針,用于定義段內偏移量和段內訪問;一種是48位的全指針,又稱遠指針,用于段間訪問。浮點數Pentium系列CPU支持IEEE 754標準的3種浮點數格式:單精度、雙精度和擴展精度浮點數。Date131補充:大端小端模式大端模式將高位存放在低地址,小端模式將高位存放在高地址。將一個32位的整數0x12345678存放到一個整型變量(int)中,(OP0表示一個32位數據的最高字節MSB,OP3表示一個32位數據最低字節LSB)。Date132補充:大端小端模式將一個16位的整數0x1234存放到一個短整型變量(short)中。這個短整型變量在內存中的存儲: x86、DEC是小端模式,很多的ARM,DSP都為小端模式。PowerPC、IBM、Sun、MIPS是大端模式。有些ARM處理器可以由硬件來選擇是大端模式還是小端模式。大多數的操作系統(如windows, FreeBsd,Linux)是小端方式。少部分,如MAC OS ,是大端方式。Date133補充:MIPS系統的數據存儲MIPS系統加載/存儲必須對齊地址字節在任何地址都可以被訪問半字(16位)必須按偶數字節對齊字(32位)必須按4字節對齊雙字(64位)必須按8字節對齊Date134補充:MIPS系統的數據存儲MIPS的加載/存儲指令讀取字的指令lw讀取字節的指令lb(寄存器高位填入符號位)、lbu(寄存器高位填入0)讀取半字的指令lh(寄存器高位填入符號位)、lhu(寄存器高位填入0)存儲字節/半字/字的指令sb、sh、swDate135補充:MIPS系統的數據存儲例如:  lw rd,RAM_source # 從存儲器中讀出一個字word (4 bytes)到目的寄存器中lb rd,RAM_source # 從存儲器中讀出一個字節到目的寄存器的低位字節中,目的寄存器的高位部分填入符號位sw rs, RAM_destination # 把源寄存器中的字word (4 bytes)寫入存儲器Date136補充:MIPS系統的數據存儲sb rs, RAM_destination # 把源寄存器低位字節byte寫入存儲器load / store 指令支持多種尋址方式,例如:sw $t2, -12($t0) # 把$t2寄存器中的字寫入存儲器地址為$t0-12的單元以上指令要求地址對齊,否則將引起地址錯誤異常。Date137補充:MIPS系統的數據存儲地址非對齊加載/存儲非對齊加載/存儲指令:ldr/ldl/lwr/lwl/sdr/sdl/swr/swl ldr/ldl/lwr/lwl/sdr/sdl/swr/swl指令只能訪問內存的始地址到下一個對齊地址處。例如:lwl $t0,2($0)lwr $t0,5($0)大端模式下以上2條指令順序執行,完成加載一個非對齊地址字Date138大端模式下,加載未對齊字舉例Date139小端模式下,加載未對齊字舉例小端機器上,始地址為 t1 = 0x1022,則:ldr t0, 0($t1) 取 0x1022-0x1027 到 t0 的右部ldl t0, 7($t1) 取 0x1028-0x1029 到 t0 的左部大端模式的情況則相反: ldl t0, 0($t1) ldr t0, 7($t1)Date140本章小結數制有兩個要素:基數R與位權W。計算機中的信息均由二進制來表示,即R=2,W=2i。用于表示十進制數值的二進制編碼被稱為BCD碼,4位二進制編碼表示一個十進制數字。機器數是數值數據在機器中的表示形式,根據小數點的位置是否浮動,可以分為定點數和浮點數。定點機器數根據小數點的隱含位置又分為定點小數和定點整數兩種。Date141本章小結機器數是數值數據在機器中的表示形式,根據小數點的位置是否浮動,可以分為定點數和浮點數。浮點機器數由階碼E和尾數M兩部分構成,階碼是定點整數,尾數是定點小數;階碼E(即指數)的底,一般隱含為2。浮點機器數的小數點的位置隨階碼數值而變化。IEEE754標準的浮點數有單精度、雙精度、臨時浮點數3種格式,分別為32位、64位和80位。Date142本章小結真值轉化為定點機器數時,有四種表示形式:原碼、反碼、補碼和移碼。移碼主要用于表示浮點數的階碼。計算機中的非數值數據的表示,字符數據通常采用7位的ASCII碼來表示。漢字的輸入編碼用于使用西文標準鍵盤輸入漢字,漢字的機內碼則用于漢字的存儲、檢索和處理,漢字的字模碼則用于漢字的顯示和打印輸出。Date143本章小結計算機中使用校驗碼來檢錯和糾錯。奇偶校驗碼是最簡單的一種檢錯碼,它可以檢查出一位或奇數位錯誤。海明校驗碼是一種多重奇偶校驗碼,具有糾錯能力,而CRC校驗碼則是一種目前廣泛使用的糾錯碼,可以糾錯一位。本章重點為定點機器數和浮點機器數的表示方法。 Date144
關 鍵 詞:
組成 系統 原理 結構 計算機
 天天文庫所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
關于本文
本文標題:包健 計算機組成原理與系統結構第2版第3章.ppt
鏈接地址: http://www.476824.live/p-51617699.html
關于我們 - 網站聲明 - 網站地圖 - 資源地圖 - 友情鏈接 - 網站客服點擊這里,給天天文庫發消息,QQ:1290478887 - 聯系我們

本站為“文檔C2C交易模式”,即用戶上傳的文檔直接賣給(下載)用戶,本站只是中間服務平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有【成交的100%(原創)】。本站是網絡服務平臺方,若您的權利被侵害,侵權客服QQ:1290478887 歡迎舉報。

[email protected] 2017-2027 http://www.476824.live 網站版權所有

粵ICP備19057495號 

收起
展開
球探网即时蓝球比分 山东群英会号码走势图 江西快三开奖直播现场 好运彩app平台 上证指数走势图分析 股票图详解 今晚七位数开奖结果是多少 北京pc蛋蛋28大小计划表 中天证券同花顺手机炒股软件 上海时时乐开奖号码头 一肖平特如何计算