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

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

?? crc_algs.lst

?? 用TI單片機MSP430系列寫的CRC檢驗程序
?? LST
字號:
##############################################################################
#                                                                            #
# IAR MSP430 C Compiler V2.21B/W32  [Kickstart]        17/Aug/2004  19:23:25 #
# Copyright 1996-2003 IAR Systems. All rights reserved.                      #
#                                                                            #
#    __rt_version  =  1                                                      #
#    __double_size =  32                                                     #
#    __reg_r4      =  free                                                   #
#    __reg_r5      =  free                                                   #
#    __pic         =  no                                                     #
#    Source file   =  C:\Program Files\IAR Systems\Embedded Workbench        #
#                     3.2\myProjects\CRC\src\crc_algs.c                      #
#    Command line  =  -I "C:\Program Files\IAR Systems\Embedded Workbench    #
#                     3.2\430\INC\" -I "C:\Program Files\IAR                 #
#                     Systems\Embedded Workbench 3.2\430\INC\CLIB\" -lc      #
#                     "C:\Program Files\IAR Systems\Embedded Workbench       #
#                     3.2\myProjects\CRC\MSP430\Debug\List\" -o "C:\Program  #
#                     Files\IAR Systems\Embedded Workbench                   #
#                     3.2\myProjects\CRC\MSP430\Debug\Obj\" -s9 --no_cse     #
#                     --no_unroll --no_inline --no_code_motion --debug -e    #
#                     --double=32 "C:\Program Files\IAR Systems\Embedded     #
#                     Workbench 3.2\myProjects\CRC\src\crc_algs.c"           #
#    List file     =  C:\Program Files\IAR Systems\Embedded Workbench        #
#                     3.2\myProjects\CRC\MSP430\Debug\List\crc_algs.lst      #
#    Object file   =  C:\Program Files\IAR Systems\Embedded Workbench        #
#                     3.2\myProjects\CRC\MSP430\Debug\Obj\crc_algs.r43       #
#                                                                            #
#                                                                            #
##############################################################################

C:\Program Files\IAR Systems\Embedded Workbench 3.2\myProjects\CRC\src\crc_algs.c
      1          
      2          /**********************************************************************************
      3          FUNCTIONS:	16/32-bit CRC Algorithms, bitwsie and table methods
      4          ARGUMENTS:	"bitwise algorithm function signature"
      5          			return: CRC
      6          			arg1: CRC init value
      7          			arg2: CRC generator polynomial
      8          			arg3: pointer to the message
      9          			arg4: size of message in bytes
     10          			"table-based algorithm function signature"
     11          			return: CRC
     12          			arg1: CRC init value
     13          			arg2: pointer to CRC table (specific to generator polynomial)
     14          			arg3: pointer to the message
     15          			arg4: size of message in bytes
     16          AUTHOR:		Emil Lenchak
     17          DATE:		March, 2004
     18          COPYRIGHT:	Texas Instruments, 2004
     19          TOOLS:		Built with IAR Kickstart V2/MS Visual C++ 6.0
     20          ***********************************************************************************/
     21          
     22          #ifdef __ICC430__
     23          #include  "msp430x16x.h"
     24          #endif
     25          
     26          #include "..\inc\crc.h"
     27          
     28          /**************************************
     29          	CRC MEMBERS (FUNCTIONS)
     30          **************************************/
     31          
     32          // this is an equivalent C implementation to the assembly implementation
     33          unsigned short crc16MakeBitwise(unsigned short crc, unsigned short poly, 
     34          						unsigned char *pmsg, unsigned int msg_size)
     35          {
     36              unsigned int i, j, carry;
     37              unsigned char msg;
     38              unsigned short temp;
     39          
     40          	temp = *pmsg++ << 8;
     41          	temp |= *pmsg++;
     42          	crc ^= temp;
     43              
     44              for(i = 0 ; i < msg_size ; i ++)
     45              {
     46                  msg = *pmsg++;
     47                  
     48          		for(j = 0 ; j < 8 ; j++)
     49                  {
     50          			carry = crc & 0x8000;
     51          			crc = (crc << 1) | (msg >> 7);
     52          			if(carry) crc ^= poly;
     53          			msg <<= 1;
     54                  }
     55              }
     56             
     57              return(crc ^ CRC16_FINAL_XOR);
     58          }
     59          
     60          // this is a C-optimized implementation
     61          unsigned short crc16MakeBitwise2(unsigned short crc, unsigned short poly,
     62          						unsigned char *pmsg, unsigned int msg_size)
     63          {
     64              unsigned int i, j;
     65              unsigned short msg;
     66              
     67              for(i = 0 ; i < msg_size ; i ++)
     68              {
     69                  msg = (*pmsg++ << 8);
     70                  
     71          		for(j = 0 ; j < 8 ; j++)
     72                  {
     73                      if((msg ^ crc) >> 15) crc = (crc << 1) ^ poly;
     74          			else crc <<= 1;
     75          	
     76          			msg <<= 1;
     77                  }
     78              }
     79             
     80              return(crc ^ CRC16R_FINAL_XOR);
     81          }
     82          
     83          // this is an equivalent C implementation to the assembly implementation
     84          unsigned long crc32MakeBitwise(unsigned long crc, unsigned long poly, 
     85          						unsigned char *pmsg, unsigned int msg_size)
     86          {
     87              unsigned int i, j, carry;
     88              unsigned char msg;
     89              unsigned long temp;
     90          
     91          	temp = (unsigned long)(*pmsg++) << 24;
     92          	temp |= (unsigned long)(*pmsg++) << 16;
     93          	temp |= (unsigned long)(*pmsg++) << 8;
     94          	temp |= (unsigned long)(*pmsg++);
     95          	crc ^= temp;
     96          
     97              for(i = 0 ; i < msg_size ; i ++)
     98              {
     99                  msg = *pmsg++;
    100          
    101          		for(j = 0 ; j < 8 ; j++)
    102                  {
    103          			carry = crc >> 31;
    104          			crc = (crc << 1) | (msg >> 7);
    105          			if(carry) crc ^= poly;
    106          			msg <<= 1;
    107                  }
    108              }
    109             
    110              return(crc ^ CRC32_FINAL_XOR);
    111          }
    112          
    113          // this is a C-optimized implementation
    114          unsigned long crc32MakeBitwise2(unsigned long crc, unsigned long poly, 
    115          								unsigned char *pmsg, unsigned int msg_size)
    116          {
    117              unsigned int i, j;
    118              unsigned long msg;
    119                      
    120              for(i = 0 ; i < msg_size ; i++)
    121              {
    122                  msg = *pmsg++;
    123                  msg <<= 24;
    124                  
    125                  for(j = 0 ; j < 8 ; j++)
    126                  {
    127                      if((msg ^ crc) >> 31) crc = (crc << 1) ^ poly;
    128          			else crc <<= 1;
    129          	
    130          	    msg <<= 1;
    131                  }
    132              }
    133              
    134              return(crc ^ CRC32R_FINAL_XOR);
    135          }
    136          
    137          unsigned short crc16MakeTableMethod(unsigned short crc, TBL_MEM unsigned short *table,
    138          									unsigned char *pbuffer, unsigned int length)
    139          {
    140              while(length--) 
    141                  crc = table[((crc >> 8) ^ *pbuffer++)] ^ (crc << 8);	// normal
    142          
    143              return(crc ^ CRC16_FINAL_XOR);
    144          }
    145          
    146          unsigned short crc16rMakeTableMethod(unsigned short crc, TBL_MEM unsigned short *table,
    147          									unsigned char *pbuffer, unsigned int length)
    148          {
    149              while(length--) 
    150                  crc = table[(crc & 0xFF) ^ *pbuffer++] ^ (crc >> 8);	// reflected
    151          
    152              return(crc ^ CRC16R_FINAL_XOR);
    153          }
    154          
    155          unsigned long crc32MakeTableMethod(unsigned long crc, TBL_MEM unsigned long *table, 
    156          								   unsigned char *pbuffer, unsigned int length)
    157          {
    158              while(length--) 
    159                  crc = table[((crc >> 24) ^ *pbuffer++)] ^ (crc << 8);		// normal
    160          
    161              return(crc ^ CRC32_FINAL_XOR);
    162          }
    163          
    164          unsigned long crc32rMakeTableMethod(unsigned long crc, TBL_MEM unsigned long *table, 
    165          								   unsigned char *pbuffer, unsigned int length)
    166          {
    167              while(length--) 
    168                  crc = table[(crc ^ *pbuffer++) & 0xFFL] ^ (crc >> 8);
    169          
    170              return(crc ^ CRC32R_FINAL_XOR);
    171          }
    172          
    173          /************************************
    174          	CRC UTILITIES
    175          ************************************/
    176          
    177          void crc16BuildTable(unsigned short *ptable, unsigned short poly)
    178          {
    179          	unsigned int i, j;
    180          
    181              for(i = 0; i <= 255; i++)
    182              {
    183                  ptable[i] = i << 8;
    184                  for(j = 0; j < 8; j++)
    185                      ptable[i] = (ptable[i] << 1) ^ (ptable[i] & 0x8000 ? poly : 0);
    186              }
    187          }
    188          
    189          void crc32BuildTable(unsigned long *ptable, unsigned long poly)
    190          {
    191          	unsigned int i, j;
    192          
    193              for(i = 0; i <= 255; i++)
    194              {
    195                  ptable[i] = (long)i << 24;        
    196                  for(j = 0; j < 8; j++)
    197                      ptable[i] = (ptable[i] << 1) ^ (ptable[i] & 0x80000000 ? poly : 0);
    198              }
    199          }
    200          
    201          unsigned long bitReflect(unsigned long data, unsigned int width)
    202          {
    203              unsigned long result = 0;
    204          	unsigned int i;
    205          
    206              for (i = 1; i < (width + 1); i++)
    207              {
    208                  if(data & 1) result |= 0x1L << (width - i);
    209                  data >>= 1;
    210              } 	
    211          
    212              return result;
    213          }
    214          
    215          /************************************ END ***************************************/

   Maximum stack usage in bytes:

     Function              CSTACK
     --------              ------
     bitReflect               14
     crc16BuildTable           6
     crc16MakeBitwise         10
     crc16MakeBitwise2         8
     crc16MakeTableMethod      6
     crc16rMakeTableMethod     6
     crc32BuildTable          12
     crc32MakeBitwise         16
     crc32MakeBitwise2        16
     crc32MakeTableMethod     10
     crc32rMakeTableMethod     8


   Segment part sizes:

     Function/Label        Bytes
     --------------        -----
     crc16MakeBitwise        74
     crc16MakeBitwise2       58
     crc32MakeBitwise       110
     crc32MakeBitwise2       82
     crc16MakeTableMethod    50
     crc16rMakeTableMethod   48
     crc32MakeTableMethod    68
     crc32rMakeTableMethod   64
     crc16BuildTable         64
     crc32BuildTable         96
     bitReflect              78

 
 792 bytes in segment CODE
 
 792 bytes of CODE memory

Errors: none
Warnings: none

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美视频完全免费看| 日韩成人免费电影| 一本大道久久精品懂色aⅴ| 亚洲欧洲色图综合| 在线欧美一区二区| 日韩av一区二区在线影视| 日韩欧美一级二级三级久久久| 九一久久久久久| 国产日韩欧美一区二区三区乱码 | 日韩一区二区三区在线| 麻豆精品视频在线观看视频| 久久精品日产第一区二区三区高清版 | 欧美影视一区二区三区| 日韩电影一二三区| 国产午夜久久久久| 91欧美一区二区| 日本欧美在线观看| 国产精品天美传媒沈樵| 欧美午夜精品一区二区蜜桃| 久久精品国产77777蜜臀| 日本一区二区综合亚洲| 欧美日韩一区不卡| 韩国三级中文字幕hd久久精品| 亚洲欧洲另类国产综合| 欧美一区二区三区小说| 波多野结衣中文字幕一区二区三区| 一区二区三区在线免费视频 | 久久久久久久久免费| 92国产精品观看| 日韩高清不卡一区二区三区| 国产女同性恋一区二区| 欧美日韩激情一区二区三区| 国产成人精品一区二区三区四区| 亚洲国产精品综合小说图片区| 亚洲精品一区二区三区在线观看| 91美女福利视频| 国内精品久久久久影院薰衣草| 一区二区三区四区av| 亚洲精品一区二区三区影院| 欧美三级三级三级| www.欧美.com| 国产一区二区三区蝌蚪| 亚洲综合在线第一页| 欧美激情在线一区二区| 欧美一区三区四区| 色综合久久综合网| 国产v综合v亚洲欧| 另类的小说在线视频另类成人小视频在线 | 亚洲午夜国产一区99re久久| 国产蜜臀av在线一区二区三区| 91精品国产乱| 欧美性猛交xxxx乱大交退制版| 国产电影一区二区三区| 三级在线观看一区二区| 亚洲免费电影在线| 国产精品福利在线播放| 久久午夜国产精品| 欧美va亚洲va| 欧美一区欧美二区| 91精品在线一区二区| 日本精品免费观看高清观看| youjizz久久| 国产.欧美.日韩| 黄一区二区三区| 男男视频亚洲欧美| 视频一区欧美精品| 日韩精品一区第一页| 一区二区三区精密机械公司| 亚洲手机成人高清视频| 中文字幕一区三区| 亚洲欧美综合网| 成人欧美一区二区三区白人| 国产精品第一页第二页第三页| 欧美国产日本韩| 欧美高清在线精品一区| 国产亚洲综合性久久久影院| 久久久五月婷婷| 国产日韩欧美麻豆| 欧美韩国日本不卡| 国产精品久久久久国产精品日日 | 亚洲综合久久久| 亚洲制服丝袜av| 亚洲国产精品嫩草影院| 午夜伊人狠狠久久| 青青草国产精品97视觉盛宴 | 国产成人三级在线观看| 国产凹凸在线观看一区二区 | 欧美写真视频网站| 欧美伦理视频网站| 3d动漫精品啪啪一区二区竹菊| 91精品国产91综合久久蜜臀| 欧美精品一区二区三区高清aⅴ | 日韩欧美在线不卡| 精品88久久久久88久久久| 国产亚洲欧美日韩俺去了| 欧美国产综合色视频| 日韩一区欧美小说| 婷婷久久综合九色综合绿巨人| 青草av.久久免费一区| 国产在线不卡视频| 成人v精品蜜桃久久一区| 91日韩一区二区三区| 欧美二区在线观看| 久久久99精品免费观看| 亚洲免费观看高清完整版在线 | 中文字幕五月欧美| 亚洲国产中文字幕| 狠狠色丁香婷综合久久| 成人免费三级在线| 欧美色图免费看| 精品精品国产高清a毛片牛牛| 中文字幕精品—区二区四季| 亚洲精品成人精品456| 日韩电影在线免费观看| 大陆成人av片| 91精品久久久久久蜜臀| 国产欧美日韩另类一区| 香蕉加勒比综合久久| 粉嫩在线一区二区三区视频| 欧美经典一区二区三区| 亚洲成人1区2区| 懂色av中文一区二区三区| 欧美性色欧美a在线播放| 久久久国产一区二区三区四区小说| 亚洲欧美偷拍三级| 国产一区二区在线观看视频| 色综合久久中文字幕| 久久久久亚洲蜜桃| 日韩专区在线视频| 99国产精品久久久久| 精品美女被调教视频大全网站| 亚洲欧美激情小说另类| 国产一二精品视频| 在线播放视频一区| 亚洲女同ⅹxx女同tv| 国产一区二区三区免费播放| 欧美日韩不卡一区二区| 中文字幕一区二区三区在线观看| 免费高清成人在线| 欧美午夜精品一区二区三区| 国产精品久久久久桃色tv| 激情偷乱视频一区二区三区| 欧美乱熟臀69xxxxxx| 亚洲精品乱码久久久久久日本蜜臀 | 久久久久久久久蜜桃| 蜜桃久久久久久久| 欧美日韩亚洲综合在线| 亚洲人成电影网站色mp4| 高清成人在线观看| 久久女同性恋中文字幕| 蜜桃传媒麻豆第一区在线观看| 欧美日韩日日夜夜| 一区二区三区在线免费观看| 99久久99久久综合| 国产精品卡一卡二| 成人免费视频一区二区| 精品久久久久久久久久久久久久久| 天天做天天摸天天爽国产一区| 91久久精品一区二区三区| 综合自拍亚洲综合图不卡区| www.激情成人| 国产精品毛片久久久久久| 成人免费黄色在线| 国产精品天天看| 不卡免费追剧大全电视剧网站| 中文子幕无线码一区tr| 粉嫩aⅴ一区二区三区四区| 国产日韩av一区| 懂色av一区二区在线播放| 欧美国产成人在线| av一区二区久久| 亚洲精品日日夜夜| 欧美日韩午夜在线视频| 丝瓜av网站精品一区二区| 欧美精品在线观看一区二区| 午夜av区久久| 欧美成va人片在线观看| 经典三级一区二区| 亚洲精品一区二区三区蜜桃下载| 国产一区二区三区免费在线观看| 久久久午夜电影| 97se亚洲国产综合在线| 亚洲制服丝袜在线| 91精品国产色综合久久不卡蜜臀 | 亚洲日本va午夜在线影院| 在线精品视频免费观看| 日韩福利电影在线观看| 欧美成人a视频| 高清在线成人网| 亚洲欧美日韩一区二区三区在线观看| 一本高清dvd不卡在线观看| 肉色丝袜一区二区| 偷拍亚洲欧洲综合| 欧美大黄免费观看| 成人晚上爱看视频| 亚洲高清视频的网址| 欧美精品一区二区三区蜜桃视频 | 国产精品一区二区果冻传媒| 成人免费在线观看入口| 91精品国产综合久久久蜜臀图片|