當前位置:首頁 » 操作系統 » 十進制進制轉十六進制演算法

十進制進制轉十六進制演算法

發布時間: 2022-05-30 05:14:23

Ⅰ 關於十進制 轉十六進制演算法

把十進制數除以16,保留余數部分。得到余數以後就不要再往下除得小數。

代碼:

#include "stdio.h" int main()

{

int num=0;

int a[100];

int i=0;

int m=0;

int yushu;

char hex[16]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};

printf("請輸入一個十進制數:");

scanf("%d",&num); while(num>0) { yushu=num%16;

a[i++]=yushu;

num=num/16;

} printf("轉化為十六進制的數為:0x"); for(i=i-1;i>=0;i--)//倒序輸出 {m=a[i];

printf("%c",hex[m]); } printf(" ");

}

(1)十進制進制轉十六進制演算法擴展閱讀:

十進制轉十六進制

采余數定理分解,例如將487710轉成十六進制:

4877÷16=304....13(D)

304÷16=19....0

19÷16=1....3

1÷16=0....1

這樣就計到487710=130D16

Ⅱ 十進制轉十六進制

1、十六進制的計數方法是滿16進1,所以十進制數16在十六進制中是10,而十進制的17在十六進制中是11,以此類推,十進制的30在十六進制中是1E。

2、輸入格式 ,輸入包含一個非負整數a,表示要轉換的數。0<=a<=2147483647。

3、輸出格式,輸出這個整數的16進製表示。

4、樣例輸出 ,1E:

#include<iostream>

#include<cstdio>

#include<string>

using namespace std;

int main() {

__int64 shi;scanf("%I64d",&shi);

if (shi<=15) {

string ans="";

if (shi<10)

ans += shi+'0';

else

ans += shi-10+'A';

for (int i=ans.length()-1; i>=0; i--)

cout<<ans[i];

}

else {

string ans="";

do {

int tmp = shi%16;

if (tmp<10)

ans += tmp+'0';

else

ans += tmp-10+'A';

shi /= 16;

} while (shi>=16);

if (shi<10)

ans += shi+'0';

else

ans += shi-10+'A';

for (int i=ans.length()-1; i>=0; i--)

cout<<ans[i];

}

return 0;

}

(2)十進制進制轉十六進制演算法擴展閱讀

十六進制轉換為十進制

十六進制數轉十進制數方法:十六進制數按權展開,從十六進制數的右邊第一個數開始,每一個乘以16的n次方,n從0開始,每次遞增1。然後得出來的每個數相加即是十進制數。

Ⅲ 10進制轉化為16進制的演算法是怎樣算

除16取余數得最低1位,然後把商繼續除得第2位,直到商等於0
65036 除 16,余數 12(C),商4064
4064 除 16,余數 0(0),商254
254 除 16,余數 14(E),商15
15除16,余數 15(F),商0,結束
得16進制為 FE0C

Ⅳ 10進制轉16進制的計算方法是怎樣的

10進制轉16進制的計算方法是對於整數部分,用被除數反復除以16,除第一次外,每次除以16均取前一次商的整數部分作被除數並依次記下每次的余數。另外,所得到的商的最後一位余數是所求二進制數的最高位。具體的過程如下:

比如要轉換120為十六進制數:

1、把要轉換的數,除以16,得到商和余數,

2、那麼要轉換的數是120, 120 ÷ 16,得到商是7,余數是8。

3、「將商繼續除以16,直到商為0……」,現在商是7,還不是0,所以繼續除以16。那就 7 ÷ 16, 得到商是0,余數是7。現在商已經是0。

4、我們兩次計算依次得到余數分別是:8、7,將所有餘數倒序排列,那就是:78。

注意事項:

1、對於小數部分,採用連續乘以基數16,並依次取出的整數部分,直至結果的小數部分為0為止。故該法稱「乘基取整法」。

2、進制轉換是人們利用符號來計數的方法,進制轉換由一組數碼符號和兩個基本因素「基數」與「位權」構成。

Ⅳ 十進制數轉換為十六進制數的方法是什麼

將十進制數轉換成十六進制數,完全可以將整數部分除16取余按逆序排序;小數部分乘16取整,按順序排序,最後將兩部分合在一起。由於除16不方便,所以一般是將十進制數轉換成二進制數後,再將二進制數轉換成十六進制數。

Ⅵ 十進制數怎樣轉成十六進制數

十進制整數轉換為十六進制整數採用"除16取余,逆序排列"法。
具體做法是:用16整除十進制整數,可以得到一個商和余數;再用16去除商,又會得到一個商和余數,如此進行,直到商為0時為止,然後把先得到的余數作為十六進制數的低位有效位,後得到的余數作為十六進制數的高位有效位,依次排列起來。
例如:256
256/16=16……0
16/16=1…......0
1/16=0......1
故為:100

Ⅶ 十進制數和十六進制數怎麼轉換

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位:

……

Ⅷ 關於10進制轉化成16進制的演算法,請說明的詳細點

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

(8)十進制進制轉十六進制演算法擴展閱讀:

十六進制轉換有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。

十進制數是組成以10為基礎的數字系統,有0,1,2,3, 4, 5, 6, 7, 8, 9十個基本數字組成。十進制,英文名稱為Decimal System,來源於希臘文Decem,意為十。

Ⅸ 十進制轉化為十六進制怎麼算

十進制轉化為十六進制計算方式,簡單說就是整數除以16取余,直到商為0為止,然後從最後一個余數讀到第一個

熱點內容
安卓如何傳送音樂文件給蘋果 發布:2024-10-29 01:20:57 瀏覽:520
兒童節編程 發布:2024-10-29 01:20:22 瀏覽:244
搭建和平精英伺服器教程 發布:2024-10-29 00:51:27 瀏覽:311
武漢理工大學認證伺服器地址失敗 發布:2024-10-29 00:38:58 瀏覽:783
c語言單片機什麼意思 發布:2024-10-29 00:22:03 瀏覽:299
php發送郵件亂碼 發布:2024-10-29 00:19:24 瀏覽:60
我的世界java版怎麼免費創伺服器 發布:2024-10-29 00:19:22 瀏覽:279
分期樂在哪裡上傳資料 發布:2024-10-29 00:10:16 瀏覽:244
編譯器確定 發布:2024-10-28 23:56:27 瀏覽:416
如何存儲數據的 發布:2024-10-28 23:49:51 瀏覽:756