지금 강제 타입 변환이라는 부분 보고있는데요

예를 든 것중에서 이해가 안되는 부분이 있어서 질문을 하려 합니다
byte b = 127
int i = 100
에서
(byte) b+i 가 -29라는데
이것좀 설명해주실분 계신가요

책보니까 b+i = 227
16진수 0xE3 즉 -29라고 나오는데
16진수가 왜 나오는지도 모르겠습니다;;;
좀 자세하게 해설해 주시면 좋을 것 같습니다