1樓:匿名使用者
if(numstr.charat(i)<'a')num = num*16 + (numstr.charat(i)-'0');//這句不知道什麼意思,請解釋一下
else
num = num*16 + (numstr.charat(i) - 'a' + 10);//這句不知道什麼意思,請解釋一下
}使用ascii去考慮。。。。。。。。。。
16進製制怎麼轉為10進製.
2樓:北域沙子
16進製制數的第0位的權值為16的0次方,第1位的權值為16的1次方,第2位的權值為16的2次方……
所以,在第n(n從0開始)位上,如果是是數 x (x 大於等於0,並且x小於等於 15,即:f)表示的大小為 x * 16的n次方。
例:2af5換算成10進製:
用豎式計算:
第0位: 5 * 16^0 = 5
第1位: f * 16^1 = 240
第2位: a * 16^2= 2560
第3位: 2 * 16^3 = 8192
直接計算就是:
5 * 16^0 + f * 16^1 + a * 16^2 + 2 * 16^3 = 10997
十六進製制轉換
十六進製制轉換有16進製制每一位上可以是從小到大為0、1、2、3、4、5、6、7、8、9、a、b、c、d、e、f16個大小不同的數,即逢16進1,其中用a,b,c,d,e,f(字母不區分大小寫)這六個字母來分別表示10,11,12,13,14,15。
定義16進製制即逢16進1,每一位上可以是從小到大為0、1、2、3、4、5、6、7、8、9、a、b、c、d、e、f共16個大小不同的數。16進製制轉換即16進製制與其他不同進製之間的換算轉換,常見如2進製、8進製、10進製等進製。
擴充套件資料
2進製轉16進製制
16進製制就有16個數,0~15,用二進位制表示15的方法就是1111,從而可以推斷出,16進製製用2進製可以表現成0000~1111,顧名思義,也就是每四個為一位。舉例:
00111101可以這樣分:
0011|1101(最高位不夠可用零代替),對照著二進位制的**,1024 512 256 128 64 32 16 8 4 2 1 (一般例舉這麼多就夠了,如果有小數的話就繼續往右邊列舉,如0.5 0.25 0.
125 0.0625……)
1024 512 256 128 64 32 16 8 4 2 1
0 0 1 1| 1 1 0 1
左半邊=2+1=3 右半邊=8+4+1=13=d
結果,0111101就可以換算成16進製制的3d。
3樓:臨淵羡魚
方法:16轉10
16進製制數的第0位的權值為16的0次方,第1位的權值為16的1次方,第2位的權值為16的2次方……
所以,在第n(n從0開始)位上,如果是是數 x (x 大於等於0,並且x小於等於 15,即:f)表示的大小為 x * 16的n次方。
例:2af5換算成10進製:
用豎式計算:
第0位: 5 * 16^0 = 5
第1位: f * 16^1 = 240
第2位: a * 16^2= 2560
第3位: 2 * 16^3 = 8192
直接計算就是:
5 * 16^0 + f * 16^1 + a * 16^2 + 2 * 16^3 = 10997
4樓:根鬧公尺
16進製制就是逢16進1,但我們只有0~9這十個數字,所以我們用a,b,c,d,e,f這六個字母來分別表示10,11,12,13,14,15。字母不區分大小寫。
十六進製制數的第0位的權值為16的0次方,第1位的權值為16的1次方,第2位的權值為16的2次方……
所以,在第n(n從0開始)位上,如果是是數 x (x 大於等於0,並且x小於等於 15,即:f)表示的大小為 x * 16的n次方。
例如十六進製制轉換有16進製制每一位上可以是從小到大為0、1、2、3、4、5、6、7、8、9、a、b、c、d、e、f16個大小不同的數,即逢16進1,其中用a,b,c,d,e,f(字母不區分大小寫)這六個字母來分別表示10,11,12,13,14,15。
5樓:彭珂的課堂
c語言_012_十六進製制轉十進位制
6樓:匿名使用者
16進製制轉換10進製的方法:
16進製制就是逢16進1,0~9這十個數字相同,我們用a,b,c,d,e,f這六個字母來分別表示10,11,12,13,14,15。字母不區分大小寫。
十六進製制數的第0位的權值為16的0次方,第1位的權值為16的1次方,第2位的權值為16的2次方,依次類推。
所以,在第n(n從0開始)位上,如果是數a (a大於等於0,並且a小於等於 15,即:f)表示的大小為 a×16的n次方。
假設有乙個十六進數 2af5
直接計算就是:
5×16º+f×16¹+a×16²+2×16³=10997
也可以用豎式表示:
第0位: 5×160=5
第1位: f×16¹=240
第2位: a×16²=2560
第3位: 2×16³=8192
16進製制
十六進製制(英文名稱:hexadecimal),是計算機中資料的一種表示方法。同我們日常生活中的表示法不一樣。
它由0-9,a-f組成,字母不區分大小寫。與10進製的對應關係是:0-9對應0-9;a-f對應10-15;n進製的數可以用0~(n-1)的數表示,超過9的用字母a-f。
7樓:霍格沃茲的優等生
先轉化為 二進位制,在吧二進位制轉換為十進位制
8樓:聽不清啊
這個個是隨便亂打的吧?只是告訴你求解這個問題的方法吧,你真要想知道答案,只要依法而行,自己慢慢算就可以了。
十六進製制數的第0位的權值為16的0次方,第1位的權值為16的1次方,第2位的權值為16的2次方……
所以,在第n(n從0開始)位上,如果是是數 x (x 大於等於0,並且x小於等於 15,即:f)表示的大小為 x * 16的n次方。
假設有乙個十六進數 8e70, 那麼如何換算成10進製呢?
用豎式計算: 2af5換算成10進製:
第0位: 0 * 16^0 = 0
第1位: 7 * 16^1 = 112
第2位: 14 * 16^2 = 3584
第3位: 8 * 16^3 = 32768 +
-------------------------------------
36464
直接計算就是:
0 * 16^0 + 7 * 16^1 + 14 * 16^2 + 8 * 16^3 = 36464
其中,a表示10,b表示11,c表示12,d表示13,e表示14,f表示15。
十六進製制數如何轉換成十進位制?
9樓:丿染指流年丶丶
16進製制數的第0位的權值為16的0次方,第1位的權值為16的1次方,第2位的權值為16的2次方…
所以,在第n(n從0開始)位上,如果是是數 x (x 大於等於0,並且x小於等於 15,即:f)表示的大小為 x * 16的n次方。
進製轉換表:
例:2af5換算成10進製:
用豎式計算:
第0位: 5 * 16^0 = 5
第1位: f * 16^1 = 240
第2位: a * 16^2= 2560
第3位: 2 * 16^3 = 8192
-------------------------------------
10997
直接計算就是:
5 * 16^0 + f * 16^1 + a * 16^2 + 2 * 16^3 = 10997
擴充套件資料:
十六轉十的乘法口訣:
一峘一拾六
二峘三拾二
三峘四拾八
四峘六拾四
五峘八拾
六峘九拾六
七峘一百一拾二
八峘一百二拾八
九峘一百四十四
十峘一百六
屲峘一百七拾六
亗峘一百九拾二
岌峘二百零八
岄峘二百二拾四
岪峘二百四
10樓:枕邊吹風會
16進製制就是逢16進1,但我們只有0~9這十個數字,所以我們用a,b,c,d,e,f這六個字母來分別表示10,11,12,13,14,15。字母不區分大小寫。
十六進製制數的第0位的權值為16的0次方,第1位的權值為16的1次方,第2位的權值為16的2次方……
所以,在第n(n從0開始)位上,如果是是數 x (x 大於等於0,並且x小於等於 15,即:f)表示的大小為 x * 16的n次方。
例如十六進數 2af5, 轉化成10進製的步驟:
用豎式計算:
2af5換算成10進製:
第0位:
第1位:
第3位:
直接計算就是:
可以看出,所有進製換算成10進製,關鍵在於各自的權值不同。
擴充套件資料:
進製轉換是人們利用符號來計數的方法。進製轉換由一組數碼符號和兩個基本因素「基數」與「位權」構成。基數是指,進製計數制中所採用的數碼(數制中用來表示「量」的符號)的個數。
位權是指,進製中每一固定位置對應的單位值。
十進位制中的數字排列是這樣的:
…… 萬 千 百 十 個 十分 百分 千分……
16進製制中的數字排列是這樣的:
11樓:
4個2進製位為乙個16進製制數,2進製1111為16進製制f,2進製中千位的1=8,百位的1=4,十位的1=2,個位的1=1,將各個位的數作相應轉換再相加,的到的數就是10進製數0-15,可輕鬆轉換成16進製制。如01011100,可看成是兩組2進製數0101和1100,則這個數就是16進製制的5c。
10轉16:
100以內一點的10轉16心算比較快,複雜的用「計算器」算了。10轉16用傳統的計算方式可以了,就是大於15小於256的10進製數除以16為的值為十位的16進製制數,其餘數為個位的16進製制數,沒餘數則個位為0。如61的16進製制是3d,61除以16得3餘13,3作十位數,13轉成d為各位數。
16轉10:
用相反的道理,將十位數乘以16加上個位數。如5a,將5乘以16得80,加上a的10進製10,結果是90。
12樓:banji的老巢
十六進製制數轉換十進位制數,也是利用權值和開方所得,具體內容給你舉例說明:
例:十六進製制數2a4f,轉換為十進位制數為:f*16^0+4*16^1+a*16^2+2*16^3=15+64+2560+8192=10831。
十六進製制(hexadecimal)是計算機中資料的一種表示方法。同我們日常中的十進位制表示法不一樣。
十六進製制數的基數是16,採用的數碼是0、1、2、3、4、5、6、7、8、9、a、b、c、d、e、f。其中a-f分別表示十進位制數字10-15。十六進製制數的技術規則是"逢十六進一",它的各位的權是以16的n次方標識的。
通常,對十六進製制數的表示,可以在數字的右下角標註16或h,但在c語言中是在數的前面加數字0和字母x即0x來表示。例如,12af在c語言中表示為0x12af。
十六進製制數的加減法的進/借位規則為:借一當十六,逢十六進一。 十六進製制數同二進位制數及十進位制數一樣,也可以寫成式的形式。
什麼是16進製制,16進製制數是什麼?
16進製制就是每滿十六就進一位的計數進制法。16進製制有0 f十六個數字,它為表示十到十五的數字採用了a b c d e f六個數字,它們和十進位制的對應關係是 a對應於10,b對應於11,c對應於12,d對應於13,e對應於14,f對應於15。而且,16進製制數和二進位制數間有乙個簡單的對應關係,...
16進製制的數的拆分,16進製制轉換二進位制分成三個數
a c121 b left a,2 c right a,2 那麼b就是c1了,c就是21了。vb裡好象有些型別轉換函式,可以先把c121換成字元型的,然後擷取,再分別轉換成數值的,ok?stm32中如何將16進製制數拆分成2進製數 十六進製制數 轉換為 二進位制數 對應位替換就可以了。十六進製制 對...
16進製制問題
我是鬼灬 因為int 為帶符號型別,帶符號型別最高為是符號位,又因為0xffffffff,也就是四個位元組32 bits全是1,符號位是1,所以這個數是負數。記憶體中的數值為補碼表示,所以0xffffffff是乙個負數的補碼。負數從補碼求原碼,最高符號位不變,保持 1,其餘各位求反,末尾加1,也就是...