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

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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

一文詳細(xì)了解單片機(jī)的大小端模式

GReq_mcu168 ? 來(lái)源:玩轉(zhuǎn)單片機(jī)與嵌入式 ? 作者:玩轉(zhuǎn)單片機(jī)與嵌入 ? 2022-02-16 17:44 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

一:什么是大小端?

咱們中文中常常提到的大小端的英文名字為“endianness”,英文直譯的意思是“字節(jié)序”,是內(nèi)存中存儲(chǔ)數(shù)據(jù)的字節(jié)順序。在這里一定要記住是“字節(jié)的順序”,應(yīng)為在計(jì)算機(jī)系統(tǒng)中,都是以字節(jié)為單位的,每個(gè)地址單元都對(duì)應(yīng)一個(gè)字節(jié),即8bit。

C語(yǔ)言系統(tǒng)中,除了8bit的char類(lèi)型,還有16bit的short類(lèi)型、32bit的long類(lèi)型。對(duì)于超過(guò)8bit的數(shù)據(jù)的存儲(chǔ),必然存在存在如何將多個(gè)字節(jié)排序的問(wèn)題,因此就導(dǎo)致了大端存儲(chǔ)模式和小端存儲(chǔ)模式。

如果系統(tǒng)是大端,則首先存儲(chǔ) MSB 字節(jié),即高字節(jié)存儲(chǔ)在低地址;若系統(tǒng)是小端,則首先存儲(chǔ)LSB字節(jié),即低字節(jié)存儲(chǔ)在低地址。

針對(duì)這兩種模式,我常用的記憶宮殿方法是:“小弟弟”,即小端系統(tǒng)的低字節(jié)存儲(chǔ)到低地址,大端則反之。

二:詳解大小端模式

假設(shè),需要存儲(chǔ)的32bit的數(shù)據(jù)為:0x11223344。

一文詳細(xì)了解單片機(jī)的大小端模式

對(duì)于大端模式:低位地址存儲(chǔ)著高字節(jié)的數(shù)據(jù)。

一文詳細(xì)了解單片機(jī)的大小端模式

對(duì)于小端系統(tǒng):低位地址存儲(chǔ)著低字節(jié)的數(shù)據(jù)。

一文詳細(xì)了解單片機(jī)的大小端模式

在一些MCU中,可以通過(guò)軟件將一種字節(jié)序切換為另一種字節(jié)序,即可以通過(guò)軟件配置的形式選擇大端模式還是小端模式。

如筆者使用過(guò)的一款瑞薩單片機(jī)支持字節(jié)序選擇。

一文詳細(xì)了解單片機(jī)的大小端模式

三:如何判斷單片機(jī)的大小端模式?

若想要知道自己使用的單片機(jī)是大端或小端模式,可以通過(guò)下方的代碼進(jìn)行判斷。

//檢查大小端模式,大端模式返回true;小端模式返回falsebool CheckisBigEndian(void){    uint32_t u32RawData;    uint8_t *pu8CheckData;    u32RawData = 0x11223344; //Assign data    pu8CheckData = (uint8_t *)&u32RawData; //Type cast    if (*pu8CheckData == 0x44) //check the value of lower address    {        return false;    }    else if (*pu8CheckData == 0x11) //check the value of lower address    {        return true;}}

四:大端模式與小端模式怎么轉(zhuǎn)換?

我們可以使用 下面的算法將大端模式轉(zhuǎn)換為小端模式,反之亦然。

//Function to change one endian to anotheruint32_t ChangeEndianness(uint32_t u32Value){    uint32_t u32Result = 0;    u32Result |= (u32Value & 0x000000FF) << 24;    u32Result |= (u32Value & 0x0000FF00) << 8;    u32Result |= (u32Value & 0x00FF0000) >> 8;    u32Result |= (u32Value & 0xFF000000) >> 24;    return u32Result;}

五:STM32是大端還是小端模式?

從下圖中關(guān)于STM32的手冊(cè)介紹中可發(fā)現(xiàn):我們常用的STM32單片機(jī)符合“小弟弟”的存儲(chǔ)邏輯,屬于小端系統(tǒng);

一文詳細(xì)了解單片機(jī)的大小端模式

原文標(biāo)題:超全面講解單片機(jī)的大小端模式

文章出處:【微信公眾號(hào):硬件攻城獅】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

審核編輯:湯梓紅


聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6074

    文章

    45341

    瀏覽量

    663683
  • 計(jì)算機(jī)
    +關(guān)注

    關(guān)注

    19

    文章

    7764

    瀏覽量

    92690
  • C語(yǔ)言
    +關(guān)注

    關(guān)注

    183

    文章

    7642

    瀏覽量

    144631

原文標(biāo)題:超全面講解單片機(jī)的大小端模式

文章出處:【微信號(hào):mcu168,微信公眾號(hào):硬件攻城獅】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    解析單片機(jī)晶振腳的原理

    晶振是重要元器件之,對(duì)于晶振,小編于往期晶振相關(guān)文章中有過(guò)諸多闡述。本文中,小編將對(duì)單片機(jī)晶振腳的原理加以解析,以幫助大家更好理解晶振。晶振電路需要2個(gè)10-30pF級(jí)別的電容作為起振用途
    的頭像 發(fā)表于 11-21 15:37 ?3265次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b>解析<b class='flag-5'>單片機(jī)</b>晶振腳的原理

    51單片機(jī)RS485編程實(shí)例資料

    詳細(xì)介紹51單片機(jī)RS485通信接線和編程代碼
    發(fā)表于 10-20 14:57 ?3次下載

    n32g031單片機(jī)進(jìn)入睡眠模式無(wú)法喚醒怎么解決?

    求問(wèn)大家:第次使用單片機(jī)的睡眠模式遇到的問(wèn)題: 1.如果把PWR_EnterSLEEPMode()函數(shù)放在while(1)外邊進(jìn)入睡眠模式后,外部按鍵中斷無(wú)法觸發(fā),
    發(fā)表于 10-10 07:11

    單片機(jī)個(gè)承載科技與工程思維的核心平臺(tái)

    在現(xiàn)代社會(huì)中,科技的快速發(fā)展推動(dòng)了各個(gè)行業(yè)和技術(shù)的革新。單片機(jī)(Single Chip Computer)作為種集成化的電子系統(tǒng),正在逐漸成為連接數(shù)字世界與物理世界的橋梁。無(wú)論是智能家居、自動(dòng)駕駛
    的頭像 發(fā)表于 09-29 01:07 ?371次閱讀

    單片機(jī)燒錄原理是怎樣的?輝芒微單片機(jī)燒錄程序詳細(xì)步驟講解

    燒錄(Programming)就是把 .hex/.bin 文件里的機(jī)器碼搬運(yùn)進(jìn)單片機(jī)片內(nèi) Flash 的過(guò)程。輝芒微(FMD)單片機(jī)內(nèi)部有塊 自舉 BootROM,上電時(shí)會(huì)先跑這段程序;如果檢測(cè)
    的頭像 發(fā)表于 09-17 16:14 ?1402次閱讀
    <b class='flag-5'>單片機(jī)</b>燒錄原理是怎樣的?輝芒微<b class='flag-5'>單片機(jī)</b>燒錄程序<b class='flag-5'>詳細(xì)</b>步驟講解

    什么單片機(jī)比較耐用

    凱星科技有限公司在多年的單片機(jī)應(yīng)用開(kāi)發(fā)中,對(duì)各類(lèi)單片機(jī)的耐用性有著深入了解,通過(guò)為拓邦、朗科、安徽龍多等客戶提供方案,積累了豐富的選型與優(yōu)化經(jīng)驗(yàn)。 影響單片機(jī)耐用性的核心因素
    的頭像 發(fā)表于 07-31 13:48 ?560次閱讀

    單片機(jī)采用什么電流控制

    的需求。 1.單片機(jī)自身的工作電流特性 單片機(jī)自身的工作電流主要由內(nèi)部電路決定,通常在微安級(jí)到毫安級(jí)之間。例如,8 位單片機(jī)在正常工作模式下電流約為幾毫安,而進(jìn)入休眠
    的頭像 發(fā)表于 07-30 10:07 ?548次閱讀

    單片機(jī)怎么控制轉(zhuǎn)速

    ? ? ? ?在工業(yè)自動(dòng)化、智能家居、機(jī)器人等領(lǐng)域,單片機(jī)控制電機(jī)轉(zhuǎn)速是實(shí)現(xiàn)精準(zhǔn)運(yùn)動(dòng)控制的核心技術(shù)。通過(guò)結(jié)合硬件電路設(shè)計(jì)與軟件算法優(yōu)化,單片機(jī)可根據(jù)不同應(yīng)用場(chǎng)景靈活調(diào)整電機(jī)轉(zhuǎn)速。以下從控制方法、實(shí)際
    的頭像 發(fā)表于 07-25 13:58 ?656次閱讀

    怎么測(cè)單片機(jī)系統(tǒng)頻率

    單片機(jī)系統(tǒng)頻率是指單片機(jī)工作時(shí)的時(shí)鐘頻率,它直接影響單片機(jī)的運(yùn)行速度和處理能力,準(zhǔn)確測(cè)量系統(tǒng)頻率對(duì)單片機(jī)應(yīng)用開(kāi)發(fā)、程序調(diào)試和性能優(yōu)化具有重要意義。測(cè)量
    的頭像 發(fā)表于 07-25 11:39 ?481次閱讀

    單片機(jī)怎么驅(qū)動(dòng)電機(jī)?

    在各類(lèi)自動(dòng)化設(shè)備和智能裝置中,電機(jī)是重要的執(zhí)行部件,而單片機(jī)作為控制核心,需要通過(guò)特定的方式驅(qū)動(dòng)電機(jī)運(yùn)轉(zhuǎn)。單片機(jī)驅(qū)動(dòng)電機(jī)并非直接連接即可,而是要根據(jù)電機(jī)類(lèi)型和功率,搭配合適的驅(qū)動(dòng)電路,才能實(shí)現(xiàn)穩(wěn)定
    的頭像 發(fā)表于 07-25 09:31 ?440次閱讀

    單片機(jī)怎么燒程序

    單片機(jī)燒程序是將編寫(xiě)好的程序代碼寫(xiě)入單片機(jī)內(nèi)部存儲(chǔ)單元,讓單片機(jī)按照預(yù)設(shè)邏輯工作的過(guò)程,是單片機(jī)應(yīng)用開(kāi)發(fā)中不可或缺的環(huán)節(jié)。無(wú)論是簡(jiǎn)單的燈光控制程序,還是復(fù)雜的工業(yè)控制算法,都需要通過(guò)燒
    的頭像 發(fā)表于 07-23 11:47 ?658次閱讀

    低功耗單片機(jī)工作模式是怎樣的?看完這篇你就懂了!

    在物聯(lián)網(wǎng)、可穿戴設(shè)備、智能儀表等領(lǐng)域,低功耗單片機(jī)工作模式是設(shè)備延長(zhǎng)續(xù)航能力的核心技術(shù)支撐。這類(lèi)單片機(jī)通過(guò)精細(xì)化的電源管理機(jī)制,在保證核心功能運(yùn)行的前提下,最大限度降低能耗。其工作模式
    的頭像 發(fā)表于 07-14 10:39 ?532次閱讀
    低功耗<b class='flag-5'>單片機(jī)</b>工作<b class='flag-5'>模式</b>是怎樣的?看完這篇你就懂了!

    單片機(jī)和伺服有什么區(qū)別

    單片機(jī)和伺服的區(qū)別 單片機(jī)(Microcontroller)和伺服(Servo System)是兩種完全不同的技術(shù)概念,分別屬于 控制系統(tǒng)硬件 和 運(yùn)動(dòng)控制執(zhí)行系統(tǒng) 。以下是它們的詳細(xì)對(duì)比和區(qū)別
    的頭像 發(fā)表于 05-26 09:18 ?590次閱讀

    單片機(jī)與存儲(chǔ)器的那些事

    單片機(jī)與存儲(chǔ)器的關(guān)系像什么?單片機(jī)里的存儲(chǔ)都是樣的嗎?為什么有的單片機(jī)既有EEPROM又有Flash?
    的頭像 發(fā)表于 04-10 10:06 ?1336次閱讀
    扒<b class='flag-5'>一</b>扒<b class='flag-5'>單片機(jī)</b>與存儲(chǔ)器的那些事

    單片機(jī)Debug工具性能對(duì)比 單片機(jī)調(diào)試常用命令

    單片機(jī)(Microcontroller Unit, MCU)調(diào)試是嵌入式開(kāi)發(fā)中的個(gè)重要環(huán)節(jié),它幫助開(kāi)發(fā)者發(fā)現(xiàn)和修復(fù)代碼中的錯(cuò)誤,優(yōu)化程序性能。不同的單片機(jī)和開(kāi)發(fā)環(huán)境可能使用不同的調(diào)試工具和命令
    的頭像 發(fā)表于 12-19 09:56 ?2172次閱讀