标题: 怎么将0x01用运算符方式变为0x08,就是十六进制,1248,最低位变成最高位 [打印本页]

作者: A37    时间: 2021-12-26 19:53
标题: 怎么将0x01用运算符方式变为0x08,就是十六进制,1248,最低位变成最高位
运算符的用法

作者: munuc_w    时间: 2021-12-27 08:31
需要做一个函数,高低位交换。
作者: npn    时间: 2021-12-27 12:07
程序空间足够可以用unsigned char code数组查表,否则用函数。
作者: wjhhhhh    时间: 2021-12-27 20:29
a=0x01;   //0000 0001
b=a<<3;  //0000 1000
行吗?
作者: A37    时间: 2022-4-12 11:31
wjhhhhh 发表于 2021-12-27 20:29
a=0x01;   //0000 0001
b=a

可以,谢谢了
作者: 天ノ忆    时间: 2022-4-13 11:40
  1. unsigned char Swap( unsigned char data )
  2. {
  3.     data = ( data << 4 ) | ( data >> 4 ) ;
  4.     data = ( ( data << 2 ) & 0xcc ) | ( ( data >> 2 ) & 0x33 ) ;
  5.     data = ( (data << 1 ) & 0xaa ) | ( (data >> 1 ) & 0x55 ) ;
  6.     return data ;
  7. }
复制代码





欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1