浮點的運算比較麻煩,你可以“百度”或者“谷歌”一下。
它的格式是:【符號位】(1位)+【指數(shù)位】(8位)+【尾數(shù)位】(23位)共計組成32位的浮點數(shù)。
符號位用0、1表示正負;
指數(shù)位是將十進制轉(zhuǎn)化為二進制后,再用科學(xué)法表示(將小數(shù)點移位到首位為1處),看指數(shù)值為多少,再加上127得到指數(shù)位的數(shù)。
尾數(shù)位則是將二進制的首個1去掉之后的數(shù)值。
對于K6.3:
符號位為0(正數(shù));
轉(zhuǎn)化為二進制為110.01001100110011001100……即1.1001001100110011001……×22
那么:指數(shù)位就是2+127=129轉(zhuǎn)為2進制為10000001;尾數(shù)位就是1001001100110011001……
所以它的浮點數(shù)在CPU中存儲為:0100 0000 1100 1001 1001 1001 1001 1001
三菱的數(shù)據(jù)寄存器儲存32位數(shù)據(jù)是按照【D1 D0】這樣的結(jié)構(gòu)來保存的,也就是D1存儲前16位,D0存儲后16位;
所以D1中的數(shù)據(jù)是0100 0000 1100 1001 -------------------現(xiàn)在把它轉(zhuǎn)為10進制,就得到了16585。