91在线观看视频-91在线观看视频-91在线观看免费视频-91在线观看免费-欧美第二页-欧美第1页

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

跟大家分享位運算的幾個使用小技巧

冬至配餃子 ? 來源:最后一個bug ? 作者:bug菌 ? 2022-07-28 11:16 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

今天跟大家分享位運算的幾個使用小技巧,這些巧妙操作都是要在項目開發或者學習中不斷積累的,如果你在后續的編碼中用上的話,不僅能夠提高代碼效率,還能為你的代碼增色不少。

1、替代乘除2

這一點應該是基本操作了,我也在往期的文章中提到過多次。

poYBAGLh_p-AImFvAAA2W5GUlrE647.png

特別是常用定點MCU的朋友,相信一點更是有自己的領悟,即使所使用的MCU帶有硬件浮點運算功能,采用整形定點運算也經常用來提高運算速度。

2、異或交換兩數

也就是我們面試題中常提到的,不用第三個變量交換兩個數:

pYYBAGLh_riAS7SuAAAifY87VMI082.png

3、判斷兩數是否同號

大部分朋友判斷兩個不為0的數是否同號都是采用兩數相乘是否>0來進行判斷,當然我也見過如下寫法的:

pYYBAGLh_tGAIYCpAAAl5rOKOVI627.png

雖然兩種最終的結果,但總讓人覺得有點太初級、太累贅的感覺,所以代碼還是要寫得優雅,才讓人覺得你有點東西。

如果你稍加處理借用異或運算來進行判斷,會給人眼前一亮的感覺。

poYBAGLh_uKAQV2tAAAO2YTQSA0647.png

然而更重要的是相對乘法運算,其速度更快。

4、判斷奇偶數

判斷奇偶數無非就是識別該數是否能夠被2整除,通常我們采用如下表達式:

pYYBAGLh_vmAEkGqAAANv2fRzT8353.png

既然本文介紹位運算,又存在某種位運算會更加高效:

poYBAGLh_yWAEqzlAAARc6-maaI723.png

其無非就是利用了奇偶整形數的二進制最后一位是否為1來進行區分。

4、實現絕對值

實現絕對值還不簡單?abs用起來。

如果要不用條件語句實現絕對值功能,你會如何實現呢?

以8位整形數為例說明一下其實現,其他字長的整形類似處理:

poYBAGLh_z2AIu5OAAAU1x_YFBQ428.png

這里也算是異或的應用吧,異或操作"相同為0,相異為1",假如a是一個有符號正數整數,a^0仍然為a,所以如上表達式對于整數仍然為原數。

而當a是一個有符號負值整形數,要實現abs功能,勢必要“對原數取反+1“,然而巧妙的是a^0xFF剛好是對a取反,-(a>>7)則剛好是+1。

屬實巧妙,不禁有點喜歡上了異或操作運算。



審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • mcu
    mcu
    +關注

    關注

    146

    文章

    17984

    瀏覽量

    367097
  • 位運算
    +關注

    關注

    0

    文章

    17

    瀏覽量

    8570
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    PKA外設RSA模冪運算2048計算結果和在線工具計算的不一樣是怎么回事?

    參照STM32WLE5的官方PKA例程,2048的模密運算結果和在線工具計算的結果不一樣,有遇到類似情況的朋友嗎
    發表于 03-10 07:28

    運算放大器速成課程第2部分:關鍵參數教程

    電路設計人員根據幾個器件參數選擇運算放大器。這些參數必須滿足運算放大器應用的要求。下面列出了最常考慮的參數。本教程的第2部分解釋了它們的定義和用途。
    的頭像 發表于 02-20 18:22 ?591次閱讀
    <b class='flag-5'>運算</b>放大器速成課程第2部分:關鍵參數教程

    ADS1262有效是多少?

    這ADS1262的有效32宣稱差太遠了吧?看不到ADS1262那里有數據證明達到32ENOB,不知道是不是理解錯有效
    發表于 01-10 10:17

    用ad1246采集數據,參考電壓2.5V有幾個問題請教

    現用ad1246采集數據,參考電壓2.5V,有幾個問題請教。 使用時需要對ad進行標定嗎?是不是發送幾個命令就行了,最后AD輸出的結果就是最終的二進制數據(對應下圖的Final output
    發表于 12-26 07:13

    請問有沒有ADS5404匹配的運算放大器型號推薦呢?

    想使用ADS5404(ADS5402)自制一塊板卡,前端的2路采集信號輸入功率較小,想通過運算放大,請問有沒有ADS5404匹配的運算放大器型號推薦呢?
    發表于 12-11 07:18

    4G模組Air780E的LuatOS開發之運算(bit)示例

    本文我要說的是低功耗4G模組Air780E的LuatOS開發,關于運算(bit)示例,我將詳細解析分享給大家
    的頭像 發表于 12-02 14:33 ?525次閱讀
    4G模組Air780E的LuatOS開發之<b class='flag-5'>位</b><b class='flag-5'>運算</b>(bit)示例

    Air780E模組LuatOS開發的運算(bit)教程篇!

    本次我們要學習的是4G模組Air780E的LuatOS開發,關于運算(bit)教程分享給大家
    的頭像 發表于 11-26 11:58 ?538次閱讀
    Air780E模組LuatOS開發的<b class='flag-5'>位</b><b class='flag-5'>運算</b>(bit)教程篇!

    Verilog語法中運算符的用法

    verilog語法中使用以下兩個運算符可以簡化我們的選擇代碼。
    的頭像 發表于 10-25 15:17 ?2575次閱讀
    Verilog語法中<b class='flag-5'>運算</b>符的用法

    技術干貨驛站 ▏解鎖C語言高效編程秘訣:深入解析運算符與優先級

    在C語言的學習過程中,運算符的使用是不可忽視的重要環節。本文將繼續深入探討C語言中的運算符,重點介紹運算符、賦值運算符及其優先級。掌握這些
    的頭像 發表于 10-13 08:09 ?639次閱讀
    技術干貨驛站 ▏解鎖C語言高效編程秘訣:深入解析<b class='flag-5'>運算</b>符與優先級

    TAS5825音量控制運算寬是多少,是32bit嗎?

    對于dsp運算控制音量可能會有損音質,大概32bit運算在小音量是會有幾db音質損失。 所以我想知道,TAS5825 音量控制運算寬是多少,是32bit?TI miniDSP產品中
    發表于 10-11 06:43

    比較器與運算放大器件選型應用優勢介紹

    場景卻各具特色。英銳恩科技小編大家深入探討比較器與運算放大器件的基本原理、關鍵技術差異及各自的應用優勢,以期為電子工程師提供有價值的參考。 一、基本原理概述 1. 比較器(Comparator) 比較
    發表于 09-30 09:05

    51單片機(一款國產8高性能Flash的接近感應單片機XD08M3232體驗感)

    大家推薦一款在淘寶上發現的國產A/D型具有增強型1T8051內核8高性能Flash的接近感應單片機XD08M3232,測試下來總體的感覺還是比較強大的,以下是本人試用后總結下來比較滿意的幾個
    發表于 09-25 15:15

    MATLAB(4)--MATLAB基本運算

    算術運算 基本算術運算符:+(加)、-(減)、*(乘)、/(右除)、(左除)、^(乘方)。 MATLAB的運算是在矩陣意義下運行的。 單個數據的算術運算只是矩陣
    發表于 09-06 10:18

    使用運算放大器應注意哪幾個問題

    以下是使用運算放大器時應注意的幾個關鍵問題: 運算放大器的基本原理 : 運算放大器是一種高增益、多用途的電子設備,廣泛應用于信號放大、濾波、積分和微分等電路中。 了解其基本結構,包括輸
    的頭像 發表于 08-06 14:26 ?969次閱讀

    ST TSB952高速雙路運算放大器簡介

    本期 DigiKey Daily 向大家推薦一款產品——ST的TSB952 高速雙路運算放大器。
    的頭像 發表于 08-01 10:08 ?1032次閱讀
    主站蜘蛛池模板: 一区二区不卡视频 | 8000av在线| 欧美最猛黑人xxxxwww | 欧美天天视频 | h网站在线观看 | 嫩草影院播放地址一二三 | 国产免费一级在线观看 | 91成人午夜性a一级毛片 | 快乐你懂的在线视频免费观看 | 欧美人成网站免费大全 | 九九re6精品视频在线观看 | q2002在线观看免费 | 荡女妇边被c边呻吟久久 | 五月天毛片 | 激情久久久久久久久久 | 亚洲一区不卡视频 | 美女全黄网站免费观看 | 57pao成人永久免费视频 | 日本免费人成黄页在线观看视频 | 波多野结衣在线观看一区二区三区 | 三级毛片网站 | 浮荡视频在线观看免费 | 米奇影院777 | 国产精品久久久久久久成人午夜 | 视频一区中文字幕 | 狠狠色欧美亚洲狠狠色www | 天天爽夜夜爽夜夜爽精品视频 | 精品卡1卡2卡三卡免费视频 | 国产在线五月综合婷婷 | 中国一级特黄真人毛片免费看 | 在线好吊色视频98gao | 爱爱免费网址 | www.四虎影院在线观看 | 看亚洲a级一级毛片 | 国产色噜噜 | 天天透天天操 | 1024毛片基地 | 国产精品高清一区二区三区 | 中文字幕一区二区三区四区五区 | 天天操天天操天天操天天操 | 综合爱爱 |