Look-up Table Bitshift Implementation for Real Time Embedded Systems (tm)

    Date: 10/30/06 (Code WTF)    Keywords: no keywords

    На очереди - сложение и умножение. Особого внимания заслуживает документация. Копирайт инфринджится со страшной силой, но судебного иска я не боюсь, тем более что речь наверняка идет о Well-Known Best Practice (r).



    /*************************
    * File Scope Variables
    *************************/
    /* Static Strings to Match the Data */
    static unsigned32_T MB_TID_MASK [32] =
    {
     0x00000001,  /* BIT 0    */
     0x00000002,  /* BIT 1    */
     0x00000004,  /* BIT 2    */
     0x00000008,  /* BIT 3    */
     0x00000010,  /* BIT 4    */
     0x00000020,  /* BIT 5    */
     0x00000040,  /* BIT 6    */
     0x00000080,  /* BIT 7    */
     0x00000100,  /* BIT 8    */
     0x00000200,  /* BIT 9    */
     0x00000400,  /* BIT 10   */
     0x00000800,  /* BIT 11   */
     0x00001000,  /* BIT 12   */
     0x00002000,  /* BIT 13   */
     0x00004000,  /* BIT 14   */
     0x00008000,  /* BIT 15   */
     0x00010000,  /* BIT 16   */
     0x00020000,  /* BIT 17   */
     0x00040000,  /* BIT 18   */
     0x00080000,  /* BIT 19   */
     0x00100000,  /* BIT 20   */
     0x00200000,  /* BIT 21   */
     0x00400000,  /* BIT 22   */
     0x00800000,  /* BIT 23   */
     0x01000000,  /* BIT 24   */
     0x02000000,  /* BIT 25   */
     0x04000000,  /* BIT 26   */
     0x08000000,  /* BIT 27   */
     0x10000000,  /* BIT 28   */
     0x20000000,  /* BIT 29   */
     0x40000000,  /* BIT 30   */
     0x80000000  /* BIT 31   */
    };
    



    Особенно важен здесь static: каждому модулю - своя таблица. Strive to avoid dependencies between modules (tm) (r). Каждый - сам за себя, например:


    static unsigned8_T mask[] = {1, 1<<1, 1<<2, 1<<3, 1<<4, 1<<5, 1<<6, 1<<7};
    


    Source: http://community.livejournal.com/code_wtf/57231.html

« Может конечно... || А вот так мы... »


antivirus | apache | asp | blogging | browser | bugtracking | cms | crm | css | database | ebay | ecommerce | google | hosting | html | java | jsp | linux | microsoft | mysql | offshore | offshoring | oscommerce | php | postgresql | programming | rss | security | seo | shopping | software | spam | spyware | sql | technology | templates | tracker | virus | web | xml | yahoo | home