| 数据搜索系统,热门电子元器件搜索 |
|
AN2367 数据表(PDF) 4 Page - STMicroelectronics |
|
|
|||||||||||||||||||||||||||||
AN2367 数据表(HTML) 4 Page - STMicroelectronics |
|
4 / 13 page ![]() The optimized routine AN2367 4/13 2 The optimized routine 2.1 Interface void MEMCOPY_L2S_BY4(void *pDEST, void *pSRC, ushort NbrByte) Note about pointers: In this description above, the pointers are pointing to a void. A way of looking at it is that the pointer is pointing to a buffer of long with the first 2 bytes filled with zeros. Another way of looking at it is that the pointer is pointing to a buffer of chars. While it is beyond this application note to explain the problem of mapping bytes, short and long in the same memory space in C, it is worth noting that the routine could be declared differently. In fact, when running the program to test the routine on its own, it was declared as void MEMCOPY_L2S_BY4(short *pDEST, long *pSRC, long NbrByte) See Appendix B on page 11 for an example of the C call. 2.2 Algorithm description The algorithm works as follows: ● First level - granularity 16: The CPU transfer 16 bytes per iteration until the number of bytes is less than 16. Go to second level. ● Second level: Granularity 4: Depending on the remaining number of bytes, the CPU transfer either 4, 8 or 12 bytes. Go to third level. ● Third level: Granularity1: Depending on the remaining number of bytes, the CPU transfer either 1, 2 or 3 bytes. |
|
|
链接网址 |
| ALLDATASHEET是否为您带来帮助? [ DONATE ] |
关于 Alldatasheet | 广告服务 | 联系我们 | 隐私政策 | 数据表链接 | 链接交换 | 制造商名单 All Rights Reserved©Alldatasheet.com |
| Russian : Alldatasheetru.com | Korean : Alldatasheet.co.kr | Spanish : Alldatasheet.es | French : Alldatasheet.fr | Italian : Alldatasheetit.com Portuguese : Alldatasheetpt.com | Polish : Alldatasheet.pl | Vietnamese : Alldatasheet.vn Indian : Alldatasheet.in | Mexican : Alldatasheet.com.mx | British : Alldatasheet.co.uk | New Zealand : Alldatasheet.co.nz |
|
Family Site : ic2ic.com |
icmetro.com |