Right. This is known as NAT, which is short for Network Address Translation. There are protocols set in place so that each computer within a network doesn't have a unique public IP address, and so an attacker can't easily isolate any one computer on your network.
Within your network though, your router issues each of your computers a unique IP address, but that's only within your network. Once it leaves your network and goes to your ISP, the IP address is translated to a single public IP and then sent to whatever site you're trying to connect to.
Now, you could set up to where each computer has their own dedicated internet connection and modem, and that would give each computer a unique public IP, but that'd be very difficult to manage and extremely expensive.
Anything short of that and I don't think it's possible to have unique public IP's for each computer within a network.