11. Assembler-direktívák

11.1. Címkék

  • label(INNER1)

Ez egy elágazási utasításban való használatra szánt címkét definiál. Így a kód máshol elhelyezett b(INNER1) utasítása azt eredményezi, hogy a végrehajtás a címke-direktíva utáni utasítással folytatódik.

11.2. Beágyazott adatok definiálása

Az alábbi assembler-direktívák megkönnyítik az adatok beágyazását egy assembler-kódblokkba.

  • data(size, d0, d1 .. dn)

A data direktíva adatértékek tömbjét hozza létre a memóriában. Az első argumentum a soron következő argumentumok méretét adja meg bájtban. Ennélfogva az alábbi első utasítás arra készteti az assemblert, hogy három bájtot (2, 3 és 4 értékkel) helyezzen el egymást követő memóriahelyeken, míg a második arra, hogy két négybájtos szót bocsásson ki.

data(1, 2, 3, 4)
data(4, 2, 100000)

Az egyetlen bájtnál hosszabb adatértékek little-endian formátumban tárolódnak a memóriában.

  • align(nBytes)

Igazítsd a következő utasítást egy nBytes értékhez. Az ARM Thumb-2 utasításoknak két bájtra igazítottnak kell lenniük, ezért tanácsos a data direktívák után és bármely soron következő kód előtt kiadni egy align(2) utasítást. Ez biztosítja, hogy a kód az adattömb méretétől függetlenül lefut.