為什麼十六進製制字首是0x?

時間 2022-01-22 19:12:36

1樓:空心人

以下是個人見解,並且以C語言為背景。

首先,根據C語言變數名的命名規則:變數名只能由數字、字母、下劃線構成,且必須由字母開頭。

其次,十六進製制數的組成部分有0-9以及ABCDEF,八進位制數的組成有0-7,十進位制數的組成有0-9,這其中有相互交叉的部分。

根據這一點,我認為要表示乙個十六進製制、八進位制的數字,需要用東西來標識,用於和十進位制數字進行區分。這個識別符號,最好以數字開頭,不以字母和下劃線開頭,避免把乙個數字整體識別為變數。數字中,選用0比較合適,不會對數字進行錯誤的解釋,不會改變量字的大小。

再然後,區分八進位制和十六進製制,多加乙個字元用於區分即可。這裡十六進製制數字的字首為0x,可能是取了十六進製制英文hexadecimal中的x,或者是和其他人說的一樣,x比較少用。另外八進位制英文為Octal ,首字母O和數字0相似,用0作為字首表示八進位制符合習慣,轉而十六進製制沿用此方法,只是多加乙個字元x用於表示十六進製制,與八進位制進行區分。

2樓:吳文皓

[0]是便於直譯器的識別,[x]是十六進製制的標誌

3樓:

為什麼在ASCII編碼下'a' <==> '97' ??

不為什麼,因為就是這麼規定的。

4樓:李子南瓜

十六進製制 hexadecimal

八進位制 octal

二進位制 binary

十進位制 decimal

十六進製制數怎麼變成十六進製制補碼?

new 前提內在條件 計算機對資料的計算方式是 採用數的補碼進行直接的加減運算。在計算機系統中,數值一律用補碼來表示和儲存。使用補碼,可以將符號位和數值域統一處理 同時,加法和減法也可以統一處理。原碼不能直接參加運算,可能會出錯。例如數學上,1 1 0,而在二進位制中00000001 1000000...

二進位制 八進位制 十進位制 十六進製制 怎麼學會?是怎麼算的方式?

訬禕 這個是前段時間發現的很有意思的進製轉換 看整數部分運算,本來十進位制轉二進位制整數轉換規則 除以基數二 取餘,最後商為0 但我發現這個解題過程,商數為1,結束轉換這種類似的錯誤普遍存在,但好在通過反向求和可以驗算轉換是否存在錯誤,我個人覺得驗算還是可以讓自己少一些錯誤。 我也是現在才真正想清楚...

鐘錶為什麼是十二進位制?

狗兒 雖然十進位制有迷人吸引力,然而,人們發現十進位制的鐘錶使用並沒有給人們帶來方便。從數字分割的通融性來看,10和60相比要差得多,10只有1 2和5等3個約數,涉及到2和5以外的數去平分10就會出現分數或小數,將10這個數3等分更不能均分。而60有1 2 3 4 5 6 10 12 15 20 ...