日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

22 大端序和小端序

發布時間:2025/3/15 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 22 大端序和小端序 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

分析下列程序,輸出結果(AC)

#include<stdio.h> #include<stdlib.h> union X{int32_t a;struct {int16_t b;int16_t c;}; }; int main() {X x;x.a=0x20150810;printf("%x,%x\n",x.b,x.c); }

  A 2015,810    B50810,201    C810,2015    D20150,810

?

分析:?Little-Endian:?低地址存放低位、Big-Endian:?低地址存放高位

32bit寬的數0x12345678

在Little-endian模式CPU內存中的存放方式(假設從地址0x4000開始存放)為:

????????????????????????????????????????? 內存地址 ?? ?0x4000 ?? ?0x4001 ?? ?0x4002 ?? ?0x4003
????????????????????????????????????????? 存放內容 ?? ?0x78?? ? ?? 0x56 ? ? ?? 0x34 ?? ? ?? 0x12
而在Big- endian模式CPU內存中的存放方式則為:
????????????????????????????????????????? 內存地址 ?? ?0x4000 ?? ?0x4001 ?? ?0x4002 ?? ?0x4003
????????????????????????????????????????? 存放內容 ?? ?0x12 ?? ???? 0x34 ?? ??? 0x56 ?? ? ?? 0x78

?

0x20150810

如果按照大端模式存儲:從低地址到高地址:20 15 08 10

????? ? ??????????????????????? ? 輸出從低地址到高地址:20 15 08 10

如果按照小端模式存儲:從低地址到高地址:10 08 15 20?

????????????????????????????????? 輸出從高地址到低地址:08 10 20 15

?

為什么小端序是從高地址輸出,大端序是從地低地址輸出?

因為你的存儲順序都不同,如果按照相同的方式讀取(比如從高到低),那讀取來的結果就有兩種可能,那么必有一種錯了啊。題里是把一個int讀成兩個short,所以有兩種可能。但是假如int讀成int,無論是大端小端,絕對僅由一種結果。

?

---------------------------------------------------------------------------------------------------------------------------

#include<stdio.h> int fun(char s[]) {char *p=s;while(*p!=0) p++;return (p-s); } main() {printf("%d\n",fun("OABCDEF")); }

  最后輸出結果是7.

?

------------------------------------------------------------------------------------------------------------------------

一個算法應該具有以下五個重要的特征:   

1、有窮性: 一個算法必須保證執行有限步之后結束;   

2、確切性: 算法的每一步驟必須有確切的定義;   

3、輸入:一個算法有0個或多個輸入,以刻畫運算對象的初始情況,所謂0個輸入是指算法本身定除了初始條件;   

4、輸出:一個算法有一個或多個輸出,以反映對輸入數據加工后的結果。沒有輸出的算法是毫無意義的;   

5、可行性: 算法原則上能夠精確地運行,而且人們用筆和紙做有限次運算后即可完成。

?

轉載于:https://www.cnblogs.com/dd2hm/p/7277248.html

總結

以上是生活随笔為你收集整理的22 大端序和小端序的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。