亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? lib_mem.h

?? ucos-ii 的完整代碼
?? H
?? 第 1 頁 / 共 3 頁
字號:

#define  MEM_VAL_COPY_GET_INT08U_LITTLE(addr_dest, addr_src)  { (*(((CPU_INT08U *)(addr_dest)) + 0)) = (*(((CPU_INT08U *)(addr_src)) + 0)); }

#define  MEM_VAL_COPY_GET_INT16U_LITTLE(addr_dest, addr_src)  { (*(((CPU_INT08U *)(addr_dest)) + 0)) = (*(((CPU_INT08U *)(addr_src)) + 1)); \
                                                                (*(((CPU_INT08U *)(addr_dest)) + 1)) = (*(((CPU_INT08U *)(addr_src)) + 0)); }

#define  MEM_VAL_COPY_GET_INT32U_LITTLE(addr_dest, addr_src)  { (*(((CPU_INT08U *)(addr_dest)) + 0)) = (*(((CPU_INT08U *)(addr_src)) + 3)); \
                                                                (*(((CPU_INT08U *)(addr_dest)) + 1)) = (*(((CPU_INT08U *)(addr_src)) + 2)); \
                                                                (*(((CPU_INT08U *)(addr_dest)) + 2)) = (*(((CPU_INT08U *)(addr_src)) + 1)); \
                                                                (*(((CPU_INT08U *)(addr_dest)) + 3)) = (*(((CPU_INT08U *)(addr_src)) + 0)); }



#define  MEM_VAL_COPY_GET_INT08U(addr_dest, addr_src)           MEM_VAL_COPY_GET_INT08U_BIG(addr_dest, addr_src)
#define  MEM_VAL_COPY_GET_INT16U(addr_dest, addr_src)           MEM_VAL_COPY_GET_INT16U_BIG(addr_dest, addr_src)
#define  MEM_VAL_COPY_GET_INT32U(addr_dest, addr_src)           MEM_VAL_COPY_GET_INT32U_BIG(addr_dest, addr_src)




#elif   (CPU_CFG_ENDIAN_TYPE == CPU_ENDIAN_TYPE_LITTLE)


#define  MEM_VAL_COPY_GET_INT08U_BIG(addr_dest, addr_src)     { (*(((CPU_INT08U *)(addr_dest)) + 0)) = (*(((CPU_INT08U *)(addr_src)) + 0)); }

#define  MEM_VAL_COPY_GET_INT16U_BIG(addr_dest, addr_src)     { (*(((CPU_INT08U *)(addr_dest)) + 0)) = (*(((CPU_INT08U *)(addr_src)) + 1)); \
                                                                (*(((CPU_INT08U *)(addr_dest)) + 1)) = (*(((CPU_INT08U *)(addr_src)) + 0)); }

#define  MEM_VAL_COPY_GET_INT32U_BIG(addr_dest, addr_src)     { (*(((CPU_INT08U *)(addr_dest)) + 0)) = (*(((CPU_INT08U *)(addr_src)) + 3)); \
                                                                (*(((CPU_INT08U *)(addr_dest)) + 1)) = (*(((CPU_INT08U *)(addr_src)) + 2)); \
                                                                (*(((CPU_INT08U *)(addr_dest)) + 2)) = (*(((CPU_INT08U *)(addr_src)) + 1)); \
                                                                (*(((CPU_INT08U *)(addr_dest)) + 3)) = (*(((CPU_INT08U *)(addr_src)) + 0)); }



#define  MEM_VAL_COPY_GET_INT08U_LITTLE(addr_dest, addr_src)  { (*(((CPU_INT08U *)(addr_dest)) + 0)) = (*(((CPU_INT08U *)(addr_src)) + 0)); }

#define  MEM_VAL_COPY_GET_INT16U_LITTLE(addr_dest, addr_src)  { (*(((CPU_INT08U *)(addr_dest)) + 0)) = (*(((CPU_INT08U *)(addr_src)) + 0)); \
                                                                (*(((CPU_INT08U *)(addr_dest)) + 1)) = (*(((CPU_INT08U *)(addr_src)) + 1)); }

#define  MEM_VAL_COPY_GET_INT32U_LITTLE(addr_dest, addr_src)  { (*(((CPU_INT08U *)(addr_dest)) + 0)) = (*(((CPU_INT08U *)(addr_src)) + 0)); \
                                                                (*(((CPU_INT08U *)(addr_dest)) + 1)) = (*(((CPU_INT08U *)(addr_src)) + 1)); \
                                                                (*(((CPU_INT08U *)(addr_dest)) + 2)) = (*(((CPU_INT08U *)(addr_src)) + 2)); \
                                                                (*(((CPU_INT08U *)(addr_dest)) + 3)) = (*(((CPU_INT08U *)(addr_src)) + 3)); }



#define  MEM_VAL_COPY_GET_INT08U(addr_dest, addr_src)           MEM_VAL_COPY_GET_INT08U_LITTLE(addr_dest, addr_src)
#define  MEM_VAL_COPY_GET_INT16U(addr_dest, addr_src)           MEM_VAL_COPY_GET_INT16U_LITTLE(addr_dest, addr_src)
#define  MEM_VAL_COPY_GET_INT32U(addr_dest, addr_src)           MEM_VAL_COPY_GET_INT32U_LITTLE(addr_dest, addr_src)




#else                                                                           /* See Note #6.                         */

#error  "CPU_CFG_ENDIAN_TYPE  illegally #defined in 'cpu.h'      "
#error  "                     [See 'cpu.h  CONFIGURATION ERRORS']"

#endif


/*$PAGE*/
/*
*********************************************************************************************************
*                                       MEM_VAL_COPY_SET_xxx()
*
* Description : Copy & encode data values from any CPU memory address to any CPU memory address.
*
* Argument(s) : addr_dest       Lowest CPU memory address to copy/encode source address's data value 
*                                   (see Notes #2 & #3).
*
*               addr_src        Lowest CPU memory address of data value to copy/encode 
*                                   (see Notes #2 & #3).
*
* Return(s)   : none.
*
* Caller(s)   : various.
*
* Note(s)     : (1) Copy/encode data values based on the values' data-word order :
*
*                       MEM_VAL_COPY_SET_xxx_BIG()      Encode big-   endian data values -- data words' most
*                                                           significant octet @ lowest memory address
*                       MEM_VAL_COPY_SET_xxx_LITTLE()   Encode little-endian data values -- data words' least
*                                                           significant octet @ lowest memory address
*                       MEM_VAL_COPY_SET_xxx()          Encode data values using CPU's native or configured 
*                                                           data-word order
*
*                   See also 'cpu.h  CPU WORD CONFIGURATION  Note #2'.
*
*               (2) CPU memory addresses/pointers NOT checked for NULL.
*
*               (3) MEM_VAL_COPY_SET_xxx() macro's copy/encode data values without regard to CPU word-aligned 
*                   addresses.  Thus for processors that require data word alignment, data words can be copied/
*                   encoded to/from any CPU address, word-aligned or not, without generating data-word-alignment 
*                   exceptions/faults.
*
*               (4) MEM_VAL_COPY_SET_xxx() macro's are more efficient than MEM_VAL_SET_xxx() macro's & are 
*                   also independent of CPU data-word-alignment & SHOULD be used whenever possible.
*
*                   See also 'MEM_VAL_SET_xxx()  Note #4'.
*
*               (5) Since octet-order copy/conversion are inverse operations, memory data value gets/sets
*                   are inverse operations.
*
*                   See also 'MEM_VAL_COPY_GET_xxx()  Note #5'.
*********************************************************************************************************
*/

                                                                                /* See Note #5.                         */
#define  MEM_VAL_COPY_SET_INT08U_BIG(addr_dest, addr_src)       MEM_VAL_COPY_GET_INT08U_BIG(addr_dest, addr_src)
#define  MEM_VAL_COPY_SET_INT16U_BIG(addr_dest, addr_src)       MEM_VAL_COPY_GET_INT16U_BIG(addr_dest, addr_src)
#define  MEM_VAL_COPY_SET_INT32U_BIG(addr_dest, addr_src)       MEM_VAL_COPY_GET_INT32U_BIG(addr_dest, addr_src)

#define  MEM_VAL_COPY_SET_INT08U_LITTLE(addr_dest, addr_src)    MEM_VAL_COPY_GET_INT08U_LITTLE(addr_dest, addr_src)
#define  MEM_VAL_COPY_SET_INT16U_LITTLE(addr_dest, addr_src)    MEM_VAL_COPY_GET_INT16U_LITTLE(addr_dest, addr_src)
#define  MEM_VAL_COPY_SET_INT32U_LITTLE(addr_dest, addr_src)    MEM_VAL_COPY_GET_INT32U_LITTLE(addr_dest, addr_src)


#define  MEM_VAL_COPY_SET_INT08U(addr_dest, addr_src)           MEM_VAL_COPY_GET_INT08U(addr_dest, addr_src)
#define  MEM_VAL_COPY_SET_INT16U(addr_dest, addr_src)           MEM_VAL_COPY_GET_INT16U(addr_dest, addr_src)
#define  MEM_VAL_COPY_SET_INT32U(addr_dest, addr_src)           MEM_VAL_COPY_GET_INT32U(addr_dest, addr_src)


/*$PAGE*/
/*
*********************************************************************************************************
*                                         MEM_VAL_COPY_xxx()
*
* Description : Copy data values from any CPU memory address to any CPU memory address.
*
* Argument(s) : addr_dest       Lowest CPU memory address to copy source address's data value
*                                   (see Notes #2 & #3).
*
*               addr_src        Lowest CPU memory address of data value to copy 
*                                   (see Notes #2 & #3).
*
* Return(s)   : none.
*
* Caller(s)   : various.
*
* Note(s)     : (1) MEM_VAL_COPY_xxx() macro's copy data values based on CPU's native data-word order.
*
*                   See also 'cpu.h  CPU WORD CONFIGURATION  Note #2'.
*
*               (2) CPU memory addresses/pointers NOT checked for NULL.
*
*               (3) MEM_VAL_COPY_xxx() macro's copy data values without regard to CPU word-aligned addresses.
*                   Thus for processors that require data word alignment, data words can be copied to/from any 
*                   CPU address, word-aligned or not, without generating data-word-alignment exceptions/faults.
*********************************************************************************************************
*/

#define  MEM_VAL_COPY_08(addr_dest, addr_src)                 { (*(((CPU_INT08U *)(addr_dest)) + 0)) = (*(((CPU_INT08U *)(addr_src)) + 0)); }

#define  MEM_VAL_COPY_16(addr_dest, addr_src)                 { (*(((CPU_INT08U *)(addr_dest)) + 0)) = (*(((CPU_INT08U *)(addr_src)) + 0)); \
                                                                (*(((CPU_INT08U *)(addr_dest)) + 1)) = (*(((CPU_INT08U *)(addr_src)) + 1)); }

#define  MEM_VAL_COPY_32(addr_dest, addr_src)                 { (*(((CPU_INT08U *)(addr_dest)) + 0)) = (*(((CPU_INT08U *)(addr_src)) + 0)); \
                                                                (*(((CPU_INT08U *)(addr_dest)) + 1)) = (*(((CPU_INT08U *)(addr_src)) + 1)); \
                                                                (*(((CPU_INT08U *)(addr_dest)) + 2)) = (*(((CPU_INT08U *)(addr_src)) + 2)); \
                                                                (*(((CPU_INT08U *)(addr_dest)) + 3)) = (*(((CPU_INT08U *)(addr_src)) + 3)); }


/*$PAGE*/
/*
*********************************************************************************************************
*                                         FUNCTION PROTOTYPES
*********************************************************************************************************
*/

void         Mem_Clr (void        *pmem,
                      CPU_SIZE_T   size);

void         Mem_Set (void        *pmem,
                      CPU_INT08U   data_val,
                      CPU_SIZE_T   size);

void         Mem_Copy(void        *pdest,
                      void        *psrc,
                      CPU_SIZE_T   size);

CPU_BOOLEAN  Mem_Cmp (void        *p1_mem,
                      void        *p2_mem,
                      CPU_SIZE_T   size);


/*$PAGE*/
/*
*********************************************************************************************************
*                                        CONFIGURATION ERRORS
*********************************************************************************************************
*/


/*
*********************************************************************************************************
*                                             MODULE END
*********************************************************************************************************
*/

#endif                                                          /* End of lib mem module include.                       */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本一区二区三区视频视频| 日韩欧美视频一区| 久久国产尿小便嘘嘘| 一区二区成人在线| 亚洲三级免费观看| 亚洲一区二区三区三| 亚洲视频资源在线| 一区二区久久久久久| 亚州成人在线电影| 日本美女一区二区三区视频| 青青草国产成人99久久| 久久狠狠亚洲综合| 国产精品白丝jk黑袜喷水| 国产精品一区二区三区网站| 成人白浆超碰人人人人| zzijzzij亚洲日本少妇熟睡| www.亚洲色图.com| 色94色欧美sute亚洲线路一久| 欧美日韩国产高清一区二区三区| 91精品国产综合久久精品| 日韩欧美国产电影| 国产亚洲欧洲997久久综合| 国产精品美女久久久久久久久久久 | 在线观看视频一区| 欧美久久久久久久久| 欧美精品一区二区精品网| 中文字幕高清一区| 亚洲国产一区二区a毛片| 奇米四色…亚洲| 大尺度一区二区| 欧美日韩在线三级| 国产亚洲自拍一区| 一区二区三区精品久久久| 久久精品免费观看| 成人动漫视频在线| 日韩午夜在线影院| 亚洲精品你懂的| 国内国产精品久久| 欧美在线观看一区二区| 久久久www免费人成精品| 亚洲蜜臀av乱码久久精品蜜桃| 丝袜美腿亚洲综合| 91在线一区二区| 欧美xxxxx牲另类人与| 亚洲色图欧美在线| 国产精品99久久不卡二区| 欧美亚洲愉拍一区二区| 久久久久久日产精品| 亚洲成人免费av| 成人黄页在线观看| 26uuu亚洲综合色欧美 | 午夜精品影院在线观看| 国产成人午夜精品影院观看视频 | 国产午夜精品理论片a级大结局| 亚洲人成电影网站色mp4| 久久66热re国产| 欧美日本在线观看| 亚洲免费看黄网站| 成人黄色在线看| 久久亚区不卡日本| 麻豆精品视频在线观看免费| 欧美日韩一区不卡| 一区二区三区**美女毛片| 99re这里只有精品6| 国产日产欧美一区二区视频| 精品一区中文字幕| 日韩欧美二区三区| 免费亚洲电影在线| 91精品国产麻豆国产自产在线 | 欧美激情综合网| 国产一本一道久久香蕉| 日韩欧美123| 日本强好片久久久久久aaa| 欧美三级三级三级| 伊人色综合久久天天| 日本乱人伦aⅴ精品| 亚洲美女电影在线| 日本高清不卡一区| 又紧又大又爽精品一区二区| 99re这里都是精品| 一区二区三区影院| 欧美日韩国产中文| 日本欧洲一区二区| 精品欧美一区二区久久| 国内精品第一页| 国产日韩欧美综合一区| 成人激情小说网站| 亚洲最大成人综合| 欧美日韩免费一区二区三区| 视频一区欧美精品| 精品国产露脸精彩对白| 国产传媒久久文化传媒| 中文字幕一区二区三| 91久久精品国产91性色tv| 亚洲成人资源网| 欧美一级xxx| 国产一区不卡视频| 亚洲欧美另类久久久精品2019| 欧美性大战久久久| 蜜臀av一级做a爰片久久| 久久免费视频色| 色婷婷综合久久久中文字幕| 亚洲国产精品麻豆| 精品国产网站在线观看| 成人免费av资源| 亚洲18女电影在线观看| 久久久久国产一区二区三区四区 | 日韩欧美激情一区| 成+人+亚洲+综合天堂| 亚欧色一区w666天堂| 久久久久青草大香线综合精品| 97aⅴ精品视频一二三区| 日韩中文字幕av电影| 亚洲国产岛国毛片在线| 欧美日韩免费观看一区三区| 国产精品亚洲人在线观看| 亚洲主播在线观看| 欧美激情一区二区| 欧美一级淫片007| 色婷婷av久久久久久久| 国产精品一区一区三区| 视频一区中文字幕国产| 亚洲欧美日韩国产综合在线| 26uuu另类欧美亚洲曰本| 色狠狠av一区二区三区| 福利一区二区在线| 日本午夜一区二区| 洋洋成人永久网站入口| 欧美激情一区不卡| 精品国产凹凸成av人导航| 欧美日韩亚洲综合| 91片黄在线观看| 国产精品主播直播| 青青草原综合久久大伊人精品 | 欧美精品在欧美一区二区少妇| 国产福利不卡视频| 免费观看一级特黄欧美大片| 一区二区三区在线观看国产| 国产视频在线观看一区二区三区| 欧美日韩一区三区四区| 色播五月激情综合网| www.亚洲人| 成人黄色软件下载| 成人av在线资源网| 国产河南妇女毛片精品久久久| 麻豆91免费观看| 六月婷婷色综合| 日韩国产精品久久| 天天色综合成人网| 婷婷亚洲久悠悠色悠在线播放| 亚洲另类春色国产| 玉米视频成人免费看| 亚洲另类在线制服丝袜| 亚洲欧美日韩中文字幕一区二区三区 | 日韩精品一区国产麻豆| 欧美剧在线免费观看网站| 欧美性一级生活| 欧美日精品一区视频| 欧美三级电影网| 91精品国产综合久久国产大片| 91精品国产91热久久久做人人| 91精品国产一区二区| 日韩欧美国产三级电影视频| 精品日韩欧美在线| 国产欧美一区二区三区网站| 中文字幕免费不卡| 亚洲美女区一区| 日韩电影在线一区二区三区| 男人操女人的视频在线观看欧美| 免费精品视频最新在线| 国产精品一卡二| 99re成人在线| 欧美少妇性性性| 精品国产一区二区国模嫣然| 中文字幕精品三区| 亚洲一区视频在线| 蜜臀91精品一区二区三区 | 中文字幕一区av| 一区二区三区精密机械公司| 五月天一区二区三区| 裸体一区二区三区| 91在线精品一区二区| 欧美人成免费网站| 久久久久久久久久久99999| 亚洲另类一区二区| 精品一区二区精品| 色94色欧美sute亚洲13| 精品免费国产二区三区| 国产精品国产自产拍高清av王其| 亚洲国产精品久久久久婷婷884| 久久99精品国产麻豆婷婷| 99国产欧美另类久久久精品 | 久久女同性恋中文字幕| 亚洲欧美视频在线观看视频| 老司机精品视频线观看86| 91捆绑美女网站| 精品国产成人系列| 一区二区三区蜜桃网| 风流少妇一区二区| 欧美一区二区三区在线看|