回覆列表
-
1 # daazhu1
-
2 # lanfengz3
記憶體裡 一個單元是位元組,有16位,一位就代表一個1 或0;
一個整形數int型的6 5 5 3 5;
二進位制為16個1,如下:
1111 1111 1111 1111
由後往前數,先數的八個1所佔的位就屬於低八位,後數到的八個1所佔的八位就屬於高八位。
微控制器中使用的是4位十六進位制,例如A8E6H,
其對應16位二進位制數值為1010,1000,1110,0110B
顯而易見,高8位二進位制數值為1010,1000B
低8位二進位制數值為1110,0110B
各自還原為2位十六進位制數分別是:
高8位二進位制數值為A8H
低8位二進位制數值為E6H
高八位和低八位:記憶體裡,一個單元是一個位元組,也就是8位。如果是16位的指令,就是同時操作連續的2個記憶體地址,將這連續的2個記憶體地址當成一個單位,所以就有高8位和低8位之分。
由於計算機僅識別二進位制描述的數字,所以對一個記憶體地址,也就是8位二進位制,如:0000 0001,0000就是高四位,0001就是低四位。
當然2個記憶體地址,就是16位二進位制,也就是:0000 0001 0000 0002。0000 0001 就是高八位,0000 0002就是低八位。
每個八位中又分成高低四位。如:1010 0001 1111 0101,換算成16進位制就是:1010–10(10進位制)—A(16進位制),0001–1(10進位制)—1(16進位制)所以他的高八位就是A1,同樣它的低八位就是F5。
擴充套件資料:
如何在C語言中的ascII碼錶裡查詢高四位、低四位:
ascii碼在C語言中用char型儲存,一個char佔一個位元組,即8位。
當寫成二進位制表達形式時,就是8個0或者1的數字,這8個數字中,左邊四個稱為高四位,右邊四個稱為低四位。
所以在查ascii碼錶時,需要:
1、把要查的值,轉成二進位制值;
2、得到高四位值,及低四位值;
3、根據高四位值查表,找到所在列;
4、根據低四位值查表,找到所在行;
5、所在行列的交叉格,就是要查詢的字元。