欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
51單片機中如何將一個數據的高4位和低四位求出來
[打印本頁]
作者:
pangju
時間:
2017-12-31 14:25
標題:
51單片機中如何將一個數據的高4位和低四位求出來
51單片機中如何將一個數據的高4位和低四位求出來
作者:
wulin
時間:
2017-12-31 16:17
無標題.jpg
(105.5 KB, 下載次數: 82)
下載附件
2017-12-31 16:17 上傳
作者:
performfh
時間:
2017-12-31 17:13
unsigned char g_date = 0xfb;
unsigned char g_ldate = 0;
unsigned char g_hdate = 0;
g_ldate = g_date & 0x0f;
g_hdate = (g_date & 0xf0) >> 4;
作者:
abc779065
時間:
2017-12-31 18:58
可以通過分別或運算
作者:
HC6800-ES-V2.0
時間:
2017-12-31 19:36
如果你懂得二進制、十六進制數的組成原理,就沒什么問題了。
就以你說的“高四位、低四位”共8位的數為例子,加以說明吧。
第一:二進制(笨辦法)
11111111=1*2^7+1*2^6+1*2^5+1*2^4+1*2^3+1*2^2+1*2^1+1*2^0=128+64+32+16+8+4+2+1
=255
設你取得的8位數據為x,則:
x/128=第7位是0或是1
(x%128)/64=第6位的0或1
(x%64)/32=第5位的0或1
(x%32)/16=第4位的0或1
......
所有位都找出來了。
(肯定有人噴我了,我說的是原理,不是真正程序的操作方法)
第二:十六進制(通常辦法)
x=11111111=FF=15*16^1+15*16^0=240+15=255
(x/16)=第2位0~15的一個值
(x%16)=第1位0~15的一個值
這就是你要的高四位和低四位的值。在實際應用中,如用數碼管顯示紅外遙控的十六進制鍵碼,就是這樣做的。
還需要不需要我講把x轉換為十進制數呢?算了,一下都講了吧
第三:十進制
(x/100)=百位數
(x%100)/10=十位數
(x%10)/1=個位數。
作者:
單片機王者
時間:
2017-12-31 19:51
使用移位>>或<<,全變成低四位,然后進行位與運算
作者:
yzwzfyz
時間:
2017-12-31 22:21
將數據與0FH相與就得到低四位。
將數據進行SWAP,再做上述動作,就得到高四位。
作者:
lixiaofei789
時間:
2018-1-1 14:27
uchar date = 0xaa;
uchar dat_high = 0;
uchar dat_low = 0;
dat_high =date & 0x0f;
dat_low = (date & 0xf0) >> 4;
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1