www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁(yè) > 芯聞號(hào) > 充電吧
[導(dǎo)讀]#includeint main(){float a = 1.0f;cout << sizeof(int)<<endl;//4cout << sizeof(floa

#include

int main()
{
float a = 1.0f;

cout << sizeof(int)<<endl;//4
cout << sizeof(float)<<endl;//4

cout << (int)a<< endl;//1
cout << &a<< endl;
cout << (int)&a<< endl;
cout << (int&)a<< endl;
????

cout << boolalpha<< ((int)a == (int&)a) <<endl;//??輸出false.因?yàn)?!=1065353216.

float b = 0.0f;
cout << (int)b<< endl;//0
cout << &b<< endl;
cout << (int&)b<< endl;//0
cout << boolalpha<< ((int)b == (int&)b) <<endl;//?? 輸出true,因?yàn)?==0;

return 0;
}

========================c語(yǔ)言中FLOAT是如何表示的===========================

c語(yǔ)言中FLOAT 是如何表示的?尾數(shù),階碼是如何在32位上安排的,即哪幾位是尾數(shù),哪幾位是階碼,那一位是符號(hào)位。聽(tīng)說(shuō)與CPU有關(guān),是真的嗎?


???在C++里,實(shí)數(shù)(float)是用四個(gè)字節(jié)即三十二位二進(jìn)制位來(lái)存儲(chǔ)的。其中有1位符號(hào)位,8位指數(shù)位和23位有效數(shù)字位。實(shí)際上有效數(shù)字位是24位,因?yàn)榈谝晃挥行?shù)字總是“1”,不必存儲(chǔ)。
???有效數(shù)字位是一個(gè)二進(jìn)制純小數(shù)。8位指數(shù)位中第一位是符號(hào)位,這符號(hào)位和一般的符號(hào)位不同,它用“1”代表正,用”0“代表負(fù)。整個(gè)實(shí)數(shù)的符號(hào)位用“1”代表負(fù),“0”代表正。
???在這存儲(chǔ)實(shí)數(shù)的四個(gè)字節(jié)中,將最高地址字節(jié)的最高位編號(hào)為31,最低地址字節(jié)的最低位編號(hào)為0,則實(shí)數(shù)各個(gè)部分在這32個(gè)二進(jìn)制位中的分布是這樣的:31位是實(shí)數(shù)符號(hào)位,30位是指數(shù)符號(hào)位,29---23是指數(shù)位,22---0位是有效數(shù)字位。注意第一位有效數(shù)字是不出現(xiàn)在內(nèi)存中的,它總是“1”。
????
???將一個(gè)實(shí)數(shù)轉(zhuǎn)化為C++實(shí)數(shù)存儲(chǔ)格式的步驟為:
???(1)先將這個(gè)實(shí)數(shù)的絕對(duì)值化為二進(jìn)制格式,注意實(shí)數(shù)的整數(shù)部分和小數(shù)部分化為二進(jìn)制的方法是不同的。
???(2)將這個(gè)二進(jìn)制格式實(shí)數(shù)的小數(shù)點(diǎn)左移或右移n位,直到小數(shù)點(diǎn)移動(dòng)到第一個(gè)有效數(shù)字的右邊。
???(3)從小數(shù)點(diǎn)右邊第一位開(kāi)始數(shù)出二十三位數(shù)字放入第22到第0位。
???(4)如果實(shí)數(shù)是正的,則在第31位放入“0”,否則放入“1”。
? ?(5)如果n是左移得到的,說(shuō)明指數(shù)是正的,第30位放入“1”。如果n是右移得到的或n=0,則第30位放入“0”。
???(6)如果n是左移得到的,則將n減去一然后化為二進(jìn)制,并在左邊加“0”補(bǔ)足七位,放入第29到第23位。如果n是右移得到的或n=0,則將n化為二進(jìn)制后在左邊加“0”補(bǔ)足七位,再各位求反,再放入第29到第23位。
????
???將一個(gè)計(jì)算機(jī)里存儲(chǔ)的實(shí)數(shù)格式轉(zhuǎn)化為通常的十進(jìn)制的格式的方法如下:
???(1)將第22位到第0位的二進(jìn)制數(shù)寫(xiě)出來(lái),在最左邊補(bǔ)一位“1”,得到二十四位有效數(shù)字。將小數(shù)點(diǎn)點(diǎn)在最左邊那個(gè)“1”的右邊。
???(2)取出第29到第23位所表示的值n。當(dāng)30位是“0”時(shí)將n各位求反。當(dāng)30位是“1”時(shí)將n增1。
???(3)將小數(shù)點(diǎn)左移n位(當(dāng)30位是“0”時(shí))或右移n位(當(dāng)30位是“1”時(shí)),得到一個(gè)二進(jìn)制表示的實(shí)數(shù)。
???(4)將這個(gè)二進(jìn)制實(shí)數(shù)化為十進(jìn)制,并根據(jù)第31位是“0”還是“1”加上正號(hào)或負(fù)號(hào)即可。

???特別地,實(shí)數(shù)0用C++的float格式表示是00000000000000000000000000000000。


如果還不太明白,這里舉幾個(gè)例子。
???一。將23.56化為C++的float格式。
???(1)將23.56化為二進(jìn)制后大約是“10111.1000111101011100001”。
???(2)將小數(shù)點(diǎn)左移四位,得到“1.01111000111101011100001”。
???(3)這已經(jīng)有了二十四位有效數(shù)字,將最左邊一位“1”去掉,得到“01111000111101011100001”。將它放入第22到第0位。
???(4)因?yàn)?3.56是正數(shù),因此在第31位放入“0”。
???(5)由于我們把小數(shù)點(diǎn)左移,因此在第30位放入“1”。
???(6)因?yàn)槲覀兪前研?shù)點(diǎn)左移4位,因此將4減去1得3,化為二進(jìn)制,并補(bǔ)足七位得到0000011,放入第29到第23位。
??? 完畢。
???如果把最左邊定為第31位,最右邊定為第0位,那么在C++里,float格式的23.56是這樣表示的:01000001101111000111101011100001。相應(yīng)地-23.56就是這樣表示的:11000001101111000111101011100001。

???二。將實(shí)數(shù)0.2356化為C++的float格式。
???(1)將0.2356化為二進(jìn)制后大約是0.00111100010100000100100000。
???(2)將小數(shù)點(diǎn)右移三位得到1.11100010100000100100000。
???(3)從小數(shù)點(diǎn)右邊數(shù)出二十三位有效數(shù)字,即11100010100000100100000放入第22到第0位。
???(4)由于0.2356是正的,所以在第31位放入“0”。
???(5)由于我們把小數(shù)點(diǎn)右移了,所以在第30位放入“0”。
???(6)因?yàn)樾?shù)點(diǎn)被右移了3位,所以將3化為二進(jìn)制,在左邊補(bǔ)“0”補(bǔ)足七位,得到0000011,各位取反,得到1111100,放入第29到第23位。
? ? ?完畢。因此0.2356用C++的float格式表示是:00111110011100010100000100100000。其中最左邊一位是第31位,最右邊一位是第0位。

???三。將實(shí)數(shù)1.0化為C++的float格式。
???(1)將1.0化為二進(jìn)制后是1.00000000000000000000000。
???(2)這時(shí)不用移動(dòng)小數(shù)點(diǎn)了,這就是我們?cè)谵D(zhuǎn)化方法里說(shuō)的n=0的情況。
???(3)將小數(shù)點(diǎn)右邊的二十三位有效數(shù)字00000000000000000000000放入第22到第0位。
???(4)因?yàn)?.0是正的,所以在第31位里放入“0”。
???(5)因?yàn)閚=0,所以在第30位里放入“0”。
???(6)因?yàn)閚=0,所以將0補(bǔ)足七位得到0000000,各位求反得到1111111,放入第29到第23位。
? ? ?完畢。所以實(shí)數(shù)1.0用C++的float格式表示是:00111111100000000000000000000000。其中最左邊一位是第31位,最右邊一位是第0位。


???這是IEEE短實(shí)數(shù)格式,適合X86cpu。


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉