首页
/
每日頭條
/
圖文
/
計算機中有符号和無符号
計算機中有符号和無符号
更新时间:2026-07-08 09:18:03
有符号數和無符号數

學習了二進制數據,我們知道,在計算機系統中,存儲的任何數據都是以二進制數據的格式存儲。存儲數據的最小單位是字節(Byte),一個字節的容量是八位(bit),可以存儲8個二進制數據。在講解“有符号數”和“無符号數”之前,我們先來舉一個例子。

計算機中有符号和無符号(計算機世界裡的)1

例如,有個人(稱呼A)去爬山,半路上碰到一個朋友,朋友送了他一瓶水,此時A手上擁有一瓶水;那麼,有如下的情況:

(1) 如果A覺得渴,那麼,A覺得手上的這瓶水很寶貴,就把這瓶水喝掉;

(2) 如果A覺得不渴,那麼,A覺得手上的這瓶水很重,麻煩,就丢掉;

(3) A手上的那瓶水,永遠是那瓶水,本身沒有任何變化。但是,A以不同的角度來看這瓶水,那麼,會得到不同的結果。

在這個例子中,可以進行比較,如下:

(1) 人員A就如同一個計算機系統;

(2) 人員A手上拿有一瓶水,就如同計算機内存中,一個字節存儲的一個數值;

(3) 例如,在内存的一個字節中存儲255這個整數值。那麼,一個字節中的255這個數值,永遠是255,不會有任何改變。但是,計算機系統把255這個數值,以不同的角度來看待,會有不同的結果。

那麼,在計算機系統中,可以把内存中存儲的數值當做“有符号數”和“無符号數”來看待。同一個數值,以不同的角度來看待,有不同的結果。

下面,我們來看看計算機系統對“有符号數”和“無符号數”的處理。

有符号數的定義是:字節的最高位作為符号位,其餘的是數值位。例如一個字節中存儲的二進制數為1100 1000,最高位1作為符号位,其餘的7位 100 1000 作為數值位。

那麼,符号位占據1位,就有0和1這樣的兩種數值,就有:

(1) 如果符号位為0,那麼字節中存儲的數值是正數;

(2) 如果符号位為1,那麼字節中存儲的數值是負數;

對于1100 1000這樣的二進制數據,符号位是1,就表示負數。在有符号數中,表示負數的算法是:

(1) 把數值位中存儲的二進制數據,每個位都取反,就是原來為0的值變為1,原來為1的值變為0;

(2) 給對取反後的二進制數據加1,得到的數值就得到負數值;

所以,有符号數可以表示正數,也可以表示負數。

無符号數的定義是:沒有符号位,所有的位數都是數值位。所以表示的都是正數。

例如1100 1000這個數值,如果作為有符号數看待,那麼符号位是1,數值位是100 1000。所以,符号位是1,所以,這個數據是負數。然後,表示成十進制時,對數值位的操作是:

(1) 數值位取反,得到011 0111;

(2) 對取反後的數值 011 0111加1得到011 1000,數值位的值為56;

那麼,1100 1000這個二進制數據表示為“有符号數”時,就是-56這個數值。

如果作為無符号數看待,那麼,就沒有符号位,所有的位數都是數值位,所以11001000都作為數值位,表示的十進制數值是180。

例如,0111 0011這個數值,如果當做“有符号數”看待,那麼,其符号位是0,所以,表示正數,數值位是115,所以,表示正115這個數值。如果當做無符号數看待,所有位都是數值位,計算得到115這個數值,所以,表示正115。所以我們可以總結:

(1) 無符号數,總是表示正數。所有位數都表示數值位。

(2) 有符号數,可以表示正數和負數,最高位是符号位,其餘位都是數值位。如果符号位是0,則表示正數;如果符号位是1,則表示負數。對于負數的表示方法是:數值位全部取反,再加1,得到的數值就是負數值。

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
湛江黃氏是哪位祖先後人(湛江黃姓的重要一支)
湛江黃氏是哪位祖先後人(湛江黃姓的重要一支)
  黃姓是兩廣地區的重要姓氏,在廣西排第一,在廣東排第二。廣東姓氏前三名是“陳、黃、李”,廣西姓氏前三名是“黃、李、梁”。   在湛江,黃姓也僅次于陳姓,和李姓不相上下。廉江的黃姓排第一,别的縣市區也是二三名的樣子。比如徐聞十大姓氏排名是陳、黃、鄧、李、林、楊、鄭、梁、王、張;遂溪的十大排名是陳、黃、李、周、楊、王、林、梁、鄭、吳。黃排名第二,處于非常重要的...
2026-07-08
青紅椒炒鮮目魚的做法(不容錯過的鮮美滋味)
青紅椒炒鮮目魚的做法(不容錯過的鮮美滋味)
     By 503飛啊   用料   目魚 300克芹菜 适量料酒 1湯勺姜 2片蔥 2根東古醬油 适量白糖 适量   做法步驟      1、目魚清洗幹淨切條 ,燒一鍋水 水開下目魚條燙10秒就撈出,冷水沖洗一下,瀝幹水分後加料酒蔥姜2克鹽拌勻後備用。      2、芹菜清洗幹淨後切成自己喜歡的段。      3、鍋中水燒開,下芹菜燙至變色撈出。   ...
2026-07-08
python常用标準庫整理(100個相見恨晚的Python庫)
python常用标準庫整理(100個相見恨晚的Python庫)
  在python程序員成為大神之前,都不可避免的都要做一段時間的調包俠   那就算是調包俠也都會有自己調包秘籍,拿出來能讓他人感歎“相見恨晚”的那種      在Github上有個awesome-python這麼個項目,能獲得110k stars隻能說知道的人太少了   它總結了Web 框架、網絡爬蟲、網絡内容提取、模闆引擎、數據庫、數據可視化、圖片處理、...
2026-07-08
為什麼不建議養薩摩耶(是誰說薩摩耶好養的)
為什麼不建議養薩摩耶(是誰說薩摩耶好養的)
  都說薩摩耶是“微笑天使”,是的沒錯,微笑起來确實是天使,但是讓人沒想到的是它頂着一個天使的臉龐做着惡魔的事情,到底是誰說薩摩耶好養的?你可真是害慘我了!不由得暗戳戳地懷疑:慫恿我養薩摩耶的人,沒安好心!      勇奪“拆家小霸王”稱号你說長得這麼好看的狗狗,怎麼就這麼能拆家呢?難道它知道自己頂着天使面龐“作惡”沒人會舍得收拾它?這貨跟二哈真是不相上下!...
2026-07-08
澳洲永居可以申請新西蘭永居嗎(如何移民奧地利)
澳洲永居可以申請新西蘭永居嗎(如何移民奧地利)
  奧地利作為世界知名的發達國家,除了“落榜美術生”為人所知外,首都維也納作為世界藝術與音樂之都、多年蟬聯世界最宜居住城市第一名、連續十幾年評選為世界最宜居城市前五等為人所知,但是德語國家的移民政策是非常難的,奧地利作為德語區三強國家之一,移民政策的艱難也為人所知,整個國家沒有合适普通人移民的方法,即使是團聚移民,如果奧地利配偶沒有滿足條件的穩定收入,也不能...
2026-07-08
Copyright 2023-2026 - www.tftnews.com All Rights Reserved