Edit: The first version contained a silly mistake (after the sixth weighing), which justhalf has pointed out. I have corrected the solution, as well as the general comment at the end.
Number the balls W1, W2, ..., W100 and B1, B2, ..., B101 in order of increasing weight. Bring out one table and two empty sacks. Put all the balls on the table in two ordered rows, white and black. Put one sack on the left side and one on the right side of the table. After each weighing, we will put all balls that we know are lighter than the middle ball in the left sack, and all balls that we know are heavier than the middle ball in the right sack. When we are done, there should be 100 balls in either sack and one ball remaining on the table.
We will always compare one white ball against one black ball, and we will pick each ball from the middle of its row. There will be an odd/even theme here, but let's just start and see what happens.
We begin by comparing W50 and B51. (The choice W51 and B51 gives similar results.) There are two possibilities.
(1) If W50 > B51 then the 51 black balls B1,...,B51 go into the left sack and the 50 white balls W51,...,W100 go into the right sack.
(2) If W50 < B51 then the 50 white balls W1,...,W50 go into the left sack and the 50 black balls B52,...,B101 go into the right sack.
The worst case is (2), so we will focus on that. (In case (1), it is possible to leave B51 on the table and get the same situation as in case (2), if desired.) Rename the balls W1,...,W50 and B1,...,B51, and compare W25 with B26. The worst case is when W25 < B26, then W1,...,W25 go into the left sack and B27,...,B51 go into the right sack. We have 75 balls in each sack, and 25 white and 26 black balls on the table. (Note that this time it is the larger of these two numbers which is even!)
Again, we rename the balls W1,...,W25 and B1,...,B26, and we compare W13 with B14. The worst case is when W13 < B14, then W1,...,W12 go into the left sack and B14,...,B26 go into the right sack. We now have 87 balls in the left sack, 88 balls in the right sack, and 13 white and 13 black balls on the table.
Rename tha balls W1,...,W13 and B1,...,B13, and compare W7 with B7. In either case, seven balls go into the left sack and six into the right sack. We have 94 balls in either sack, and 6 balls of one color (say white) and 7 balls of the other color (say black) on the table.
After the next weighing (the fifth) we will in the worst case have 97 balls in each sack, and 3 white and 4 black balls on the table.
After the sixth weighing we will in the worst case have 98 balls in the left sack, 99 balls in the right sack, and 2 balls of each color on the table.
Rename the balls W1, W2 and B1, B2. Compare W2 with B2. If W2 < B2 then put W1 in the left sack and B2 in the right sack. If W2 > B2 then put B1 in the left sack and W2 in the right sack. We are left with only two balls on the table, and in the eight and last weighing we compare them against each other.
Some general considerations:
With this method, if there are 2k white balls and 2k+1 black balls on the table, with equally many balls in each sack, one will get k white balls and k+1 black balls on the table after one weighing (as always in the worst case). We can write this as $(2k,2k+1)\mapsto (k,k+1)$. Similarly, one can consider the other possibilities for even and odd numbers of balls, and get the following four possibilities for each weighing:
$$(2k,2k+1)\mapsto(k,k+1), \qquad (2k+1,2k+2)\mapsto(k+1,k+1),$$
$$(2k+1,2k+1)\mapsto(k,k+1), \qquad (2k,2k)\mapsto (k,k).$$
(If the number of white and black balls on the table is equal, then one sack has one ball more than the other, otherwise the sacks have the same number of balls.)