We count a page impression when our AdSense JavaScript is actually executed by a user's browser and ads are displayed. This is generally the equivalent to a page view, but as described in Why do I detect a different number of page impressions than what shows in my reports?, there are instances that wouldn't execute the ad code and that would cause a discrepancy between the page impressions you register and the page impressions that appear in your AdSense account.
Note that page impressions differ from ad unit impressions. If multiple ad units are present on a page, multiple ad unit impressions will be logged for that page view, but only a single page impression will appear in your reports.
For example, a user viewing a page with 3 ad units and 1 link unit will log 4 ad unit impressions, but only 1 page impression.