久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 15002|回復(fù): 12
打印 上一主題 下一主題
收起左側(cè)

完成8位數(shù)據(jù)高低位交換只需三步的代碼

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:23515 發(fā)表于 2013-4-21 17:09 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式

蝶式交換法代碼:

unsigned char shift_fun2(unsigned char data)

{

data=(data<<4)|(data>>4);

data=((data<<2)&0xcc)|((data>>2)&0x33);

data=((data<<1)&0xaa)|((data>>1)&0x55);

return data;

}

在遇到交換字節(jié)位的問題時(shí)使用蝶式交換法和查表法來實(shí)現(xiàn)。查表法顧名思義即將一些值存到內(nèi)存中

需要計(jì)算時(shí)查表即可但是也會占用額外的存儲空間。這里主要介紹一下蝶式交換法

設(shè)原始位為 1234  5678

data=(data<<4)|(data>>4);                          之后位序?yàn)?5678   1234

data=((data<<2)&0xcc)|((data>>2)&0x33);    之后位序?yàn)?7856   3412

data=((data<<1)&0xaa)|((data>>1)&0x55);    之后位序?yàn)?nbsp;8765    4321

由此完成了整個(gè)位的逆序轉(zhuǎn)換

[此貼子已經(jīng)被作者于2013-4-21 17:09:46編輯過]
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏7 分享淘帖 頂1 踩
回復(fù)

使用道具 舉報(bào)

來自 2#
ID:296837 發(fā)表于 2018-8-6 15:07 | 只看該作者
sinxcosx 發(fā)表于 2018-1-13 11:17
代碼少,難看明白的代碼還是少用好

來來  給你解釋一下
設(shè)原始位為 1234  5678
data=(data<<4)|(data>>4);  //data<<4,數(shù)據(jù)左移4位,5678 000;data>>4,數(shù)據(jù)右移4位,0000 1234;|按位或  ,                      之后位序?yàn)?5678   1234
data=((data<<2)&0xcc)|((data>>2)&0x33); 5678 1234  data<<2左移2位,7812 3400;&按位與1100 1100,得7800 3400;data>>2,右移兩位,0056 7812,位與0011 0011,得0056 0012;位或之后位序?yàn)?7856   3412
data=((data<<1)&0xaa)|((data>>1)&0x55); 7856 3412左移一位8563 4120,位與1010 1010得8060 4020;右移一位 0785 6341,位與0101 0101得0705 0301,;位或之后位序?yàn)?8765    4321

評分

參與人數(shù) 1黑幣 +80 收起 理由
admin + 80 回帖助人的獎(jiǎng)勵(lì)!

查看全部評分

回復(fù)

使用道具 舉報(bào)

板凳
ID:7485 發(fā)表于 2013-4-22 13:12 | 只看該作者

........

[此貼子已經(jīng)被作者于2013-4-22 13:14:11編輯過]
回復(fù)

使用道具 舉報(bào)

地板
ID:138443 發(fā)表于 2017-11-15 21:14 | 只看該作者
太好了,正要找的,謝謝了
回復(fù)

使用道具 舉報(bào)

5#
ID:275494 發(fā)表于 2018-1-13 11:17 來自觸屏版 | 只看該作者
代碼少,難看明白的代碼還是少用好
回復(fù)

使用道具 舉報(bào)

6#
ID:262352 發(fā)表于 2021-8-4 14:25 | 只看該作者
hk0506 發(fā)表于 2018-8-6 15:07
來來  給你解釋一下
設(shè)原始位為 1234  5678
data=(data4);  //data4,數(shù)據(jù)右移4位,0000 1234;|按位或  ...

這里,有data的作用域問題,
回復(fù)

使用道具 舉報(bào)

7#
ID:981889 發(fā)表于 2021-12-5 20:27 來自觸屏版 | 只看該作者
阿這...學(xué)到了,牛
回復(fù)

使用道具 舉報(bào)

8#
ID:291668 發(fā)表于 2023-3-20 12:56 | 只看該作者
傅里葉算法可以用到
回復(fù)

使用道具 舉報(bào)

9#
ID:1029096 發(fā)表于 2023-3-23 20:36 | 只看該作者
hk0506 發(fā)表于 2018-8-6 15:07
來來  給你解釋一下
設(shè)原始位為 1234  5678
data=(data4);  //data4,數(shù)據(jù)右移4位,0000 1234;|按位或  ...

太牛了吧
回復(fù)

使用道具 舉報(bào)

10#
ID:373976 發(fā)表于 2024-5-28 18:01 | 只看該作者
這是咋想出來的?
回復(fù)

使用道具 舉報(bào)

11#
ID:160500 發(fā)表于 2024-5-29 13:17 | 只看該作者
回復(fù)

使用道具 舉報(bào)

12#
ID:1101997 發(fā)表于 2024-6-10 16:53 來自觸屏版 | 只看該作者
有沒有算過能傳統(tǒng)兩字節(jié)左移右移快多少?
回復(fù)

使用道具 舉報(bào)

13#
ID:561623 發(fā)表于 2024-9-11 16:55 | 只看該作者
為什么不用結(jié)構(gòu)+聯(lián)合,想換都行,何必搞這么復(fù)雜
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 日韩国产精品视频 | 午夜天堂在线 | 国产色站 | 亚洲一区在线视频 | 国产成人a亚洲精品 | 国产无精乱码一区二区三区 | 日韩在线视频免费观看 | 亚洲色网址| 日本www视频 | 久久久久久久久国产精品 | 欧美三级在线视频 | 999av| 91免费福利视频 | 成人午夜在线视频 | 黄色免费小视频 | 精品福利在线观看 | 日本亚洲天堂 | 国产在线www | 亚洲网站在线观看 | 欧美午夜精品一区二区三区 | 日韩成人在线免费观看 | 久久国产美女 | 欧美在线中文字幕 | 极品白嫩少妇无套内谢 | 日韩欧美专区 | 中文在线字幕免费观 | 国产精品久久久久久久久久久久久久久 | 亚洲综合区 | 欧美综合色 | 欧美成人精品欧美一级乱黄 | 国产精品一区二区在线播放 | 欧美精产国品一二三区 | 黄视频网站在线观看 | 日本国产在线 | 欧美激情视频一区二区三区 | 羞羞网站在线观看 | 中文在线免费观看 | 日韩色av| 欧美激情视频一区二区三区 | 一级片在线播放 | 国产日韩欧美日韩大片 |