⑴ 關於字元和整數在計算機內存中的存儲格式
字元類型的在內存中存儲形式是以相對應的ascll碼值的二進制存儲。
整數類型在內存中存儲所需的位元組根據系統位數和編譯器等因素決定,如果是存儲有符號數據的話,在內存中存儲的二進制數據可以說是它的補碼形式。正數的反碼、補碼是它自身,也就是存儲自身的二進制形式。負數在內存中的存儲形式是也是它的補碼。負數的補碼是它的反碼(首位符號位不變,其他位取反)+1。總之字元有字元在內存中的存儲,整數也有它相應在內存中的存儲形式。
⑵ C語言中整形數據在內存中的儲存形式是什麼
整形數據在計算機中的數據的保存和運算都是以二進制的形式進行的,但不是直接的原碼,而是原碼的補碼,也就是說在計算機中,數據的運算都是以數據的補碼進行的.
整型數據在內存中的存放形式
如果定義了一個整型變數i:
int
i=10;
【0000000000001010】
數值是以補碼表示的:
n
正數的補碼和原碼相同;
n
負數的補碼:將該數的絕對值的二進制形式按位取反再加1。
例如:
求-10的補碼:
10的原碼:
【0000000000001010】
取反:
【1111111111110101】
再加1,得-10的補碼:【1111111111110110】
由此可知,左面的第一位是表示符號的。
整型數據在內存中所佔的位數(如下圖所示):