I remember a long time ago that the syntax, like +=, was done because compilers at the time could be made more efficient.
When you look at A = A + 5, early compilers didn't realize that the A on both sides of the = sign was really the same variable. They loaded a register with the address where A was stored, fetched the value, added 5 to it, then loaded a register with the address of where A was stored and saved the result. When you write A += 5 this implicitly states that A is the same variable and saves a register load operation. This makes a big difference on a 1 MHz microcontroller – especially in a loop. I did a test once of 10,000 iterations of each statement. The += version was quite a bit faster.
A lot of microcontrollers had very fast incrementers and decrementers. Using the syntax i++ or --i resulted in a single cycle instruction versus five or 10 instruction cycles for adding 1 to a variable.
But optimizing compilers came along and they changed all this. I would guess that most likely B4A is optimized.
Barry.