版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、流量計計算機通過485端口以MODBU協(xié)議把內(nèi)部IEEE32位浮點數(shù)傳送到DCS勺數(shù)據(jù)經(jīng)過研究試驗,其數(shù)據(jù)格式如下數(shù)據(jù)請求依次為:十六進制從站地址:01;讀命令:03;數(shù)據(jù)起始高位地址:0F;數(shù)據(jù)起始低位地址:A0;( 0FA0=4000即 地址44001);數(shù)據(jù)長度高位:00;數(shù)據(jù)長度低位:28; (0028=40即40個地址);CRC效驗碼:46,E2數(shù)據(jù)應答格式:從站地址:01;讀命令反饋:03;數(shù)據(jù)長度:50;第一個地址:69; C0; 48; A9;第二個地址:C5; 00; 48; A2;以下類推,直到最后兩位 CRC E8; 86第一個地址:69; C0; 48; A9是如何換算
2、為346958的呢?流量計發(fā)送的是IEEE標準的32位浮點數(shù)首先要把69; C0; 48; A9進行高低16位交換變成:48; A9; 69; C0變?yōu)?32 位二進制數(shù):01001000 10101001 01101001 11000000其中最高位為0,代表是正數(shù)接下來的八位:10010001變成十進制是145,根據(jù)IEEE規(guī)范應減去127得18,這是小數(shù)點右移 的位數(shù);剩下的23位是純二進制小數(shù)即:0.0101001 01101001 11000000加 1 后得 1.0101001 01101001 11000000小數(shù)點右移 18 位后得 10101001 01101001 110.
3、00000變?yōu)槭M制得346958其它地址的32位浮點數(shù)計算方法同上標 題:IEEE754學習總結(jié) 發(fā)信人 : Vegeta時 間:2004-11-11,10:32 詳細信息 :一:前言二:預備知識三:將浮點格式轉(zhuǎn)換成十進制數(shù) 四:將十進制數(shù)轉(zhuǎn)換成浮點格式( real*4 ) 附: IEEE754 Converte 1.0 介紹、尸 、-:前言前不久在分析一個程序的過程中遇到了浮點運算,也就順便學習了一下浮點數(shù)的存放格式( IEEE754 標準),此文僅作為總結(jié),其中舉了幾個典型的例子,如果你想深入了解 IEEE754 標準,我想本文并不太 適合您。:預備知識值存儲為指數(shù)偏移量real*41
4、位符號位(s) 、8位指數(shù)(e) , 23位尾數(shù)(m,共32位)127(7FH)real*81 位符號位(s) 、11 位指數(shù) (e) , 52 位尾數(shù) (m, 共 64 位)1023(3FFH)real*101 位符號位(s) 、15 位指數(shù) (e) , 64 位尾數(shù) (m, 共 80 位)16383(3FFFH)計算公式:V=(-1)As*2AE*M當 e (各位)為全'0'時,E=1-(2A(e (位數(shù))-1)-1) , ; M=m 如: real*4 是 8 位, E=1-(2A(8-1)-1)=1-127=-126即,在 real*4 時:V=(-1)As*2A(-1
5、26)*m在 real*8 時:V=(-1)As*2A(-1022)*m當e (各位)不為全'0'且不為全'1'時,E=e (值)-(2A(e (位數(shù))-1)-1) ; M=1+m 即,在 real*4 時:V=(-1)As*2A(e(值) -127)*(1+m)在 real*8 時:V=(-1)As*2A(e(值) -1023)*(1+m)三:將浮點格式轉(zhuǎn)換成十進制數(shù)例3.1 :0x00280000( real*4 )轉(zhuǎn)換成二進制00000000001010000000000000000000符號位 指數(shù)部分( 8 位) 尾數(shù)部分0 00000000 0101
6、0000000000000000000符號位=0;因指數(shù)部分=0,則:尾數(shù)部分 M為m0.01010000000000000000000=0.3125該浮點數(shù)的十進制為:(-1)人0*2人(-126)*0.3125=3.6734198463196484624023016788195e-39例 3.2 :0xC04E000000000000( real*8 )轉(zhuǎn)換成二進制1100000001001110000000000000000000000000000000000000000000000000符號位 指數(shù)部分( 11 位) 尾數(shù)部分1 10000000100 1110000000000000
7、000000000000000000000000000000000000符號位=1;指數(shù)=1028,因指數(shù)部分不為全'0'且不為全'1',則:尾數(shù)部分 M為1+m1.1110000000000000000000000000000000000000000000000000=1.875 該浮點數(shù)的十進制為:(_1)A1*2A(i028-1023)*1.875=-60四:將十進制數(shù)轉(zhuǎn)換成浮點格式( real*4 )例4.1 :26.0十進制 26.0 轉(zhuǎn)換成二進制11010.0規(guī)格化二進制數(shù)1.10100*2A4計算指數(shù)4+127=131符號位 指數(shù)部分 尾數(shù)部分0
8、10000011 10100000000000000000000以單精度( real*4 )浮點格式存儲該數(shù)0100 0001 1101 0000 0000 0000 0000 00000x41D0 0000例4.2 :0.75十進制 0.75 轉(zhuǎn)換成二進制0.11規(guī)格化二進制數(shù)1.1*2A-1計算指數(shù)-1+127=126符號位 指數(shù)部分 尾數(shù)部分0 01111110 10000000000000000000000 以單精度( real*4 )浮點格式存儲該數(shù) 0011 1111 0100 0000 0000 0000 0000 0000 0x3F40 0000例4.3 :-2.5十進制 -2
9、.5 轉(zhuǎn)換成二進制-10.1規(guī)格化二進制數(shù)-1.01*2A1計算指數(shù)1+127=128符號位 指數(shù)部分 尾數(shù)部分1 10000000 01000000000000000000000 以單精度( real*4 )浮點格式存儲該數(shù) 1100 0000 0010 0000 0000 0000 0000 0000 0xC020 0000附: IEEE754 Converte 1.0 介紹用 IEEE754 Converte 1.0 轉(zhuǎn)換 例 3.2 的截圖IEEE754 Converter 目前可以對以下數(shù)據(jù)進行相互轉(zhuǎn)換:real*4(HEX)v->floating point numbers(
10、DEC)real*8(HEX)<->floating point numbers(DEC)現(xiàn)舉例說明其使用方法:在Softice 中用D命令查看內(nèi)存地址:0050C510,可得:0030:0050C510 00 00 00 00 00 00 4E 40-00 00 00 00 00 00 20 40AA AA AA AA AA AA AA AA并已知數(shù)據(jù)為REAL*&為了方便使用,在Input中只需輸入:4E40,而不用轉(zhuǎn)換成404E。單擊REAL*8中的HEX->F-P按鍵即可在Output中得到結(jié)果:60反之亦然:在Input中輸入:60,按F-P->HEX
11、得:4E4Q補碼補碼舉例1、在計算機系統(tǒng)中,數(shù)值一律用補碼來表示(存儲)。主要原因:使用補碼,可以將符號位和其它位統(tǒng)一處理;同時,減法也可按加法來處理。另外,兩 個用補碼表示的數(shù)相加時,如果最高位(符號位)有進位,則進位被舍棄。2、補碼與原碼的轉(zhuǎn)換過程幾乎是相同的。數(shù)值的補碼表示也分兩種情況:(1)正數(shù)的補碼:與原碼相同。例如,+9的補碼是00001001。(2 )負數(shù)的補碼:符號位為1,其余位為該數(shù)絕對值的原碼按位取反;然后整個數(shù)加1。例如,-7的補碼:因為是負數(shù),則符號位為 “ 1整,為10000111 ;其余7位為-7的絕對值+7的原 碼0000111按位取反為1111000 ;再加1,
12、所以-7的補碼是11111001。已知一個數(shù)的補碼,求原碼的操作分兩種情況:(1)如果補碼的符號位為 “ 0,”表示是一個正數(shù),所以補碼就是該數(shù)的原碼。(2) 如果補碼的符號位為 “ 1,”表示是一個負數(shù),求原碼的操作可以是:符號位為1,其余各位取 反,然后再整個數(shù)加1。例如,已知一個補碼為11111001,則原碼是10000111 (-7):因為符號位為 “ 1,”表示是一個負 數(shù),所以該位不變,仍為 “;其余7位1111001取反后為0000110 ;再加1,所以是10000111 o 在閑扯原碼、反碼、補碼”文件中,沒有提到一個很重要的概念?!薄N以谶@里稍微介紹一下 ?!钡母拍睿耗!笔侵?/p>
13、一個計量系統(tǒng)的計數(shù)范圍。如時鐘等。計算機也可以看成一個計量機器,它也有一個計量范圍,即都存在一個模”。例如:時鐘的計量范圍是011,模=12 o表示n位的計算機計量范圍是 02A(n)-1,模=2A(n)。?!睂嵸|(zhì)上是計量器產(chǎn)生 溢出”的量,它的值在計量器上表示不出來,計量器上只能表示出模的余數(shù)。任何有模的計量器,均可化減法為加法運算。例如:假設當前時針指向10點,而準確時間是6點,調(diào)整時間可有以下兩種撥法:一種是倒撥4小時,即:10-4=6另一種是順撥8小時:10+8=12+6=6在以12模的系統(tǒng)中,力卩8和減4效果是一樣的,因此凡是減 4運算,都可以用加8來代替。對模"而言,8和
14、4互為補數(shù)。實際上以12模的系統(tǒng)中,11和1,10和2,9和3,7和5,6和 6都有這個特性。共同的特點是兩者相加等于模。對于計算機,其概念和方法完全一樣。n位計算機,設n=8,所能表示的最大數(shù)是11111111 ,若再加1稱為100000000(9位),但因只有8位,最高位1自然丟失。又回了 00000000,所以8位二 進制系統(tǒng)的模為2人8 o在這樣的系統(tǒng)中減法問題也可以化成加法問題,只需把減數(shù)用相應的補數(shù)表示就可以 了。把補數(shù)用到計算機對數(shù)的處理上,就是補碼。另外兩個概念一的補碼(one's complement) 指的是正數(shù)=原碼,負數(shù)=反碼而二的補碼(two's co
15、mplement)指的就是通常所指的補碼。這里補充補碼的代數(shù)加減運算:1、補碼加法X+Y補=X補 + Y補【例 7】X=+0110011,Y=-0101001 ,求X+Y補X補=00110011 Y補=11010111X+Y補=X補 + Y補 =00110011+11010111=00001010注:因為計算機中運算器的位長是固定的,上述運算中產(chǎn)生的最高位進位將丟掉,所以結(jié)果不是100001010,而是 00001010。2、補碼減法X-Y補=X補-Y補=X補 + -Y補其中-Y補稱為負補,求負補的方法是:對補碼的每一位(包括符號位)求反,最后末位加“1。這里補充補碼的代數(shù)解釋:任何一個數(shù)都可
16、以表示為-a=2A(門-1)-2人(n-1)-a;這個假設a為正數(shù),那么-a就是負數(shù)。而根據(jù)二進制轉(zhuǎn)十進制數(shù)的方法,我們可以把a表示為:a=k0*2A0+k1*2A1+k2*2A2+k( n-2)*2A( n-2)這里k0,k1,k2,k(n-2)是1或者0,而且這里設a的二進制位數(shù)為n位,即其模為2人(n-1),而2人(n-1) 其二項展開是:1+2人0+2人1+2人2+ +2A(n -2),而式子:-a=2A(n-1)-2A(n-1)-a 中,2人(n-1)-a 代入 a=k0*2A0 +k1*2A1+k2*2A2+ +k(n-2)*2人(n-2)和 2人(n-1)=1+2人0+2人1+2人2+ +2人(n -2)兩式, 2A(n-1)-a = (1-k( n-2)*2A( n-2)+(1-k( n-3)*2A( n-3)+ +(1十2)*2人2+(1十1)*2人1+(1十0)*2人0+1,而這步轉(zhuǎn)化正是取反再加1的規(guī)則的代數(shù)原理所在。因為這里k0,k1,k2,k3 不是0就是1,所以1 -k0,1-k1,1-k2的運算就是二進制下
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度成都二手房房源交易稅費減免政策解讀合同4篇
- 病蟲害在農(nóng)業(yè)生產(chǎn)中的經(jīng)濟影響
- 2025年醫(yī)療網(wǎng)絡推廣合同
- 2025年家具制作及安裝合同
- 2025年勞務派遣服務合同書格式
- 2025年居住小區(qū)規(guī)劃設計合同
- 2025年三方倉儲合同
- 二零二五年度教育產(chǎn)品銷售合同英文版制作與海外市場推廣3篇
- 2025年分期宴會預訂合同
- 二零二五年度大型模具采購合同及模具研發(fā)合作協(xié)議2篇
- 完整版秸稈炭化成型綜合利用項目可行性研究報告
- 油氣行業(yè)人才需求預測-洞察分析
- 《數(shù)據(jù)采集技術(shù)》課件-Scrapy 框架的基本操作
- 2025年河北省單招語文模擬測試二(原卷版)
- 工作計劃 2025年度醫(yī)院工作計劃
- 高一化學《活潑的金屬單質(zhì)-鈉》分層練習含答案解析
- DB34∕T 4010-2021 水利工程外觀質(zhì)量評定規(guī)程
- 2024年內(nèi)蒙古中考英語試卷五套合卷附答案
- 2024年電工(高級)證考試題庫及答案
- 2024年全國各地中考試題分類匯編:古詩詞閱讀
- 農(nóng)產(chǎn)品質(zhì)量評估與分級
評論
0/150
提交評論