Frequency response of Low pass filter and High pass filter
In previous sections of the book, the fact that a discrete-time signal's spectrum is periodic may have been mentioned. It can be described formally as follows:
$$X(e^{j\omega})=\frac1{T} \sum_{k=-\infty}^{\infty}X_C\biggr(j\biggr(\frac{\omega}{T}-\frac{2\pi k}{T}\biggr)\biggr)$$
being $X_C(j\omega)$ the Fourier Transform of the continuous signal, and $T=1/f_s$ the sampling period. That expression is actually saying that the discrete-time spectrum can be computed from the continuous spectrum just by expanding its width $T$ times, and repeating this every $\frac{2\pi}{T}$. To keep things simple, we can normalize the frequency so that every signal's spectrum is periodic every $2\pi$, no matter how we sampled it. 

Keeping this in mind, a low pass filter isn't just a "step" around $\omega=0$, but also around $\omega=2\pi,4\pi,...$ and, of course, their negative counterparts. I mean low frequencies repeat around $\omega=0, 2\pi,4\pi,...$, while high frequencies do around $\omega=-\pi,\pi,3\pi,...$

Shifting its frequency response by $\pi$, we get $H(e^{j(\omega-\pi)})$, which would look like the following:

Remember that $\omega=\pi$ corresponds to your Nyquist frequency (= half the sampling frequency).

Image credit: Oppenheim &amp; Schafer, Discrete-time signal processing