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

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

?? lib_mem.h

?? 移植到freescale 9s12系列單片機的uCOSII
?? H
?? 第 1 頁 / 共 3 頁
字號:

#define  MEM_VAL_COPY_GET_INT16U_BIG(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_BIG(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_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一区二区三区免费野_久草精品视频
久久一留热品黄| 欧美性高清videossexo| 秋霞午夜av一区二区三区| 亚洲欧美在线高清| 国产精品日韩精品欧美在线| 2024国产精品| 国产欧美日韩亚州综合| 国产日韩视频一区二区三区| 久久精品欧美一区二区三区麻豆| 精品国产乱码久久久久久闺蜜| 日韩精品在线一区二区| 欧美xxxxx裸体时装秀| 久久免费电影网| 中文字幕一区二区三区色视频| 亚洲天堂av一区| 亚洲综合区在线| 亚洲bt欧美bt精品777| 免费黄网站欧美| 国产精品一二三区| av电影在线观看不卡| 色爱区综合激月婷婷| 91精品国产全国免费观看| 精品少妇一区二区三区| 成人免费在线视频观看| 亚洲bt欧美bt精品| 国产在线不卡一区| 91日韩一区二区三区| 欧美一区二区高清| 国产欧美一区二区三区在线老狼 | 欧美视频一区二区在线观看| 欧美乱熟臀69xxxxxx| 久久久久久久电影| 亚洲一区二区三区自拍| 久久国产精品72免费观看| www.欧美日韩国产在线| 91精品国产色综合久久ai换脸 | 日本一区二区三区四区在线视频 | 成人在线一区二区三区| 日本大香伊一区二区三区| 日韩一级免费观看| 中文字幕一区二区三区四区不卡 | 亚洲综合一区在线| 国产精品一线二线三线精华| 欧美日韩一本到| 中文字幕一区在线观看视频| 青娱乐精品视频在线| 99re6这里只有精品视频在线观看| 制服.丝袜.亚洲.另类.中文| 中文字幕国产一区| 老司机午夜精品99久久| 欧美专区日韩专区| 自拍视频在线观看一区二区| 国产精品亚洲专一区二区三区| 4438亚洲最大| 亚洲精品视频在线看| 国产永久精品大片wwwapp| 91精品国产91综合久久蜜臀| 亚洲电影在线免费观看| 91浏览器在线视频| 国产精品区一区二区三| 精品在线亚洲视频| 91精品国产综合久久久久久久久久| 中文字幕在线观看一区| 国产高清视频一区| 久久精品视频在线免费观看| 精品一区二区精品| 日韩欧美一二三四区| 99re这里只有精品首页| 国产日韩欧美不卡在线| 国产综合久久久久影院| 精品精品国产高清一毛片一天堂| 亚洲国产cao| 欧美日韩国产综合久久| 一区二区三区小说| 91久久精品网| 亚洲午夜精品17c| 欧美日韩综合不卡| 亚洲成人免费影院| 日韩一区二区三区av| 七七婷婷婷婷精品国产| 日韩欧美国产高清| 国精产品一区一区三区mba桃花| 26uuu色噜噜精品一区| 国产在线视频一区二区三区| 精品国产免费久久| 丰满亚洲少妇av| 亚洲欧美aⅴ...| 欧美影视一区在线| 亚洲成va人在线观看| 日韩精品资源二区在线| 国产毛片精品视频| 中文字幕一区二区在线观看| 91激情在线视频| 日本亚洲电影天堂| 久久综合五月天婷婷伊人| 成人精品视频.| 亚洲男女毛片无遮挡| 欧美在线一二三| 久久国产日韩欧美精品| 欧美国产视频在线| 欧美在线免费观看视频| 美女久久久精品| 中文字幕av一区 二区| 色综合天天综合网天天看片| 日本午夜一区二区| 国产精品私人影院| 欧美理论电影在线| 狠狠色狠狠色合久久伊人| 中文字幕一区二区三| 337p亚洲精品色噜噜噜| 国产精品一区免费视频| 亚洲综合免费观看高清在线观看| 日韩一区二区电影| 91在线免费视频观看| 青青青爽久久午夜综合久久午夜| www亚洲一区| 在线成人免费视频| 99久久精品免费精品国产| 美女尤物国产一区| 亚洲精品免费电影| 国产三级久久久| 欧美一区二区观看视频| 色婷婷综合久久久久中文一区二区| 蜜臀久久99精品久久久久宅男 | 日本一区二区三区在线观看| 欧美日本在线视频| 93久久精品日日躁夜夜躁欧美| 美腿丝袜亚洲一区| 亚洲精品国产一区二区三区四区在线| 亚洲精品免费在线| 国产亚洲精品中文字幕| 欧美精品乱码久久久久久按摩| 成人美女在线视频| 国产成人小视频| 精品一区二区免费| 蜜臀av一区二区在线观看| 综合久久久久久久| 中文字幕乱码亚洲精品一区| 精品处破学生在线二十三| 欧美日韩一区三区四区| 91福利视频久久久久| 不卡电影免费在线播放一区| 国产九色精品成人porny| 看片网站欧美日韩| 日本v片在线高清不卡在线观看| 亚洲中国最大av网站| 亚洲乱码中文字幕| 最新中文字幕一区二区三区| 国产精品网站导航| 中文字幕国产精品一区二区| 国产亚洲欧美在线| 精品成人在线观看| 精品国内二区三区| 久久久久久久国产精品影院| 久久久久久久免费视频了| 26uuu亚洲| 国产欧美日韩另类一区| 欧美激情中文字幕| 中文字幕一区二区三| 亚洲欧美另类综合偷拍| 亚洲黄色尤物视频| 婷婷综合五月天| 日本午夜一区二区| 国产乱码精品一品二品| 成人深夜视频在线观看| 国产一区不卡精品| 欧美一区二区精品久久911| 亚洲成人资源在线| 日韩国产高清在线| 久久精品国产99| 国产在线精品免费| thepron国产精品| 99re热视频这里只精品| 亚洲码国产岛国毛片在线| 精品毛片乱码1区2区3区| 欧美日韩免费观看一区三区| 精品国产免费一区二区三区香蕉| jlzzjlzz亚洲日本少妇| 91精品国产综合久久国产大片| 欧美日韩欧美一区二区| 视频精品一区二区| 日韩精品一二三| 欧美日韩国产一区二区三区地区| 91丨九色丨蝌蚪丨老版| 色综合天天综合色综合av | 成人午夜av影视| 高清不卡一区二区| 久久天天做天天爱综合色| 精品日韩成人av| 亚洲精品一区二区三区福利 | 99视频一区二区| 成人sese在线| 亚洲欧美日韩中文字幕一区二区三区| 一区二区在线观看免费视频播放| 在线观看一区二区精品视频| 一区二区三区国产精品| 欧美视频一区在线观看| 亚洲va国产天堂va久久en| 久久精品国产秦先生| 久久99精品国产麻豆不卡|