[an error occurred while processing this directive]
|
|
код OSTCBHighRdy = OSTCBPrioTbl[OSPrioHighRdy];
компилируется компиллером в следующий код:
00005A 5C42.... MOV.B &OSPrioHighRdy, R12
00005E 3CF0FF00 AND.W #0xff, R12
000062 2E43 MOV.W #0x2, R14
000064 B012.... CALL #?Mul16
000068 924C........ MOV.W OSTCBPrioTbl(R12), &OSTCBHighRdy
т.е. вместо одного сдвига (&OSPrioHighRdy << 1) компиллер вызывает подпрограмму умножения на 2...
такие вот пироги...
E-mail: info@telesys.ru