當前位置:首頁 » 編程語言 » c語言符號數128二進製表示
擴展閱讀
等價交換伺服器我的世界 2022-09-30 20:27:50
七彩配置能玩什麼游戲 2022-09-30 20:27:31
試紙前端開口 2022-09-30 20:27:30

c語言符號數128二進製表示

發布時間: 2022-08-20 03:57:59

A. c語言 1個位元組 范圍為什麼是 -128 — 127,-128怎麼算的

正數一個位元組最大隻能是127,128超過了一個位元組能表示的最大值,127是01111111,加1, 00000001等於
10000000,最高為是2的7次方等於128,由於一個位元組的最大值是127,所以128就只能是-128,但是這里的符號位應該是補全的碼,由於只有一個位元組看不到

B. PC機中十進制整數128使用帶符號整數表示時,至少需要多少個二進制位

十進制整數128使用帶符號整數表示時,至少需要9個2進制位。
其表示為:010000000,其中高位0為符號位(表示正數)。

C. C語言中怎樣表示二進制數據

c語言中沒有二進制的格式輸出符號.
你可以用itoa函數很方便的將一個10進制int轉變成二進制字元串.
如:
int i;
char s[128];
scanf("%d",&i);
itoa(i, s, 2); /*3個參數,第一個是待轉換的數,第二個是存放轉換後的字元串,第三個即需要轉換的進制*/
printf("該數轉換為二進制是: [%s]\n",s);

補充一點,itoa函數的頭文件是stdlib.h

D. 為什麼-128二進製表示是80H不是81H

-128的十六進製表示為FF80H,其十六進製表示為11111110000000,帶符號的數字由補碼表示,定義補碼是為了便於運算。

二進制是一種廣泛應用於計算技術的數字系統。二進制數據是由數字0和1表示的數字。它的基數是2,進位規則是每2進1,借位規則是2進1。

二進制的優點和缺點是顯而易見的。它的優點是只有兩個數字0和1,所以每個數字都可以用任何具有兩個不同穩定狀態的元素來表示。

基本操作規則簡單,操作方便。缺點是當一個數字用二進製表示時,會有很多位。因此,實際使用前要使用十進制系統進行輸入。

(4)c語言符號數128二進製表示擴展閱讀:

使用四位數的二進制代碼來表示一位數的十進制數稱為二進制十進制代碼或BCD。根據代碼是否正確值的每一位BCD碼可分為正確的代碼和未經授權的代碼兩種類型。

應用最多的是8421BCD碼,未經授權的代碼使用更多的剩餘三個代碼和格雷碼,我們通常說BCD碼是指8421BCD碼。

8421BCD代碼中的「8421」表示從高到低的每個位對應的權值分別為8、4、2、1。將每一位與權值相乘,再將乘積相加得到相應的小數。例如8421BCD代碼「0111」,0×8+1×4+1×2+1×1=7D,其中D為小數。

特別值得注意的是,8421BCD碼只有0000~1001的總數為10,而1010、1011…等等,不是8421BCD。

E. C語言中 有符號類型的int范圍(-128----127)是怎麼求出來的,特別是-128 怎麼理解 負數用二進制怎麼表示

恩!首先要指出你的一個錯誤!int的范圍不是(-128----127)這個是char的范圍,

范圍的大小是由類型所佔有的位元組來決定的。如此所示:char是一個位元組8bit,那麼在二進制中,8bit最大值是255,最小值是0(在是在無符號時)如果是有符號的話.那麼就還有一位是符號為,最高位是符號為。例如:1111 1111:如果是有符號的char數據那麼這個數的-1;最高是符號位,如果是1,就是負數,如果是0是正數。
0111 1111 就是+127;
那麼1111 1111 怎麼理解是-1嗯!在數電中提到,對於一個負數要用它的反碼來表示。
如:1111 1111 的反碼是1000 0001.怎麼的來呢!?
首先,我們要得到-1的值,那麼第一步是的好1000 0001,最高位1是符號位,最後一個1是數值位。但是在機器中我們要用反碼來表示此值。那麼就要求他的反碼。反碼的求法是符號位不變。數值位取反加一。

取反後是結果是:1111 1110

再加一的結果是:1111 1111

如果是1,那麼1 的8位表示是0000 0001
解釋的很少!你可以自己看看,如果不懂可以在聊!

F. 急!!!計算機編碼,+128的二進制數是多少

八位二進製表示的范圍是—128到127,沒辦法表示128,可以用十六位二進製表示,0000 0001 0000 0000。

G. C語言二進制數怎麼寫

c語言中沒有二進制的格式輸出符號.
你可以用itoa函數很方便的將一個10進制int轉變成二進制字元串.
如:
int i;
char s[128];
scanf("%d",&i);
itoa(i, s, 2); /*3個參數,第一個是待轉換的數,第二個是存放轉換後的字元串,第三個即需要轉換的進制*/
printf("該數轉換為二進制是: [%s]\n",s);

補充一點,itoa函數的頭文件是stdlib.h
(你自己不查以前已經有的問題)