dolph, yes, the "cable/dsl router" with the single port uses the TCP/IP address's port setting, which is a 16-bit number, to differentiate the computers connected to it. I don't think you could actually hook up 65,536 computers, but most instructions I have read show support for up to 254 computers. I think the latter number has something to do with the way the router leases out TCP/IP addresses internally.
To try to make that a little more clear, the router communicates with the outside world using a single TCP/IP address. It appends a port number to each packet; each port number correlates with a single TCP/IP address on the internal network, and the router assigns those to each client, acting as a DHCP server. An internal TCP/IP address is probably a duplicate of a "real" TCP/IP address on the Internet, but the two never conflict, because it is that conduit of the single TCP/IP address that is leased to your router (by your cable/dsl company, also using a DHCP server) that is the "true" address.