Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
01/10/08 21:04
Modified:
  01/10/08 21:06

Read: times


 
#149283 - reply from SILabs
Responding to: ???'s previous message
Hi Erik,

Feel free to post my comment to the thread you referenced.

I read through the entire thread and then wrote some code to run a test to add all combinations of two packed-BCD numbers (0-99) together and perform a DA instruction on the results. It appears that the instruction is working correctly for all of these cases, including setting the carry bit when the result is >= 100.

If you can provide me with more details of what the error appears to be, I will investigate further. I am guessing, as Brett pointed out, that the cases where things go different than expected are not an adjusting the results of adding two BCD numbers together. Such cases appear to be undefined in the MCS-51 spec.

Regards,
-Bill


my comment:
it seems Bill and Brett agree. I think we can consider this a sleeping dog and let it lie.

What seems to be "the error" in "the bible" is that resulting from the earlier addition must be taken literally. I.e. the flags and AC must be at a state which is a possible result of an addition of two BCD values.

With all the confusion etc resulting from this I really wonder how some of the "'51 cores" behave :)

Erik

List of 34 messages in thread
TopicAuthorDate
DAA Misunderstanding            01/01/70 00:00      
   could this be it?            01/01/70 00:00      
      Maybe ... nope            01/01/70 00:00      
   a double negative ???            01/01/70 00:00      
      ... or an exclusive OR            01/01/70 00:00      
      Case 4            01/01/70 00:00      
         Are there don't-care situations?            01/01/70 00:00      
            I think this is the case            01/01/70 00:00      
               Not quite ...            01/01/70 00:00      
                  no            01/01/70 00:00      
            True to bible            01/01/70 00:00      
   e-mail to SILabs sent just now            01/01/70 00:00      
   Operands must consist of two packed BCD digits!            01/01/70 00:00      
      OK, but what does a packed 07 look like            01/01/70 00:00      
         Correct            01/01/70 00:00      
            if case 4 is a biblical catastrophe            01/01/70 00:00      
               Not true            01/01/70 00:00      
                  more to this            01/01/70 00:00      
                     Same as Case 1            01/01/70 00:00      
   reply from SILabs            01/01/70 00:00      
      I'm happy now            01/01/70 00:00      
      I am willing to try...            01/01/70 00:00      
         DA A test program            01/01/70 00:00      
            the results...            01/01/70 00:00      
               DS89C450 is strictly "biblical", too...            01/01/70 00:00      
                  The DAA instruction is so specific...            01/01/70 00:00      
                     point of view            01/01/70 00:00      
                        Agreed!            01/01/70 00:00      
               the last hope gone... XC866 is DAA-biblical too            01/01/70 00:00      
                  no "pick and choose" eitherThe Bible or "the bible            01/01/70 00:00      
                     don't take it too literally, please...            01/01/70 00:00      
      DAA on other Architectures            01/01/70 00:00      
         this is how it happened            01/01/70 00:00      
         Thanks for the link!            01/01/70 00:00      

Back to Subject List