  Quantum computing exploits fundamentally new models of computation based on
quantum mechanical properties instead of classical physics, and it is believed
that quantum computers are able to dramatically improve computational power for
particular tasks. At present, nuclear magnetic resonance (NMR) has been one of
the most successful platforms amongst all current implementations. It has
demonstrated universal controls on the largest number of qubits, and many
advanced techniques developed in NMR have been adopted to other quantum systems
successfully. In this review, we show how NMR quantum processors can satisfy
the general requirements of a quantum computer, and describe advanced
techniques developed towards this target. Additionally, we review some recent
NMR quantum processor experiments. These experiments include benchmarking
protocols, quantum error correction, demonstrations of algorithms exploiting
quantum properties, exploring the foundations of quantum mechanics, and quantum
simulations. Finally we summarize the concepts and comment on future prospects.
