Goldwasser Micali encrypts a 0 by sending a quadratic residue and a 1 by sending a non-quadratic residue. So, to prove that the encrypted bit is 0 what you need is a zero-knowledge proof of quadratic residuosity: for a given $b,N$, does there exist an $a$ such that $a^2 = y \bmod N$. There exist such proofs, and it should be easy to find online. However, for 1, that would be harder since in general it's harder to prove that something does not exist (naively, this would be a co-NP statement, which doesn't necessarily have an efficient proof). So, the idea is to try to change what you are looking to prove to something easier. The Goldwasser Micali public key includes a value $x$ that is not a quadratic residue. Then, an encryption of 1 is generated by choosing a random quadratic residue and multiplying it by $x$. Given this, you can prove that a value $b$ is an encryption of the bit 1 by first dividing by $x$ and then proving that the result is a quadratic residue (i.e., prove that $b \cdot [x^{-1} \bmod N] \bmod N$ is a quadratic residue). Note that the inverse can be computed using GCD, so that's easy.