欧美性猛交xxxx免费看_牛牛在线视频国产免费_天堂草原电视剧在线观看免费_国产粉嫩高清在线观看_国产欧美日本亚洲精品一5区

您好,歡迎來(lái)電子發(fā)燒友網(wǎng)! ,新用戶?[免費(fèi)注冊(cè)]

您的位置:電子發(fā)燒友網(wǎng)>電子百科>電腦硬件>臺(tái)式機(jī)>

數(shù)的機(jī)器碼表示,數(shù)的機(jī)器碼表示原理圖解

2010年04月13日 11:31 www.delux-kingway.cn 作者:佚名 用戶評(píng)論(0
關(guān)鍵字:機(jī)器碼(8309)

數(shù)的機(jī)器碼表示,數(shù)的機(jī)器碼表示原理圖解

  
  在計(jì)算機(jī)中對(duì)數(shù)據(jù)進(jìn)行運(yùn)算操作時(shí),符號(hào)位如何表示呢?是否也同數(shù)值位一道參加運(yùn)算操作呢?為了妥善的處理好這些問(wèn)題,就產(chǎn)生了把符號(hào)位和數(shù)字位一起編碼來(lái)表示相應(yīng)的數(shù)的各種表示方法,如原碼、補(bǔ)碼、反碼、移碼等。為了區(qū)別一般書寫表示的數(shù)和機(jī)器中這些編碼表示的數(shù),通常將前者稱為真值,后者稱為機(jī)器數(shù)或機(jī)器碼。
  
  1.原碼表示法
  
  若定點(diǎn)小數(shù)的原碼形式為012…xn,則原碼表示的定義是
  
  ? (2.7)
  
  式中[]是機(jī)器數(shù),是真值
  
  例如,=+0.1001,則[]=0.1001
  
  =-0.1001,則[]=1.1001
  
  對(duì)于0,原碼機(jī)器中往往有“+0”、“-0”之分,故有兩種形式:
  
  [+0]=0.000...0
  
  [-0]=1.000...0
  
  若定點(diǎn)整數(shù)的原碼形式為012…xn,則原碼表示的定義是
  
  ? (2.8)
  
  采用原碼表示法簡(jiǎn)單易懂,但它的最大缺點(diǎn)是加法運(yùn)算復(fù)雜。這是因?yàn)?,?dāng)兩數(shù)相加時(shí),如果是同號(hào)則數(shù)值相加;如果是異號(hào),則要進(jìn)行減法。而在進(jìn)行減法時(shí)還要比較絕對(duì)值的大小,然后大數(shù)減去小數(shù),最后還要給結(jié)果選擇符號(hào)。為了解決這些矛盾,人們找到了補(bǔ)碼表示法。

2.補(bǔ)碼表示法
  
  我們先以鐘表對(duì)時(shí)為例說(shuō)明補(bǔ)碼的概念。假設(shè)現(xiàn)在的標(biāo)準(zhǔn)時(shí)間為4點(diǎn)正; 而有一只表已經(jīng)7點(diǎn)了,為了校準(zhǔn)時(shí)間,可以采用兩種方法:一是將時(shí)針退 7-4=3 格;一是將時(shí)針向前撥12-3=9格。這兩種方法都能對(duì)準(zhǔn)到4點(diǎn),由此可以看出,減3和加9是等價(jià)的,就是說(shuō)9是(-3)對(duì)12的補(bǔ)碼,可以用數(shù)學(xué)公式表示
  
  -3=+9(mod12)
  
  mod12的意思就是12模數(shù),這個(gè)“?!北硎颈粊G掉的數(shù)值。上式在數(shù)學(xué)上稱為同余式。
  
  上例中其所以7-3和7+9(mod12)等價(jià),原因就是表指針超過(guò)12時(shí),將12自動(dòng)丟掉,最后得到16-12=4。從這里可以得到一個(gè)啟示,就是負(fù)數(shù)用補(bǔ)碼表示時(shí),可以把減法轉(zhuǎn)化為加法。這樣,在計(jì)算機(jī)中實(shí)現(xiàn)起來(lái)就比較方便。
  
  若定點(diǎn)小數(shù)補(bǔ)碼形式為0.x12…xn,則補(bǔ)碼表示的定義是
  
  ? (2.9)
  
  例如,=+0.1011,則[]補(bǔ)=0.1011
  
  =-0.1011,則[]補(bǔ)=10+x=10.0000-0.1011=1.0101
  
  對(duì)于0,[+0]補(bǔ)=[-0]補(bǔ)=0.0000???????????????  (mod 2)
  
  注意,0的補(bǔ)碼表示只有一種形式。
  
  采用補(bǔ)碼表示法進(jìn)行減法運(yùn)算就比原碼方便得多了。因?yàn)椴徽摂?shù)是正還是負(fù),機(jī)器總是做加法,減法運(yùn)算可變?yōu)榧臃ㄟ\(yùn)算。但根據(jù)補(bǔ)碼定義,求負(fù)數(shù)的補(bǔ)碼要從2減去|x|。為了用加法代替減法,結(jié)果還得在求補(bǔ)碼時(shí)作一次減法,這顯然是不方便的。下面介紹的反碼表示法可以解決負(fù)數(shù)的求補(bǔ)問(wèn)題。
  
  對(duì)定點(diǎn)整數(shù),補(bǔ)碼表示的定義是
  
  ? (2.10)

?3.反碼表示法
  
  所謂反碼,就是二進(jìn)制的各位數(shù)碼0變?yōu)?,1變?yōu)?。也就是說(shuō),若i=1,則反碼為i=0;若i=0,則反碼i=1。數(shù)值上面的一橫表示反碼的意思。在計(jì)算機(jī)中用觸發(fā)器寄存數(shù)碼,若觸發(fā)器Q端輸出表示原碼,則其Q端輸出就是反碼。由此可知,反碼是容易得到的。
  
  對(duì)定點(diǎn)小數(shù),反碼表示的定義為
  
??? ? (2.11)
  
  其中n代表數(shù)的位數(shù)。
  
  在一些文獻(xiàn)中,這種以2為基數(shù)的反碼又稱為1的補(bǔ)碼。
  
  一般情況下,對(duì)于正數(shù) =+0.12…xn, 則
  
  []=0.12…xn
  
  對(duì)于負(fù)數(shù)=-0.12…xn ,則有
  
  []=1.12…xn
  
  對(duì)于0,有[+0]和[-0]之分:
  
  [+0]=0.00...0
  
  [-0]=1.11...1

  
  我們比較反碼與補(bǔ)碼的公式
  
  []=(2-2-n)+
  
  []補(bǔ)=2+
  
  可得到
  
  ? (2.12)
  
  這就是通過(guò)反碼求補(bǔ)碼的重要公式。這個(gè)公式告訴我們,若要一個(gè)負(fù)數(shù)變補(bǔ)碼,其方法是符號(hào)位置1,其余各位0變1,1變0,然后在最末位(2-n)上加1。
  
  對(duì)定點(diǎn)整數(shù),反碼表示的定義為
  
  ? (2.13)

?4.移碼表示法
  
  移碼通常用于表示浮點(diǎn)數(shù)的階碼。由于階碼是個(gè)n位的整數(shù),假定定點(diǎn)整數(shù)移碼形式為012…xn時(shí),對(duì)定點(diǎn)整數(shù),移碼的傳統(tǒng)定義是真值加上一個(gè)固定常數(shù)2n
  
??? ? (2.14)
  
  若階碼數(shù)值部分為7位,以表示真值,則
  
  []=27+= 128 +??    128 >≥-128
  
  例如,當(dāng)正數(shù)=+1010101 時(shí),[]=1,1010101 ;
  
  當(dāng)負(fù)數(shù)=-10101 01時(shí),[]=27=27-1010101=10000000 - 1010101 = 0,0101011。
  
  移碼中的逗號(hào)不是小數(shù)點(diǎn),而是表示左邊一位是符號(hào)位。顯然,移碼中符號(hào)位0表示的規(guī)律與原碼、補(bǔ)碼、反碼相反。
  
  小結(jié):上面的數(shù)據(jù)四種機(jī)器表示法中,移碼表示法主要用于表示浮點(diǎn)數(shù)的階碼。由于補(bǔ)碼表示對(duì)加減法運(yùn)算十分方便,因此目前機(jī)器中廣泛采用補(bǔ)碼表示法。在這類機(jī)器中,數(shù)用補(bǔ)碼表示,補(bǔ)碼存儲(chǔ),補(bǔ)碼運(yùn)算。也有些機(jī)器,數(shù)用原碼進(jìn)行存儲(chǔ)和傳送,運(yùn)算時(shí)改用補(bǔ)碼。還有些機(jī)器在做加減法時(shí)用補(bǔ)碼運(yùn)算,在做乘除法時(shí)用原碼運(yùn)算。
  
  [例3]以定點(diǎn)整數(shù)為例,用數(shù)軸形式說(shuō)明原碼、反碼、補(bǔ)碼表示范圍和可能的數(shù)碼組合情況。
  
  [解:]
  
  原碼、反碼、補(bǔ)碼表示分別示于下圖。與原碼、反碼不同,在補(bǔ)碼表示中“0”只有一種形式,且用補(bǔ)碼表示負(fù)數(shù)時(shí)范圍可到-2n
    

  [例4]將十進(jìn)制真值(-127,-1,0,+1,+127)列表表示成二進(jìn)制數(shù)及原碼、反碼、補(bǔ)碼、移碼值。
  
  [解:]
  
  二進(jìn)制真值及其諸碼值列于下表,其中0在[][]中有兩種表示。由表中數(shù)據(jù)可知,補(bǔ)碼值與移碼值差別僅在于符號(hào)位不同。
  

[例5]設(shè)機(jī)器字長(zhǎng)16位,定點(diǎn)表示,尾數(shù)15位,數(shù)符1位,問(wèn):
  
  (1)定點(diǎn)原碼整數(shù)表示時(shí),最大正數(shù)是多少?最小負(fù)數(shù)是多少?
  
  (2)定點(diǎn)原碼小數(shù)表示時(shí),最大正數(shù)是多少?最小負(fù)數(shù)是多少?
  
  [解:]

  

  [例6]假設(shè)由S,E,M三個(gè)域組成的一個(gè)32位二進(jìn)制字所表示的非零規(guī)格化浮點(diǎn)數(shù),真值表示為:
  
  x=(-1)s×(1.M)×2E-128
  
  問(wèn):它所表示的規(guī)格化的最大正數(shù)、最小正數(shù)、最大負(fù)數(shù)、最小負(fù)數(shù)是多少?
  
  [解:]

非常好我支持^.^

(104) 99%

不好我反對(duì)

(1) 1%

( 發(fā)表人:admin )

      發(fā)表評(píng)論

      用戶評(píng)論
      評(píng)價(jià):好評(píng)中評(píng)差評(píng)

      發(fā)表評(píng)論,獲取積分! 請(qǐng)遵守相關(guān)規(guī)定!

      ?