Skip to Content
Qiskit Pocket Guide
book

Qiskit Pocket Guide

by James L. Weaver, Frank J. Harkins
June 2022
Intermediate to advanced content levelIntermediate to advanced
218 pages
4h 4m
English
O'Reilly Media, Inc.
Content preview from Qiskit Pocket Guide

Chapter 10. OpenQASM

QASM is a low-level, imperative programming language, describing quantum programs in terms of the specific actions the quantum computer should take.

It is an intermediate representation between human-editable descriptions of quantum programs (such as Qiskit’s QuantumCircuit) and quantum hardware controllers. To enable it to describe full quantum programs, QASM also supports some basic classical logic, similar to higher-level classical languages such as C.

In this chapter, we’ll cover only gate-level operations, but QASM does also support some pulse-level quantum programming too.

Building Quantum Circuits in QASM

In this section, we’ll cover the QASM syntax needed to create simple quantum circuits.

Comments

Before we start, we’ll learn how to annotate the code we’re writing.

You can use comments as messages to other humans reading your code (including your future self). Two slashes (//) will mark the rest of the line as a comment. You can also use the character sequences /* and */ to mark the start and end of comments, respectively, over many lines. We’ll use comments to describe the code examples in this chapter:

The compiler will read this // but not this
/* or any
of this */

Version Strings

At the time of writing, there are three versions of QASM, so you might want to specify which version of QASM you’re writing in. For this reason, the first noncomment line of a QASM file can be a version string (an example follows). In this chapter, all code will be ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

The Design of Everyday Things

The Design of Everyday Things

Donald A. Norman
The Kaggle Book

The Kaggle Book

Konrad Banachewicz, Luca Massaron
Storytelling with You

Storytelling with You

Cole Nussbaumer Knaflic
The Goal

The Goal

Eliyahu M. Goldratt, Jeff Cox

Publisher Resources

ISBN: 9781098112462Errata PageSupplemental Content