Дело вовсе не в приоритете операций (тем более, что инкремент ++ имеет гораздо более высокий приоритет, чем операция присваивания с умножением). В данном случае инкремент постфиксный (стоит после операнда x), а это значит, что он будет выполняться лишь после того, как x будет использован (в операции присваивания с умножением). Лучше всего это наблюдать у разноимённых переменных: пусть x==7, y==7, нужно вычислить x*=y++. В этом случае y, равный 7, будет передан операции *= и лишь после этого увеличен на 1 операцией ++.
Для того чтобы избавиться от такого эффекта, можно, как уже было описано, использовать разне варианты. А вот префиксный инкремент (++x) в данном случае даст ответ 64. Т.е. x будет увеличен на 1, после чего операция *= будет выполняться над уже этим изменённым значением x.