It is possible, but not recommended. You can use as many machines as you want, but it is possible that your machines will be working on duplicate work, thus reducing your full mining power. It is recommended that you use a new worker for each machine.
I doubt so. Many ASICs can easily function on one worker if the pool allows it to. It isn't possible to do any duplicate work as they are all trying to find a hash that is at the specified difficulty set by the pool or user. The main use for multiple worker is for diagnostic if the hashrate falls below the expected one and they want to pinpoint which machine is causing the problem. Correct me if I'm wrong.
Some "share" related problem indeed arises if you use one worker for many machines. However, if you are mining with many ASICs in one PC, this problem, most probably, won't happen. OP needs to solve this first:
Are you talking about different miners connected to different CPUs or different miners connected to one CPU?
-snip-