欧美疯狂三p群体交乱视频,搡老女人多毛老妇女中国,天天夜碰日日摸日日澡性色av,大乳videos巨大

為什么會(huì)有內(nèi)存對(duì)齊

時(shí)間:2020-11-21 18:19:44 筆試題目 我要投稿

為什么會(huì)有內(nèi)存對(duì)齊

  字,雙字,和四字在自然邊界上不需要在內(nèi)存中對(duì)齊。(對(duì)字,雙字,和四字來說,自然邊界分別是偶數(shù)地址,可以被4 整除的地址,和可以被8 整除的地址。)

  無論如何,為了提高程序的性能,數(shù)據(jù)結(jié)構(gòu)(尤其是棧)應(yīng)該盡可能地在自然邊界上對(duì)齊。原因在于,為了訪問未對(duì)齊的內(nèi)存,處理器需要作兩次內(nèi)存訪問;然而,對(duì)齊的內(nèi)存訪問僅需要一次訪問。

  一個(gè)字或雙字操作數(shù)跨越了4 字節(jié)邊界,或者一個(gè)四字操作數(shù)跨越了8 字節(jié)邊界,被認(rèn)為是未對(duì)齊的,從而需要兩次總線周期來訪問內(nèi)存。

  一個(gè)字起始地址是奇數(shù)但卻沒有跨越字邊界被認(rèn)為是對(duì)齊的,能夠在一個(gè)總線周期中被訪問。某些操作雙四字的指令需要內(nèi)存操作數(shù)在自然邊界上對(duì)齊。如果操作數(shù)沒有對(duì)齊,這些指令將會(huì)產(chǎn)生一個(gè)通用保護(hù)異常。

  雙四字的自然邊界是能夠被16 整除的地址。其他的操作雙四字的指令允許未對(duì)齊的訪問(不會(huì)產(chǎn)生通用保護(hù)異常),然而,需要額外的內(nèi)存總線周期來訪問內(nèi)存中未對(duì)齊的`數(shù)據(jù)。

  缺省情況下,編譯器默認(rèn)將結(jié)構(gòu)、棧中的成員數(shù)據(jù)進(jìn)行內(nèi)存對(duì)齊。因此,上面的程序輸出就變成了:c1 00000000, s 00000002, c2 00000004, i 00000008。

  編譯器將未對(duì)齊的成員向后移,將每一個(gè)都成員對(duì)齊到自然邊界上,從而也導(dǎo)致了整個(gè)結(jié)構(gòu)的尺寸變大。盡管會(huì)犧牲一點(diǎn)空間(成員之間有部分內(nèi)存空閑),但提高了性能。

  也正是這個(gè)原因,我們不可以斷言sizeof(TestStruct1)的結(jié)果為8。在這個(gè)例子中,sizeof(TestStruct1)的結(jié)果為12。

【為什么會(huì)有內(nèi)存對(duì)齊】相關(guān)文章:

為什么會(huì)有閏月07-24

為什么嬰兒會(huì)有黃疸10-25

為什么會(huì)有精神分裂癥08-28

街舞鬼步舞為什么會(huì)有力量感10-01

word怎樣快速制作虛線對(duì)齊11-11

CAD標(biāo)注對(duì)齊尺寸的方法08-10

詳細(xì)解釋紅茶為什么會(huì)有這么多人喜歡飲用09-17

CSS入門知識(shí)-圖片水平對(duì)齊技巧10-15

CAD多行文字怎么豎著對(duì)齊09-12

主站蜘蛛池模板: 天柱县| 临安市| 南华县| 屯昌县| 仲巴县| 尚志市| 清水河县| 刚察县| 泊头市| 会理县| 珠海市| 焦作市| 凤冈县| 建平县| 南宫市| 深泽县| 连城县| 贡嘎县| 景洪市| 剑阁县| 天门市| 稷山县| 普兰店市| 岢岚县| 富裕县| 香港 | 如皋市| 聊城市| 郑州市| 常德市| 青岛市| 民和| 曲沃县| 涞源县| 安远县| 阿合奇县| 新丰县| 芷江| 江安县| 宁都县| 福泉市|