ls positional parameter

Hi .
I am new to Unix. So i have a tough time.
we are using Korn Shell. I have a scenario where i have three files namely
xxx01,xxx02,xxx03. Now when i write ls xxx*|wc -l output is 3. But then i write `ls $1|wc -l` and pass xxx* as positional parameter (sh yyy.sh xxx*)
output is xxx01. other two files are not read. Why is this happening. Can i use the positional parameters in ls like commands. Please help

Try putting quotes around the 'xxx*'
Otherwise the string will be evaluated by korn shell before the parameters get passed to the script (expanding xxx* to 'xxx01 xxx02 xxx03' etc), and the script will only receive the first one ($1), and will only display that one.