V srcu Dunaja
Sedež podjetja
Löwengasse 14 / Lokal 2
1030 Dunaj, Avstrija
Klasični registri v OpenQASM-u
Tako kot so kubiti gradniki kvantnega računalništva, so klasični biti temelj klasičnega računalništva. OpenQASM omogoča združevanje bitov v klasične registre, kar je še posebej uporabno pri delu z meritvami kvantnih operacij. V tem poglavju se boste naučili ustvarjati klasične registre v OpenQASM-u in delati z njimi.
Razumevanje klasičnih registrov
Klasični register je podoben polju v klasičnem programiranju, vendar je zasnovan za shranjevanje bitov, ki predstavljajo binarni stanji 0 ali 1.
V OpenQASM-u klasični register deklariramo s ključno besedo creg, identifikatorjem in številom bitov kot velikostjo:
creg <identifier>[<size>];
Identifikator mora ustrezati pravilom poimenovanja v OpenQASM-u, velikost pa mora biti pozitivno celo število.
Poskus: ustvarjanje in uporaba klasičnega registra
Oglejmo si poskus, v katerem ustvarimo klasični register za beleženje izidov kvantnih meritev123456:
OPENQASM 2.0; // Specify OpenQASM version [^1]
include "qelib1.inc"; // Include the standard quantum library [^2]
// Quantum register with a single qubit and classical register with two bits
qreg qubit[1]; // Single-qubit quantum register [^4]
creg bits[2]; // Two-bit classical register [^3]
// Prepare qubit in a superposition state
h qubit[0]; // Apply Hadamard gate to the qubit [^5]
// Measure the qubit and store the result in the first bit of classical register
measure qubit[0] -> bits[0]; // Measurement operation [^6]
// The second bit remains in its initial state (0)
V tem združenem poskusu kvantni register vsebuje en sam kubit, ki ga s Hadamardovimi vrati pripravimo v superpozicijsko stanje. Nato izmerimo stanje kubita in rezultat meritve shranimo v prvi bit našega dvobitnega klasičnega registra. Drugi bit registra ostane nespremenjen in prikazuje možnost shranjevanja več izidov meritev ali uporabe dodatnih bitov za druge klasične izračune.
Enobitni klasični registri
Čeprav OpenQASM ne omogoča deklaracije posameznih klasičnih bitov, lahko za primere, ko potrebujete le en bit, deklarirate enobitni register:
// One-bit classical register declaration
creg flag[1]; // Single-bit register named 'flag' [^3]
Skratka, klasični registri so v OpenQASM-u nepogrešljivi za pridobivanje in shranjevanje rezultatov kvantnih meritev ter omogočajo nadaljnjo obdelavo, potrebno v kvantnih algoritmih.