Regardless of the number of constellation points, all quadrature-amplitude modulation (QAM) signals can be generated using a single dual-drive Mach-Zehnder modulator. When the general method is applied to quadrature-phase-shift-keying (QPSK) signals, three different QPSK transmitters are shown with drive signals having four, three, or two levels. The usage of only one dual-drive modulator greatly simplifies the design of QAM and QPSK transmitters.