There are basically two types of IP addresses: static and shared. Before the difference between the two is discussed, the definition of an IP must be discussed.
When someone types in the address: www.yourdomain.com that name is translated into numbers (called an IP address) and then the computer is directed to that IP address which is the web site. Every web site on the internet is found not by its domain name but by its IP address. IP addresses are in the format similar to 126.96.36.199, four discreet blocks separated by periods. You can reach a site by typing in the IP address alone and that will take you directly to the site. For example www.example.com resolves (turns into) 188.8.131.52. So if you type in 184.108.40.206 directly into the address bar of your browser you will arrive the home page of this website.
Now every single website has an IP address specifically allocated to it. For example, every single website on this server does not use different IP addresses. If every site used a different IP address there could potentially could be a problem with running out of IP addresses. (Fortunately this is not a problem and is going to be resolved when a new IP address standard is fully adopted). A lot of the sites on this server, and other servers on the internet, use one IP address for multiple sites. Using more than one IP address frees up IP address which are a limited resource. Basically what happens is that when site is resolved into the IP address, the person looking for site arrives at the server; the server then realizes that the person is looking for site and sends that page to the person requesting it. The server basically steps in and does a millisecond of work and saves an IP address. Using more than one site on an IP address is called sharing IPs or a Shared IP address. If a site has its own IP address, and shares with no one else, it is called a Static IP address. You can always reach a site which has a static IP address by using its IP address alone, but you can't reach a site using a shared IP address by typing in the IP address alone because when you type in a shared IP address you arrive at the server but the server doesn't know which site you want because you haven't told it which domain name you want. So looking at our example above, we typed in 220.127.116.11 and arrived at www.example.com we know that only www.example.com uses this address because we can get to site without typing in a domain name and thus it must be a static IP address. But why do you need a static IP address?
The main reason for having a static IP address is that you can only use SSL encryption (the stuff that makes e-commerce happen) on a static IP address. In order for a person to transmit sensitive data over the internet at times this data must be encrypted to prevent someone from intercepting the information. You can only use this encryption (called SSL) when the web site has its own IP address (static IP). It doesn't work on a shared IP. So when www.example.com takes in order with a person's credit card it needs to encrypt this data and it uses SSL with its static IP. Another reason for having a static IP address is that if a web site wanted to have anonymous ftp transfers (basically where anyone can download files off a site) the site needs to have a static IP address to handle the anonymous ftp transfer. Other than these two reasons there is no need for a site to have its own IP address.