正數的補碼怎么求 正數的補碼( 二 )


為什么要字節對齊?有些平臺只能在特定地址訪問特定類型的數據;根本原因是效率問題 。字節對齊可以提高訪問數據的速度 。
比如有些平臺總是從偶數地址讀取數據 。對于int類型的變量,如果從偶數地址單元存儲,只需要一個讀周期就可以讀取該變量,但如果從奇數地址單元存儲,則需要兩個讀周期才能讀取該變量 。
字節對齊數據成員對齊規則原理:結構(或union)的數據成員,第一個數據成員放在偏移量0處,以后每個數據成員的存儲起始位置要從成員大小的整數倍或成員的子成員大小開始(只要成員有子成員,如數組、結構等 。)(比如32位計算機上int為4字節,應該從4的整數倍地址開始) 。作為成員:如果一個結構中有一些成員,那么該結構的成員應該從該結構中最大元素大小的整數倍的地址開始存儲 。(struct a中有struct b,b,b中有char,int,double等元素,那么b應該從8的整數倍開始存儲 。)收尾工作:結構的總sizeof,即sizeof的結果,必須是其最大內部成員的整數倍,不足部分要補齊 。
【正數的補碼怎么求 正數的補碼】

推薦閱讀