I simulated a microcanonical ensemble of 10 ideal gas particles in one dimension and yielded the expected normal distribution of velocities. However, I still did not get how the algorithm works. The demon has non-negative energy content and the demon together with the system constitutes a closed system with fixed energy. In my view, the demon algorithm amounts to conducting a random walk in phase space where H is less than E_total. Whenever a step of walk carries the particle outside the permitted region this step is rejected. But how is that a sampling of a microcanonical ensemble?