十六進制字節 & 十六進制轉二進制


做項目也將近一年的時間了。從一開始就經常提到“一個十六進制字節”,然而一開始就是迷惑的,直到現在。

    一個十六進制字節,比如:FF。周圍的人經常說這是一個十六進制字節。然后我就想,這不是兩個字符嗎,分別是F 和F,一個字符是一個字節,兩個字符是兩個字節,怎么就成一個十六進制字節,就成一個字節了。就是這種想法,整整困擾了我將近一年的時間。

    這幾天在寫論文,要在數據壓縮上找點可寫之處,分析數據的組成和格式。結果焦點還是在一個十六進制字節。使用半字節壓縮法,很適合項目和論文的需要。而且項目當中就是這樣做的。

    經查,一個十六進制字節是這樣定義的:char a=0xFF=255.

    又查,一個字節總是由一對十六進制數來表示,上面的a是一個字符,即一個字節;十六進制數F和F組成以一對十六進制數。這對十六進制數轉換為二進制數為:11111111,正好是8 bits,一個字節。

 

講講二進制、字節、16進制 

1.二進制就是逢二進一,只有0和1。
一個字節就是一個英文字母、阿拉伯數字或半個漢字所占的空間(一個漢字占2個字節)
16進制就是逢16進一,只有0123456789abcdef這16個數字(或子母)。
由於電腦里都是二進制的數,而16進制與二進制有簡單的轉換關系,所以很多書上都寫16進制的數。

一個字節由8個二進制組成,它所能表示最大十六進制為: ?FF(16進制)=256(10進制)=11111111(2進制)。 8位二進制最大為255,轉換為16進制則為ff。
 
2.字節是電腦里用於存儲的最小單位..?
一個字節占用八位的二進制數,及一個字節等於8位二進制。
所以..二進制是計算機的一種語言.字節是一個單位.所以說:計算機里面存儲數據是以字節為單位的,即8個二進制代碼。而不是以二進制代碼儲存的。
由於二進制數在使用中位數太長,不容易記憶,所以又提出了十六進制數.
 
3 .在最早的時候,是約定的8位二進制為一個字節,和ASCⅡ碼無關,可以表示256以內的數。
在 機器內部,8位或者16位對它來說都一樣,都是1或0,而程序設計的時候,人為的要求機器按8位或16位來處理。16位的音樂文件所包含的信息比8位的多 得多(差256倍),因此你也可以將16位二進制數看作音樂文件的一個單元,但約定成2個字節。就相當於統一了單位,便於交流。
 
4.十六進制轉換二進制,舉例:
?問:十六進制(A5)轉換成二進制?
??解答:
?方法一、A*16的1次方+5*16的0次方得出十進制。然后拿十進制再轉二進制,這樣的話 比較麻煩。?
?方法二、16進制中A用二進制表是多少?A代表10 ,就是二進制的 1010。 我例個表出來。十六進制以 4 位為一小段.8進制以 3 位為一小段
0 0000
1 0001
2 0010
3 0011
5 0101
...
9 1001
A 1010
B 1011
C 1100
...
F 1111
所以A5就是 1010 0101。
對方法二,進行解釋:
十六進制中的 F 轉換成二進制 就是 1111
所以把十六進制中每個位數上的數單獨轉換成一個4位的二進制數,再做拼接

A5
A --1010
5 --0101
所以 A5 -1010 0101。
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM