有符號的整數 負數在記憶體的存放形式

2021-06-20 19:07:35 字數 371 閱讀 7908

本文摘自:

有符號整數,正數的表示區間為:0x00000000-0x7fffffff;負數的表示區間:0x80000000-0xffffffff。

負數在記憶體中都是以補碼的形式存放,補碼的規則是用0減去這個數的絕對值。也可以表示為對這個數取反加1;

為什麼補碼是對這個數取反加1呢?因為,x+x(反)=0xffffffff,於是x+x(反)+1=0,所以可以推導出0-x=x(反)+1;

計算機只會做加法,計算機把減法都轉化為加法:

例如:3-2會轉化為3+(-2);-2的補碼為0xfffffffe。0x00000011+0xfffffffe=0x100000001; 儲存的範圍為4位元組大小。

超出的1將被捨棄,結果為0x00000001。

bmp在記憶體中的存放

bmp 儲存影象 每張圖按大小來儲存,即影象的長寬畫素大小。如果一張的畫素是 240x320,則此影象在記憶體的存放是乙個 240x320的陣列,每個陣列的元素是int整形 整數占用4個byte 數位相機中所謂的支援500w畫素就是這個意思,代表它能處理多大的圖形色彩資訊的能力,畫素越高,需要處理時...

資料在記憶體中的存放

在計算機系統中,執行的應用程式的資料都是儲存在記憶體之中 不同型別的資料,儲存的記憶體區域不同,其中包括 1 棧區 stack 由編譯器自動分配並釋放,一般存放函式的引數值,區域性變數等 2 堆區 heap 由程式設計師分配和釋放,如果程式設計師不釋放,程式結束時,可能會由作業系統 3 暫存器區 用...

關於String在記憶體中的存放

string s1 abc 這個字串s1被賦予了值 abc 首先,查詢stringpool中有沒有 abc 這個值,如果不存在,那麼就將其存進去,如果已經存在,那麼就會被s1所呼叫。string s1 abc string s2 abc s1和s2所指向的物件是同乙個,以下 能夠看出來 system...