chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

3天內不再提示

四種方法教你判斷設備的字節(jié)序

學益得智能硬件 ? 來源:學益得智能硬件 ? 2024-11-28 10:47 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

如何判斷設備的字節(jié)序,提供 4 種方法給大家參考。

首先就是從概念入手。

所謂小端字節(jié)序,高字節(jié)存放在高地址,低字節(jié)存放在低地址;大端字節(jié)序反過來。

定義一個無符號 short 類型,初始化成 0x0102,定義一個 char 類型指針,保存 num 的地址。

int main()
{
    unsigned short num = 0x0102;


    unsigned char *p = (unsigned char *)#


    if (p[0] == 0x02)
        printf("小端字節(jié)序
");
    else if (p[0] == 0x01)
        printf("大端字節(jié)序
");
        
return 0;
}

如果 p[0] 是 0x02,說明低地址保存了低字節(jié),設備就是小端。

如果 p[0] 是 0x01,說明低地址保存了高字節(jié),設備就是大端。

第二個,使用聯合體。

聯合體的特點是所有成員共享同一塊內存。

union Test
{
    char p[2];
    short val;
};

在這個聯合體中,char 類型的數組和 short 類型變量占用了同一塊內存,數組的第 0 個元素一定存放在低地址。

如果 p[0] 保存的是 0x02,說明低地址保存了低字節(jié),設備是小端。反之,是大端。

int main()
{
    union Test t;
    t.val = 0x0102;
    
    if (t.p[0] == 0x02)
        printf("小端字節(jié)序
");
    else if (t.p[0] == 0x01)
        printf("大端字節(jié)序
");
        
return 0;
}

這種方法跟第一種差不多。

第三個,通過宏來判斷。

比如在 Linux 系統中,包含頭文件,使用 BYTE_ORDER 就能直觀的看出字節(jié)序。

#include 


int main()
{
    if (__BYTE_ORDER == __LITTLE_ENDIAN)
        printf("小端字節(jié)序
");
    else if (__BYTE_ORDER == __BIG_ENDIAN)
        printf("大端字節(jié)序
");

return 0;
}

第四個,使用結構體位域。

這個方法同樣是從概念入手,判斷 p[0] 這個低地址保存的是低字節(jié)還是高字節(jié)。

#include 


struct Test
{
    unsigned int a : 8;
    unsigned int b : 8;
    unsigned int c : 16;
};


int main()
{
    struct Test t = {0x01, 0x02, 0x0304};
    unsigned char *p = (unsigned char *)&t;


    if (p[0] == 0x01)
        printf("小端字節(jié)序
");
    else if (p[0] == 0x04)
        printf("大端字節(jié)序
");


    return 0;
}

不過這個方法不太推薦,位域的具體布局取決于編譯器,跟環(huán)境有關,所以這種方法,參考下就行。

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

    關注

    2

    文章

    4887

    瀏覽量

    73864
  • 字節(jié)
    +關注

    關注

    0

    文章

    44

    瀏覽量

    14405

原文標題:四種方法判斷設備的字節(jié)序

文章出處:【微信號:學益得智能硬件,微信公眾號:學益得智能硬件】歡迎添加關注!文章轉載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    變頻器四種制動方式

    解決的核心問題。目前主流的變頻器制動方式主要包括能耗制動、回饋制動、直流制動和電容制動四種,每種方式各具特點,適用于不同的工況場景。
    的頭像 發(fā)表于 03-25 16:31 ?276次閱讀

    低成本CAN擴展方案怎么選?CSM331A四種模式一次說清

    MCU需要CAN功能但預算有限?CSM331A協議轉換芯片用SPI/UART就能擴展,四種模式從快到穩(wěn)任你選。ZLG致遠電子推出的CSM331A協議轉換芯片,配合一個CAN收發(fā)器,就能通過SPI
    的頭像 發(fā)表于 02-09 11:50 ?455次閱讀
    低成本CAN擴展方案怎么選?CSM331A<b class='flag-5'>四種</b>模式一次說清

    提高石英晶體振蕩器相位噪聲性能的4種方法

    如果你正在設計一款用于5G基站或精密雷達的振蕩器,單純靠一種方法是不夠的。你需要“SC切割晶體 + 點封裝”作為基礎,配合“電子補償”電路來應對動態(tài)環(huán)境,同時輔以“超低噪聲電源”和“精密溫控”。這套組合拳,就是目前業(yè)界公認的“硬核”降噪方案。
    的頭像 發(fā)表于 01-16 16:38 ?1402次閱讀
    提高石英晶體振蕩器相位噪聲性能的4<b class='flag-5'>種方法</b>

    是德示波器DSOX1202A與電腦的四種連接方式及操作步驟詳解

    是德科技(Keysight)DSOX1202A示波器作為高精度電子測量設備,廣泛應用于電子工程、通信測試與自動化調試場景。為實現數據實時采集、波形分析與遠程控制,用戶需通過USB、LAN、GPIB或串口將示波器與電腦互聯。本文將結合官方指南與實操經驗,系統介紹四種連接方式
    的頭像 發(fā)表于 01-13 17:48 ?1900次閱讀
    是德示波器DSOX1202A與電腦的<b class='flag-5'>四種</b>連接方式及操作步驟詳解

    嵌入式中的浮點型數據轉換為字節(jié)類型的三種方法

    一般是以字節(jié)的形式進行數據交互。要想傳輸一個浮點數需要把浮點數轉換為字節(jié)的形式。 MCU不能直接保存浮點型數據,能直接保存的是0或1。把數據保存到MCU中比較常用的保存方法就是以字節(jié)
    發(fā)表于 01-07 06:28

    為什么會有小端字節(jié)序

    ,后讀到的就是低位字節(jié)。小端字節(jié)序正好相反。 理解這一點,才能理解計算機如何處理字節(jié)序。 處理器讀取外部數據的時候,必須知道數據的字節(jié)序,將其轉成正確的值。然后,就正常使用這個值,
    發(fā)表于 12-15 06:24

    有多少種方法可以進行頻響曲線測量?

    。下面列出APx500軟件包含的至少10種方法都可以進行頻響曲線的測量:FrequencyResponseContinuousSweepAcousticRespo
    的頭像 發(fā)表于 11-14 11:29 ?1249次閱讀
    有多少<b class='flag-5'>種方法</b>可以進行頻響曲線測量?

    示波器探頭衰減怎么判斷?3 種方法 + 常見問題,新手也能學會?

    數據出現偏差,甚至誤判電路故障。本文聚焦于示波器探頭衰減判斷的核心需求,詳細拆解了“直觀檢查、標準信號測試、對比驗證”這三實操方法,并搭配常見問題解答,內容通俗易懂。無論是電子新手還是資深工程師,都能快速
    的頭像 發(fā)表于 10-23 09:34 ?890次閱讀
    示波器探頭衰減怎么<b class='flag-5'>判斷</b>?3 <b class='flag-5'>種方法</b> + 常見問題,新手也能學會?

    一圖看懂綠電直連的四種玩法

    通過 “總覽框架 + 分模式圖解” 的形式,用可視化邏輯拆解綠電直連的四種核心模式,涵蓋每種模式的核心特征、適用場景、參與主體三大關鍵信息,幫你快速區(qū)分不同 “玩法” 的差異與適配性。
    的頭像 發(fā)表于 10-15 10:18 ?1634次閱讀
    一圖看懂綠電直連的<b class='flag-5'>四種</b>玩法

    如何判斷諧波檢測設備的環(huán)境干擾強度?

    、強干擾”,為設備選型、誤差余量預留提供依據。以下是具體可落地的方法,覆蓋現場快速排查與精準定量測量: 一、定性判斷:快速識別干擾場景(無需專業(yè)工具,適合現場初步排查) 通過 “場景特征、設備
    的頭像 發(fā)表于 10-13 17:26 ?960次閱讀

    從入門到精通:基于開源代碼的BLE四種模式開發(fā)詳解

    Bluetooth Smart,是藍牙4.0及更高版本引入的低功耗無線通信技術,專為低帶寬、間歇性數據傳輸的物聯網(IoT)和穿戴設備設計。 ? 一、Air8000藍牙大模式 Air8000藍牙支持四種模式,分別是中心
    的頭像 發(fā)表于 10-09 18:00 ?715次閱讀
    從入門到精通:基于開源代碼的BLE<b class='flag-5'>四種</b>模式開發(fā)詳解

    全網最全CSA3412,BCT4340,VL162,MCU/ USB3.1 正反插10G bps四種解決方案

    CSA3412,BCT4340,VL162,MCU/ USB3.1 全網最全正反插10G bps四種解決方案
    的頭像 發(fā)表于 09-25 03:06 ?981次閱讀
    全網最全CSA3412,BCT4340,VL162,MCU/ USB3.1 正反插10G bps<b class='flag-5'>四種</b>解決方案

    RDMA簡介3之四種子協議對比

    RDMA協議共有四種子協議,分別為InfiniBand、iWARP、RoCE v1和RoCE v2協議。這四種協議使用統一的RDMA API,但在具體的網絡層級實現上有所不同,如圖1所示,接下來將
    發(fā)表于 06-04 16:05

    貼片電阻的阻值如何判斷?

    在電子電路中,貼片電阻作為一常見的被動元件,其阻值的大小對于電路的性能和穩(wěn)定性具有重要影響。那么,如何準確判斷貼片電阻的阻值呢?本文將為您詳細介紹幾種常用的判斷方法
    的頭像 發(fā)表于 05-14 15:32 ?5196次閱讀
    貼片電阻的阻值如何<b class='flag-5'>判斷</b>?

    精選好文!噪聲系數測量的三種方法

    器件噪聲系數的三種方法。每種方法都有其優(yōu)缺點,適用于特定的應用。下表是三種方法優(yōu)缺點的總結。理論上,同一個射頻器件的測量結果應該一樣,但是由于射頻設備的限制(可用性、精度、頻率范圍、噪
    發(fā)表于 05-07 10:18