unsigned short占几个字节_ARM中,字、半字、字节分别是多少位?
昨晚正準備睡覺,突然想起上學期和PLC老師在課堂爭論字、半字、字節在編譯器中所占的字節大小的問題。后來查了查,是體系結構不同的原因導致了分歧。今天把ARM結構、8位控制器、16位控制器、以及VC中的標準寫個帖子,以作提醒。
一、對于嵌入式底層開發人員
字(Word):在ARM體系結構中,字的長度為32位,而在8位/16位處理器體系結構中,字的長度一般為16位。
半字(Half-Word):在ARM體系結構中,半字的長度為16位,與8位/16位處理器體系結構中字的長度一致。
字節(Byte):在ARM體系結構和8位/16位處理器體系結構中,字節的長度均為8位。
ARM 采用的是32位架構.
ARM約定:Byte : 8 bits
Halfword :16 bits (2 byte)
Word : 32 bits (4 byte)
二、對于應用程序開發人員
1、字節:byte,8bit,就是8個二進制位,一個ASCII字母占用的空間。
2、字:word,16bit,一個漢字占用的空間。
3、雙字:dword,32bit。
例如在Visual C++ 6.0中,BYTE與WORD,DWORD本質上都是一種無符號整型,它們在WINDEF.H中被定義,定義如下:
typedef unsigned char BYTE;
typedef unsigned short WORD;
typedef unsigned long DWORD;
也就是說BYTE是無符號的char型(char型本質上也是一種1個字節的整型),WORD是無符號short型,DWORD是無符號long型。
而在Visual C++ 6.0中,char型長度為1字節,short型長度為2字節,int和long型長度都為4字節,因此可以認為BYTE與WORD,DWORD定義的變量分別獲得了1字節,2字節,4字節內存。
總結:
字節永遠都是8bit,字的大小依賴于平臺(可以通過sizeof()函數進行查看),但是可以確定的是,字是多少位,半字永遠是字的一半,雙字永遠是字的2倍大小
因作者水平有限,如有錯漏之處,望大神批評指正。
總結
以上是生活随笔為你收集整理的unsigned short占几个字节_ARM中,字、半字、字节分别是多少位?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 零跑汽车 2022 年净亏损 51.09
- 下一篇: spring boot框架_redisl