Let G be a multiplicative subgroup of a field, with |G| = n. Remember that G is abelian. If G is not cyclic it contains a subgroup Zq*Zq, for some prime q. This means there are q2 elements in G that satisfy xq = 1. However, within this field, or any field, there are at most q roots to xq-1. The number of roots can never exceed the degree of the polynomial. Thus our Zq*Zq subgroup cannot exist, and G is cyclic.
Given a finite field, let b generate the multiplicative group for the field. Thus the powers of b cover all the nonzero elements. For example, the powers of 3, [1,3,2,6,4,5], cover all the nonzero elements in the field of order 7. Reverse this map to take discrete logarithms. Note that log(x)+log(y) = log(xy). Review discrete logarithms mod n.