Carbon monoxide poisoning reduces oxygen delivery in two ways. First, carbon monoxide vigorously binds to the hemoglobin making it unavailable to carry oxygen. Thus hemoglobin not only holds less oxygen, it also doesn't give it up well in the tissues. Fetal hemoglobin has a higher affinity for oxygen than does adult hemoglobin. This is important as the PaO2 in-utero is about 28 mmHg.
Oxygen moves from the blood to the cells in the tissue by diffusion.
Oxygen content is normal, but blood flow to the tissues is reduced. Oxygen content and blood flow through the tissue is normal, but the tissue cannot use the oxygen at a cellular level. In the erythrocyte, this reaction is catalyzed by the enzyme carbonic anhydrase leading to much larger amounts of HCO3 - in the erythrocyte. This is the major form in which CO2 is carried in the blood. Hb is a better hydrogen ion acceptor than HbO2.