2008年4月10日 星期四

十六進制轉換

https://4rdp.blogspot.com/2008/04/blog-post_04.html?m=0

十六進制之前先說十進制,平時我們都是使用十進制計算數值,用阿拉伯數字 0, 1, 2, 3, 4, 5, 6, 7, 8, 9。
比如,
123 = 1 x 100 + 2 x 10 + 3 x 1 = 1 x 102 + 2 x 101 + 3 x 100

當十進制轉換十六進制,會用到符號 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A(10), B(11), C(12), D(13), E(14), F(15) 。

123 = 7 x 16 + 11 x 1 = 7 x 161 + 11 x 160 = 0x7B

同理,二進制只使用 0, 1 兩個符號。

123 = 0 x 128 + 1 x 64 + 1 x 32 + 1 x 16 + 1 x 8 + 0 x 4 + 1 x 2 + 1 x 1
= 0 x 27 + 1 x 26 + 1 x 25 + 1 x 24 + 1 x 23 + 0 x 22 + 1 x 21 + 1 x 20
= 0b0111 1011 = 0x7B

可能有人會覺得奇怪,為何要討論這個主題?數值進制變換在程式設計中,是最基本的重要技能。
現行的電腦系統,數位電路只有兩種狀態,有電 (1,High) 或沒電 (0, Low) 。
所以二進制可以清楚表示電路狀態,將二進制資料集結表示成十六進制可方便閱讀,不然一連串111000會很容易搞錯。

讓我們看一段 HTML
<font color="#FF0000">我</font>愛<font color="#0000FF">妳</font>!

將會顯示為 !

利用 color="顏色值" 指令設定顏色,顏色值包含數值(俗稱RGB) ,因為顯示器利用這三原色混搭,可顯示出 16777216 種顏色。

Note: 224 = 16777216

沒有留言:

張貼留言