This shows you the differences between two versions of the page.
Both sides previous revision Previous revision | |||
base:advanced_optimizing [2021-01-20 10:15] bitbreaker [Forming terms] |
base:advanced_optimizing [2021-03-05 16:57] (current) bitbreaker [Forming terms] |
||
---|---|---|---|
Line 1430: | Line 1430: | ||
sbc num | sbc num | ||
sta neg | sta neg | ||
+ | | ||
+ | ;num in a, carry set | ||
+ | lda num | ||
+ | sbc #$01 | ||
+ | eor #$ff | ||
</ | </ | ||
- | There are of course also other expressions possible, just ponder a while about the term. | + | There are of course also other expressions possible, just ponder a while about the term. Also the carry flag after the negation can be influenced, depending on using sbc or adc for most cases ($00/$ff will cause an overflow). |
How's about forming terms with logical operations? We notice, that for e.g. (a + b) xor $ff is the same as (a xor $ff) - b: | How's about forming terms with logical operations? We notice, that for e.g. (a + b) xor $ff is the same as (a xor $ff) - b: |