Sulautettu assembler Thumb2-arkkitehtuureille¶
Tämä dokumentti olettaa jonkin verran tuntemusta assembly-ohjelmoinnista. Käskykannan tiiviin kuvauksen saat ARM Thumb-2 Instruction Set Quick Reference Card -kortista kohdassa References alla. Sulautettu assembler tukee tässä kuvattua ARM Thumb-2 -käskykannan osajoukkoa. Syntaksi pyrkii olemaan mahdollisimman lähellä ARM:n määrittelemää, Python-funktiokutsuiksi muunnettuna.
Käskyt operoivat 32-bittisellä etumerkillisellä kokonaislukudatalla, ellei toisin mainita. Useimmat tuetut käskyt operoivat vain rekistereillä R0-R7: kun R8-R15 ovat tuettuja, se mainitaan. Rekisterit R8-R12 on palautettava alkuperäiseen arvoonsa ennen funktiosta palaamista. Rekisterit R13-R15 muodostavat vastaavasti linkkirekisterin, pino-osoittimen ja ohjelmalaskurin.
Dokumentin merkintätavat¶
Aina kun mahdollista, kunkin käskyn toiminta on kuvattu Pythonissa, esimerkiksi
add(Rd, Rn, Rm)
Rd = Rn + Rm
Tämä mahdollistaa käskyjen vaikutuksen havainnollistamisen Pythonissa. Joissakin tapauksissa tämä on mahdotonta, koska Python ei tue käsitteitä kuten epäsuora osoitus. Tällaisissa tapauksissa käytetty pseudokoodi kuvataan asianomaisella sivulla.
Käskyjen luokat¶
Seuraavat osiot kuvaavat yksityiskohtaisesti sen ARM Thumb-2 -käskykannan osajoukon, jota MicroPython tukee.
Käyttöesimerkkejä¶
Nämä osiot tarjoavat lisää koodiesimerkkejä ja vinkkejä assemblerin käytöstä.