So you have a /16 network and you need to divide it into 1024 subnets.
1024 = 2^10. That means on top of the /16, you use 10 bits to identify the subnet.
The consequence is that those subnets are /(16+10) = /26 networks
This leave you with 32-26 = 6 bits for the hosts.
So you have 2^6 = 64 addresses per subnet, including the network and broadcast addresses.
So the last byte of your network address, expressed in decimal, will always be a multiple of 64 (including multiplying by zero) so for examples :
And the broadcast address will always have the last byte equal to 63, 127,191,255
If we speak about usable host address, the first are always 1 / 65 / 129 / 193 (network address +1) and the last one 62, 126, 190, 254 (broadcast address -1).
The first subnet is quite straightforward: 188.8.131.52/26 with
- network address 184.108.40.206
- first usable host address 220.127.116.11
- last usable host address 18.104.22.168
- broadcast address 22.214.171.124
The last subnet is the one that end (broadcast address) with 255.255, so it is 126.96.36.199. Since we know its size (64) we can deduce the network address. This give
- network address 188.8.131.52
- first usable host address 184.108.40.206
- last usable host address 220.127.116.11
- broadcast address 18.104.22.168
For detailed calculation in binary you can refer to this answer