天天看點

任意進制轉換算法

任意進制轉換算法

N年沒有寫部落格,發個進制轉換的玩下,支援負數;功能屬于簡化版的 Convert.ToInt32 ,特點是:

1、任意位,如:0,1(二進制),0...7(八進制),0...9,A...F(16進制),0...N(N進制),或者是:!@#$%^&*(8進制,字元符号),也可以是中文。

2、8 位最大長度。

3、C#源碼。

最近寫markdown格式習慣啦,cnblogs啥時候全改掉算了,别用這個htmleditor算了。

先說明下進制轉換的基礎知識,不會的可以了解下,會的就别看了,後面的也别看,純粹屬于浪費時間。

<a href="http://www.cnblogs.com/Chinasf/p/5547968.html#">?</a>

1

2

3

4

5

6

7

8

9

10

11

12

<code>十六進制轉十進制表</code>

<code></code>

<code></code><code>10 15 1</code>

<code>&lt;--------------------------------------------------------------------</code>

<code>0 0 0 0 0 A F 1</code>

<code>16^7 16^6 16^5 16^4 16^3 16^2 16^1 16^0</code>

<code>268435456 16777216 1048576 65536 4096 256 16 1</code>

<code></code><code>(10*256) + (15*16) + (1*1)</code>

<code></code><code>=2560+240+1</code>

<code></code><code>=2801</code>

  

計算過程擺完了,下面是測試代碼(代碼未經優化,純屬測試):

有趣的測試:

任意進制轉換算法

轉換結果

任意進制轉換算法

代碼未經測試,自己可以完善

本文轉自suifei部落格園部落格,原文連結:http://www.cnblogs.com/Chinasf/p/5547968.html,如需轉載請自行聯系原作者

繼續閱讀