The ranges are assigned by a per-node token. With 4 nodes like the cluster shown in the slides, you'd space the tokens apart appropriately for 25% of the range on each node.
When you add a node, you need to decide if you want to rebalance the cluster by moving every node's token a bit so that every node's range consumes 20% of the keyspace, or if you just want to quickly alleviate load by splitting a single node's traffic in half by assigning the new node's token half way into an existing node's range.
Decommissioning a node works the same way, but in reverse.