日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

计算机组成原理机器码怎么求,计算机组成原理第二章第3讲数的机器码表示.ppt...

發布時間:2024/1/1 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 计算机组成原理机器码怎么求,计算机组成原理第二章第3讲数的机器码表示.ppt... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

《計算機組成原理第二章第3講數的機器碼表示.ppt》由會員分享,可在線閱讀,更多相關《計算機組成原理第二章第3講數的機器碼表示.ppt(55頁珍藏版)》請在人人文庫網上搜索。

1、數的機器碼表示,2.1.2數的機器碼表示,一、數的機器碼表示 真值:數值數據的實際值 如:-33,1011B,257 等 機器碼:數值數據在計算機內的編碼表示 機器碼的種類: 原碼 反碼 補碼 移碼 為什么要提出機器碼? 要解決在計算機內部數的正、負符號和小數點運算問題。,2.1.2數的機器碼表示,具體地: 在計算機中對數據進行運算操作時,符號位的表示,符號位是否也同數值位一道參加運算? 如何參加運算? 為了妥善的處理好這些問題,就需要把符號位和數字位一起編碼表示數據,為適應不同的處理要求,產生了多種數據編碼方法,如原碼、補碼、反碼、移碼等。,2.1.2數的機器碼表示,原碼、補碼、反碼的共性:。

2、 1)這幾種編碼表示中,正數的編碼值與真值一樣,負數具有不同的編碼。 2)編碼的最高位為符號位: 0表示正 1表示負,2.1.2數的機器碼表示(簡化版),1、原碼表示法 符號位:0表示正,1表示負 數值部分:與真值的二進制形式一樣 原碼的特征: 1)零有兩種表示:0和0 +0原=0.000.0 -0原=1.000.0 2)優點:簡單直觀,便于乘、除法運算 缺點:加減法運算不便(符號不能直接參與運算),2.1.2數的機器碼表示(簡化版),2、反碼表示法 符號位:0表示正,1表示負 數值部分:正數不變;負數反碼是將真值的各位取反得到 反碼的特征: 1)零有兩種表示:0和0 0反0.00.0 0反1。

3、.11.1 2)通常用于求補碼,是個過渡編碼,2.1.2數的機器碼表示(簡化版),3、補碼表示法 符號位:0表示正,1表示負 數值部分:正數不變;負數通過求補得到。 補碼的特征: 1)零的表示唯一 2)補碼加減法運算中,符號直接參與運算 3)定點小數表示中,-1補1.000,2.1.2數的機器碼表示(簡化版),、移碼表示法 移碼通常用于表示浮點數的階碼。階碼是個n位的整數。 對于正數,符號位為1,其余位不變 (+1110001-11110001); 對于負數,符號位為0,其余位取反,最后加1 (-1110001-00001111)。 符號位:1表示正,0表示負 數值部分:與補碼數值部分相同,2。

4、.1.2數的機器碼表示(簡化版),2.1.2數的機器碼表示(簡化版),例:寫出下列各真值定點位的原碼、反碼、補碼、移碼表示。 (27)10 (103)10 (0.01101)2 (23/64)10,2.1.2數的機器碼表示(簡化版),(27)10 = (+11011)2 原碼:0001 1011 反碼:0001 1011 補碼:0001 1011 移碼:1001 1011,2.1.2數的機器碼表示(簡化版),(103)10 = (1100111)2 原碼:1110 0111 反碼:1001 1000 補碼:1001 1001 移碼:0001 1001,2.1.2數的機器碼表示(簡化版),(0.。

5、01101)2 原碼:1.011 0100 反碼:1.100 1011 補碼:1.100 1100 移碼:0.100 1100 說明:式子中的小數點只為人們方便查看是小數之用,實際的機器中并不會保存。,2.1.2數的機器碼表示(簡化版),(23/64)10 = (0.010111)2 原碼:1.010 1110 反碼:1.101 0001 補碼:1.101 0010 移碼:0.101 0010,2.1.2數的機器碼表示(完整版),用公式的形式描述原碼反碼補碼和移碼,1、原碼表示法定點整數,定點整數X0X1X2Xn(x0為符號位) x原= x 2nx0 2n-x 0 x -2n 說明: 有正0和。

6、負0之分 范圍 - (2n -1) 2n 1 例: x=+11001110 n=8 x原=011001110 -x原=111001110,X為負,-x相當于加上其絕對值,1、原碼表示法定點小數,定點小數x0.x1x2xn x原= x 1x0 1-x 0 x -1 有正0和負0之分 范圍-(1-2-n)1- 2-n 例: x=+0.11001110 x原= 0.11001110 -x原= 1.11001110,17,原碼表示定點小數的臨界值,1、原碼表示法,原碼特點: 表示簡單,易于同真值之間進行轉換,實現乘除運算規則簡單。 進行加減運算十分麻煩。,定點小數表示: x0. x1 x2 xn 定義。

7、: X 反 = 定點整數表示:x0 x1 x2 xn 定義: X 反 =,X,(2-2-n )+ X,0 X 1,-1 X 0,X,( 2n+1 1)+ X,0 X 2n,- 2n X 0,2 、反碼,2 、反碼,Eg x=+1011011 x原=01011011 用1個字節存儲 x反=01011011 x=-1011011 x反=28-1+x =100000000-1-1011011 =10100100,3 、補碼,補碼是在“模”和“同余”的概念下導出的。 “模”是指一個計量系統的計量范圍,即產生“溢出”的量。 以時鐘為例,如下頁圖: 5-2=3, 5+10=3 -2和10同余,以12為模 。

8、時鐘定位在12點,向后退2個小時和向前撥10個小時得到的效果是相同的,3 、補碼,現在是北京時間3點整,而時鐘卻指向5點。 5-2=3 5+10=3 (5+10=15,15-12=3, 12自動丟失。12就是模),3 、補碼,繼續推導: 5-2=5+10 (MOD 12) 5+(-2)=5+10 (MOD 12) -2=10 (MOD 12) 結論: 可以說:在模為12的情況下,-2的補碼 就是10。 一個負數用其補碼代替,同樣可以得到正確的運算結果。 借用補碼機制,可在計算機運算中將減法轉換為加法運算。,3 、補碼,具體地, 在計算機中,機器能表示的數據位數是一定的,其運算都是有模運算。如果。

9、是n位整數,其模為2n+1。如果是n位小數,其模為2。 若運算結果超出了計算機所能表示的數值范圍,則只保留它的小于模的低n位的數值,超過n位的高位部分就自動舍棄了。,3 、補碼,定義:正數的補碼就是正數的本身,負數的補碼是原負數加上模。 計算機運算受字長限制,屬于有模運算.,3 、補碼,定點整數 定點整數x0 x1x2.xn以2n+1為模 x補= x 2n x0 2n+1+x 0 x- 2n 示數范圍:- 2n 2n - 1,3 、補碼,定點小數 定點小數x0.x1x2.xn,以2為模 x補= x 1x0 2+x 0 x -1 示數范圍:-11-2-n,3 、補碼,例:x X補=28+X =1。

10、00000000 + (-1101001) =10010111 x X補=2+X =10+(-0.1101001) =1.0010111,3 、補碼,例: x= -0.1011 x補=10+x =10.0000-0.1011 =1.0101 y=-0.01111 y補=10+y =10.00000-0.01111 =1.10001,3 、補碼,思考: 如何通過補碼求原碼? 例如上題例子。,由補碼求原碼,依照用原碼求補碼的方法。 規則相同!,4 、移碼,常用的是針對定點有符號整型數據 x=x0 x1x2xn,移碼的定義是 移2n,2n 2n 移碼的性質: 最高位為符號位。 0有唯一編碼。 保持了。

11、數據原有的大小順序。 移碼只用于浮點數的階碼部分,故一般只用于表示整數。,4 、移碼,若一定要表示小數: x=x0.x1x2xn,移碼的定義是 移1,(1-2-n ) 1-2-n,4 、移碼,eg. X=+000 0111 (1個字節存儲) x移=27+0000111 =10000000 + 0000111 =1000 0111 X=-100 0111 x移=27-100 0111 = 1000 0000 100 0111 =0011 1001,機器碼表示練習題,例:寫出下列定點8位機器碼的真值。 x1原0.0110101x2原10000101 x3反1.1010101 x4反0.000010。

12、1 x5補1.0010101 x6補0.1000101 x7補1.0000000 x8補100000000 x9補00000001 x10補10110011 x11移1.0010101 x12移0.0000101,例:寫出下列定點8位機器碼的真值。 x1原0.0110101x2原10000101 解: x1=0.0110101 x2=-101,例:寫出下列定點8位機器碼的真值。 x3反1.1010101 x4反0.0000101 解: X3= -0.0101010 X4= 0.0000101,例:寫出下列定點8位機器碼的真值。 x5補1.0010101 x6補0.1000101 解: x5= 。

13、-0.1101011 x6= 0.1000101,例:寫出下列定點8位機器碼的真值。 x7補1.0000000 x8補10000000 解: x7= -1 X8= -128,例:寫出下列定點8位機器碼的真值。 x9補00000001 x10補10110011 解: x9= 1 x10= -1001101,例:寫出下列定點8位機器碼的真值。 x11移1.0010101 x12移0.0000101 解: x11= 0.0010101 x12= -0.1111011,2.1.2數的機器碼表示,【例2.7】將十進制真值(127,1,0,1,127)列表表示成二進制數及原碼、反碼、補碼、移碼值。,補碼形。

14、式的八位二進制數的示數范圍討論: 符號位1位,數值位7位 即-27 27-1 -128127 -128怎樣表示?,2.1.2數的機器碼表示,到底為什么這么折騰?非要搞個補碼出來? 補碼的設計目的是: 使符號位能與有效值部分一起參加運算,從而簡化運算規則。 使減法運算轉換為加法運算,進一步簡化計算機中運算器的線路設計。 消除正零負零干擾,最大負數向外拓展1位。 所有這些轉換都是在計算機的最底層進行的。,2.1.2數的機器碼表示,舉例:一個字節內的加減運算 若直接用原碼: 0000 0001 + 1000 0010 = 1000 0011 1 + (-2) = -3 用補碼: 0000 0001 。

15、+ 1111 1110 = 1111 1111 1 + (-2) = -1,2.1.2數的機器碼表示,【例2.6】以定點整數為例,用數軸形式說明原碼、反碼、補碼表示范圍和可能的數碼組合情況。,2.1.2數的機器碼表示,【例8】設機器字長16位,定點表示,尾數15位,數符1位,問: (1)定點原碼整數表示時,最大正數是多少?最小負數是多少? (2)定點原碼小數表示時,最大正數是多少?最小負數是多少? 如果均改用補碼,是何情況?,2.1.2數的機器碼表示,解答: (1)定點原碼整數表示 最大正數值(2151)10(32767)10 最小負數值(2151)10(32767)10 (2)定點原碼小數表。

16、示 最大正數值(1215)10 (0.111.11)2 最小負數值(1215)10 (0.111.11)2,2.1.2數的機器碼表示,(3):改為補碼: 最大正 最小負 定點整數: 215-1 -215 32767 -32768 定點小數: 1-2-15 -1,2.1.2數的機器碼表示,回想:C語言中的幾個變量定義 short:半個機器字長,16位: -3276832767 int:一個機器字長,32位: -21474836482147483647 long:兩個機器字長,64位 -9,223,372,036,854,775,808 9,223,372,036,854,775,807 (對于3。

17、2位機),2.1.2數的機器碼表示,【例9】假設由S,E,M三個域組成的一個32位二進制字所表示的非零規格化浮點數,真值表示為(非IEEE754標準):(1)s (1.M) 2E128問:它所表示的規格化的最大正數、最小正數、最大負數、最小負數是多少?,移碼,原碼,2.1.2數的機器碼表示,1個字節 真值最大的補碼: 0111 1111 最小的補碼: 1 000 0000 1個字節 真值最大的移碼: 1 111 1111 最小的移碼 0 000 0000,2.1.2數的機器碼表示,回顧: 對于1個字節空間 整數移碼的計算方法: x移=27+x E=1000 0000 + x =128+x 所以 x=E-128,2.1.2數的機器碼表示,(1)最大正數 0 1111 1111 111 1111 1111 1111 1111 1111 22-232127 (2)最小正數 0 0000 0000 0000 0000 0000 0000 0000 000 1.02128 (3)最小負數 1 1111 1111 1111 1111 1111 1111 1111 111 22232127 (4)最大負數 1 0000 0000 0000 0000 0000 0000 0000 000 1.02128。

總結

以上是生活随笔為你收集整理的计算机组成原理机器码怎么求,计算机组成原理第二章第3讲数的机器码表示.ppt...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。