An expression to be tested for each row is the COUNT function's input. The number of rows for which the expression evaluates to a non-null value is the result of the COUNT function. The special expression (*) just returns the number of rows without being evaluated.
The statement can also be modified with the words ALL and DISTINCT. These decide whether or not duplicates are thrown away. Your example is the same as count(ALL 1) because ALL is the default, which indicates that duplicates are kept.
Since you are not eliminating duplicates and the formula "1" evaluates to non-null for every row, COUNT(1) ought to always yield the same result as COUNT(*).