This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Writing to ACC with Code Optimization Level-9

This article from Keil's support knowledge database shows that one can directly write to ACC from C51 code.

http://www.keil.com/support/docs/1619.htm

I would like to know if there are any rules when writing to ACC from C code. I have noticed that the following line in my code was entirely commented out when I chose Code Optimization Level-9.


unsigned char data uDataIndex, uDataArray[5];
void main() {
   .
   .
   ACC=uDataArray[uDataIndex%5];
   .
}

Why would a compiler do this?

Parents
  • Why would a 'C' programmer want to do this?
    To get the parity bit. In fact, this is the only purpose for writing to ACC directly from 'C'.

    You would not be able to guarantee that your value would still be there for use by any other 'C' statement!

    Well said!

Reply
  • Why would a 'C' programmer want to do this?
    To get the parity bit. In fact, this is the only purpose for writing to ACC directly from 'C'.

    You would not be able to guarantee that your value would still be there for use by any other 'C' statement!

    Well said!

Children
No data