It all involves calculations on how many hours a person will work a week and how easy it will be for them to obtain overtime.
For example, my system we work 12 hour shifts. So a full time person gets 48 hours a week. We have one 8 hour truck which runs 5 days a week and so that crew gets 40 hours a week. The 8 hour truck is paid slightly more so that the salary for both employees is the same.
Employers may advertise a yearly salary. The hourly pay is then adjusted downward to reflect the "built in OT" based on how many hours past 40 the regular schedule is. For example, $20/hr on a 40 hour schedule would be a little over $40k/yr. But, if it were a 56 hour average schedule, the hourly would be around $12/hr for the first 40, and then $18/hr for the last 16 to equal out at $40k on the year.
If you work for a private service, they fall under the 40 hour week rule, which means they have to pay you overtime for anything over 40 hours in a 7 day work week. By having 8 hour shifts, they get to work you more days. I imagine that 8 hours is scheduled during peak time. 12 or 16 hour shifts pretty much guarantee overtime, which they don't like. No matter how they pay you, it all has to factor down to at least minimum wage, and overtime needs to be factored in also.
Example: They pay you a salary for a 50 hour week. This means they have to pay at least 7.25 @ 40, which is 290.00 then 10.33 for the 10 hours overtime at 10.33. Your salary has to be at least 393.00.