演算子の優先度と結合規則がいまいちよく分かりません。
下の式を意味が変わらない範囲でカッコを外すとどうなりますか?

a = ( b *= ( ( c+d ) << e ) )

( ( * ( a[b] ) ) . c ) -> d

( a - ( ( b-c ) * d ) ) - e

( + ( ++a ) ) + ( ( b&c ) << ( d+e ) )

( ( ( * ( a.b ) ) . c ) -> d ) ++

あと下の4つは順序を明確にするためにカッコを付ける問題です。

a + b * c - d

a <<= b << c <= d

a = b &= c ==d

* a . b * c


参考になるサイトとかありますか?アドバイスお願いします。